Volumes
Volumes são dispositivos de blocos (block storage) que podem ser conectados às instâncias.
Os volumes são classificados como efêmeros e persistentes.
- Um volume efêmero é aquele que só existe enquanto uma instância computacional existe. Quanto a instância é excluída, o volume automaticamente também é excluído.
- Um volume persistente permanece existindo mesmo após a exclusão de uma instância e pode ser criado antecipadamente a criação de uma instância.
Um volume pode ser criado:
- Sem origem ou vazio.
- A partir de um snapshot
- A partir de uma imagem
Um volume criado a partir de um snapshot ou imagem irá conter as informações da origem (snapshot ou imagem).
Um volume pode ser criado a partir da tela de criação de instâncias; do menu Projeto->Volumes->Volumes, botão “Criar Volume”; ou partir de um snapshot de volume existente no menu Projeto -> Volumes -> Snapshots, botão Criar Volume na linha do snapshot desejado.
Um volume criado a partir de um snapshot ou imagem de volume irá conter toda informação já existente no snapshot ou imagem (e.g. pastas, arquivos, etc.).
Backup Via Painel Cloud
Criar Backup
Acessar o painel NNumbers Cloud
No menu à esquerda, clicar em Volumes e depois em volumes:

Na página com a lista de volumes, localizar o volume que deseja fazer o backup.
É possível usar o filtro ou então orientar-se pela coluna
Attached To
Após localizar o volume, clicar na seta para baixo e em seguida em Create backup

Na janela aberta, informar um nome para realizar o backup e em seguida clicar em Create Volume Backup

Restaurar Backup
Para restaurar um backup, acesse o menu Volumes->Backups

Na lista, selecione o backup a ser restaurado clicando em Restore Backup

Na nova janela aberta, clique em Restore Backup to Volume

Será criado um novo volume contendo os dados restaurados.
Para confirmar se o restore ocorreu de forma esperada, no menu à esquerda acesse a opção Volumes > Volumes

Localize o volume restaurado na lista. Em seguida clique na 🔽 (item 1), e depois em “Launch as Instance” (item 2).

Na nova janela que abriu, digite um nome para a instância e no rodapé clique em Next

Em Source
- Na opção
Select Boot Sourcealtere paraVolume - Na lista, localize o volume e clique na seta para cima
Após isso, no rodapé clique em Next

Em Flavor, selecione o mesmo plano usado na instância anteriormente. Clique em 🔼 para selecionar o plano. Após isso, no rodapé, clique em Next

Em Networks, selecione a mesma rede usada anteriormente clique em 🔼, e no menu ao lado, clique em Security Groups

Em Security Groups, selecione o grupo utilizado anteriormente clique em 🔼. No menu à esquerda clique em Key Pair.

Em Key Pair, selecione a chave para conexão utilizada anteriormente (ou importe ou crie uma nova chave). Após selecionar a chave, no rodapé clique em Launch Instance.

Após iniciar a instância, você pode conferir se está tudo OK.
Após conferir, você pode remover a instância antiga e utilizar o mesmo IP na nova instância.
Para isso consulte o tutorial Portas onde a ideia é criar uma porta com IP fixo, e depois associar essa porta a instância.
Backup Via API
As chamadas para a API podem ser feitas via curl ou utilizando qualquer outra ferramenta como o postman.
Nesse tutorial utilizaremos o Postman, e logo abaixo será disponibilizado a chamada via curl. Para isso, acesse o site Postman e faça o download.
Caso seja a primeira vez que esteja acessando o postman, teremos uma tela onde ele pede para criar uma conta ou fazer login. Você pode ignorar clicando em Skip and go to the app

Para importar a collection de backup, clique em Import

Na nova janela que abriu clique em Upload Files e selecione o arquivo contendo a collection.

Na próxima tela, basta apenas confirmar a importação para a área de trabalho da aplicação

Note que a Scratch pad agora possui a collection de backup (expandir clicando na seta ao lado do nome)

Para criar o backup por API é necessário:
- Fazer o download do arquivo RC (veja Download do arquivo de configuração de ambiente).
- Aplicar as variáveis de ambiente para acesso contidas no arquivo (veja Configuração das variáveis de ambiente)
- Obter token temporário de acesso (veja Criação de token de acesso à partir de credenciais de aplicação ou Criação de token de acesso à partir de credenciais de usuário).
Criar Backup
Para criar backup podemos utilizar os itens Create Backup Full e Create Backup Incremental. Lembrando que para o backup incremental será necessário possuir um full backup criado anteriormente.
Antes de criar o backup, precisamos localizar o disco desejado. Para isso utilizaremos o item List Volumes. Na URL substitua o <ID_TENANT> pelo id do projeto (obter o id acessando o painel da cloud), depois clique em “Headers”, edite o valor do “X-Auth-Token” colocando o valor obtido em Criação de token de acesso à partir de credenciais de aplicação ou Criação de token de acesso à partir de credenciais de usuário. Após isso, clique em Send para obter a lista de volumes.

Após localizar o volume desejado, copie o ID conforme imagem acima e abra um dos seguintes itens de gerar backup na scratch pad: Create Backup Full ou Create Backup Incremental.
- Listar Volumes
curl -X GET https://cloud.nnumbers.com.br:8776/v3/$TENANT_ID/volumes/detail \
-H "X-Auth-Token: $XAUTH_TOKEN" | jq '.volumes[] | "VOL ID: \(.id) NOME: \(.name)"'
Com o item do tipo de backup a ser feito aberto, na URL substitua o <ID_TENANT> pelo id do projeto (obter o id acessando o painel da cloud), repita o mesmo processo executado anteriormente para alterar o X-Auth-Token na aba Headers, altere também o json para incluir o ID do volume e um nome para o backup na aba Body. Após isso, clique no botão Send para fazer o backup.

- Criar Backup
VOL_ID=<ID_DO_VOLUME>
NOME BACKUP=<NOME_PARA_BACKUP>
BKP_INCREMENTAL=false # true para backup incremental | false para full backup
curl -X POST https://cloud.nnumbers.com.br:8776/v3/$TENANT_ID/backups \
-H "Content-Type: application/json" \
-H "X-Auth-Token: $XAUTH_TOKEN" \
-d '{ "backup": { "force": true, "volume_id": "'$VOL_ID'", "name": "'$NOME_BACKUP'", "incremental": '$BKP_INCREMENTAL' } }' | jq
Você pode conferir se o backup foi feito com sucesso das seguintes maneiras:
Acessando o painel NNumbers Cloud, Menu Volumes -> Backup
Via API, executando o item List Backup
Listar Backup
Para listar os backups existentes, na scratch pad abra o item List Backup, na URL substitua o <ID_TENANT> pelo id do projeto (obter o id acessando o painel da cloud), clique em Headers, edite o valor do X-Auth-Token colocando o valor obtido em Criação de token de acesso à partir de credenciais de aplicação ou Criação de token de acesso à partir de credenciais de usuário. Após isso, clique em Send

Caso seja a primeira vez que esteja listando os backups, os valores na aba Body serão diferentes da imagem acima.
- Listar Backups
curl -X GET https://cloud.nnumbers.com.br:8776/v3/$TENANT_ID/backups/detail \
-H "X-Auth-Token: $XAUTH_TOKEN" | jq '.backups[] | "ID BACKUP: \(.id) INCREMENTAL? \(.is_incremental) NOME: \(.name) VOL ID: \(.volume_id)"'
Apagar Backup
Para executar o item Delete Backup você deverá ter executado a seção de Listar Backup, localizar o backup a ser apagado e copiar o ID do backup.
Com o ID do backup em mãos, na scratch pad abra o item Delete Backup, na URL substitua o <ID_TENANT> pelo id do projeto (obter o id acessando o painel da cloud) e tambem o ID do backup (substitua o {{BACKUP_ID}} ao final da URL pelo ID), clique em Headers, edite o valor do X-Auth-Token colocando o valor obtido em Criação de token de acesso à partir de credenciais de aplicação ou Criação de token de acesso à partir de credenciais de usuário, depois clique em Send para executar.

- Apagar Backup
DEL_BKP_ID=<ID_BACKUP>
curl -X DELETE https://cloud.nnumbers.com.br:8776/v3/$TENANT_ID/backups/$DEL_BKP_ID \
-H "X-Auth-Token: $XAUTH_TOKEN"
Restaurar Backup
Para executar o item Restore Backup você deverá ter executado a seção de Listar Backup, localizar o backup a ser restaurado e copiar o ID do backup.
Com o ID do backup em mãos, na scratch pad abra o item Restore Backup, na URL substitua o <ID_TENANT> pelo id do projeto (obter o id acessando o painel da cloud) e também o ID do backup (substitua o {{BACKUP_ID}} ao final da URL pelo ID), depois clique em Headers, edite o valor do X-Auth-Token colocando o valor obtido em Criação de token de acesso à partir de credenciais de aplicação ou Criação de token de acesso à partir de credenciais de usuário, na aba Body defina um nome para o restore, e então clique no botão Send para executar.


- Restaurar Backup
RESTORE_BKP_ID=<ID_BACKUP>
curl -X POST https://cloud.nnumbers.com.br:8776/v3/$TENANT_ID/backups/$RESTORE_BKP_ID/restore \
-H "Content-Type: application/json" \
-H "X-Auth-Token: $XAUTH_TOKEN" \
-d '{ "restore": { "name": "restore-01" } }' | jq
Você pode conferir se o backup foi restaurado com sucesso das seguintes maneiras:
- Acessando o painel NNumbers Cloud, Menu
Volumes>Volumese localizar o volume criado de acordo com o nome definido - Via API, executando o item “List Volumes”
Snapshots
Um snapshot de uma instância é uma imagem. A única diferença entre uma imagem que você carrega diretamente para o serviço de imagens e uma imagem que você cria por snapshot é que uma imagem criada pelo snapshot tem propriedades adicionais no banco de dados do serviço de imagens.
É possível criar um snapshot de uma instância computacional, esse snapshot irá gerar uma imagem da instância naquele momento, sem parada da instância computacional (à quente) e um snapshot de volume. Portanto, tanto consultando os menus Computação -> Imagens, quanto consultando o menu Projeto -> Volumes -> Snapshot é possível visualizar a imagem gerada.
Snapshots não são feitos para os volumes efêmeros (ver tamanho do disco efêmero, de acordo com o flavor selecionado, caso seja zero, nenhum volume efêmero é montado).
Grupos
Os grupos de volumes fornecem um mecanismo para a criação de snapshots de vários volumes ao mesmo tempo para garantir a consistência dos dados.
Um grupo de volumes pode suportar mais de um tipo de volume, mas pode conter apenas volumes hospedados pelo mesmo backend.
Criação de Grupo
Para criar um novo grupo, selecione o menu Projeto -> Volumes -> Grupos, clique no botão superior do lado direito Criar Grupo.
Em informações do grupo:
- Nome: o nome do grupo de volumes
- Descrição: breve descrição sobre o grupo de volumes
- Tipo de Grupo: Atualmente no NNumbers Cloud o único tipo de grupo disponível é ssd-1.
- Zona de Disponibilidade: Zona de disponibilidade onde o grupo de volume será criado.

Na aba Gerenciar Tipos de Volume

Selecione o(s) tipo(s) de volume(s). Atualmente no NNumbers Cloud o único tipo de volume disponível é RBD.

A ação de gerenciar volumes poderá ser realizada posteriormente.
Exclusão de Grupo
Um grupo só pode ser excluído se não houver nenhum snapshot de grupo, do grupo em questão. Se houver algum snapshot de grupo, a opção abaixo não será exibida.
Para excluir um grupo selecione o menu Projeto -> Volumes -> Grupos, clique em 🔽 na coluna Actions, selecione a opção Delete Group.

A exclusão de um grupo pode excluir os volumes relacionados ao grupo se a opção Excluir Volumes estiver marcada.
Snapshots de Grupos
Snapshots de grupos são visões lógicas de snapshots criados a partir de um grupo.
É possível criar um novo grupo a partir de um snapshot de grupo. A criação de um grupo a partir de um snapshot de grupo irá clonar os volumes, gerando novos volumes na visão de volumes.
Uma ação de exclusão do snapshot de grupos irá excluir os snapshots gerados. Entretanto, não irá excluir um grupo e seus volumes caso um grupo tenha sido criado a partir de um snapshot de grupo.
Próximos passos
Esta página ajudou?
Reportar um problema nesta páginaNão envie senhas, chaves, tokens ou dados de clientes.