Criando um volume
A criação é assíncrona.POST /v1/volumes responde 202 com o volume em creating; consulta GET /v1/volumes/{volume_id} até que status se torne available ou error. error significa uma falha de erro ativa — leia faults. Veja Falhas de recursos.
- Console
- API
- CLI
- Go
Vá para Storage → Volumes e escolha Create Volume. Dê um Name, deixe Source em Blank volume, defina Size (GB) e escolha um Tier — SSD ou NVMe. O cartão Tags usa os mesmos pares de chave/valor que a API.Ambas as camadas incluem 3.000 IOPS e 125 MiB/s, independentemente do tamanho. Você pode provisionar IOPS e taxa de transferência adicionais nos campos de desempenho.
unique within your account
Correspondências
^[a-zA-Z0-9][a-zA-Z0-9._-]{0,127}$. Ele aparece no CRN, então ele tem que ser seguro para URLs. Um nome duplicado é 409 VOLUME_NAME_EXISTS. O nome é fixo após a criação porque as políticas do IAM abordam o volume por seu CRN. Atualizações contendo name retornam um erro de validação, incluindo valores inalterados, vazios ou null. Os volumes existentes mantêm os seus nomes actuais.1–16384
obrigatório
O limite corresponde ao que um dispositivo de bloco único é limitado em outros lugares na indústria. É um limite de sanidade por volume, não sua cota — o uso agregado é limitado separadamente.
ssd | nvme
obrigatório
Veja abaixo.
GET /v1/volume-types lista exatamente o que você pode criar.Tipos de volume
GET /v1/volume-types lista as camadas de armazenamento disponíveis. Os novos volumes em ambas as camadas incluem 3.000 IOPS e 125 MiB/s, independentemente da capacidade.
ssd
Armazenamento em bloco SSD com 3.000 IOPS / 125 MiB/s incluído.
NVME
Armazenamento em bloco NVMe com 3.000 IOPS / 125 MiB/s incluído.
included_io_limits do volume e seus detalhes de console mostram essa linha de base fixa. bytes_per_sec é expresso em bytes por segundo; 125 MiB/s é 131.072.000 bytes por segundo.
Esses limites são limites de desempenho, não uma garantia de latência. Os resultados reais dependem do tamanho da operação, da concorrência, da carga de trabalho do convidado e da capacidade de armazenamento disponível. A 4 KiB por operação, 3.000 IOPS são aproximadamente 11,72 MiB/s; alcançar 125 MiB/s requer operações maiores.
Provisionando mais desempenho
Aumente as IOPS, a taxa de transferência ou ambas sem aumentar a capacidade do disco ou reiniciar a instância. Os totais selecionáveis para um volume padrão são:
O desempenho adicional custa R 0,20 por MiB/s-mês, acima dos 3.000 IOPS / 125 MiB/s incluídos. As mesmas taxas se aplicam a ambos os níveis. A 3.000 IOPS e 500 MiB/s, um volume NVMe padrão adiciona R255. A capacidade de armazenamento é cobrada separadamente. Leia as taxas atuais do catálogo de preços públicos, filtrado com
resource_type=volume-performance.
As cobranças são proporcionais a partir do momento em que uma configuração é aplicada, usando o tempo decorrido no mês de faturamento UTC real. Você paga pela alocação provisionada mesmo quando um volume está desconectado ou sua instância está parada. As operações reais e os bytes transferidos não determinam essa cobrança. Voltar para a cota incluída remove a cobrança extra assim que os limites inferiores forem aplicados; excluir o volume também encerra a alocação.
- Console
- API
- CLI
- Go
Abra o volume em Storage → Volumes e escolha Change performance. Defina Provisioned IOPS e Provisioned throughput (MiB/s), revise o preço mensal adicional e aplique a alteração. Use included performance restaura os valores incluídos no formulário; aplique-os para remover o complemento.Você também pode escolher essas configurações ao criar um volume. O Summary mostra Additional performance separadamente da capacidade de armazenamento e adiciona-o uma vez ao total. Por exemplo, 3.500 IOPS / 250 MiB/s adiciona R$35/mês. Criação de instância oferece os mesmos controles para cada novo disco de inicialização e dados.
202. Sonda o volume até que performance.state seja applied. performance.requested é o alvo, enquanto performance.applied é a configuração reconhecida. Esses objetos expressam o throughput como bytes_per_sec. A tarifa antiga aplicada continua a ser cobrada enquanto uma alteração estiver pendente. Se uma alteração for atrasada, a resposta inclui o ID da operação e o último erro.
Pelo menos uma dimensão é necessária para uma atualização; as dimensões omitidas mantêm seus valores atuais. Use IOPS inteiros e MiB/s. Uma fração exata da taxa de transferência de legado também pode ser selecionada para remover extras. Os valores devem ficar entre a cota incluída do volume e o limite máximo da camada; qualquer cota incluída superior permanece disponível sem custo adicional. Redimensionamento, reinicialização, reanexação e migração preservam sua seleção.
Um aumento também requer cota de conta, capacidade regional e armazenamento saudável. Um aumento rejeitado não cria uma nova alocação faturável. Se outra alteração estiver pendente, tente novamente o mesmo destino ou aguarde que ele seja concluído antes de escolher um destino diferente. Esses permanecem como limites combinados de leitura/gravação no armazenamento compartilhado, não uma reserva dedicada ou uma garantia de latência.
Anexando a uma instância
O anexo é uma operação de computação — a vinculação de dispositivo, o hot-plug de convidado e a ordem de inicialização estão todos no lado da instância:- Console
- API
- CLI
- Go
Abra o volume em Storage → Volumes e escolha Attach to
instance. Escolha a Instance; Device name, Mount path e Filesystem são opcionais. Deixar Device name em branco atribui o próximo nome disponível e definir um Mount path monta o volume lá dentro do convidado — formatando-o primeiro somente se estiver em branco.
available para in_use, e a separação o coloca de volta para available. Veja compute para os slots de dispositivos, opções de montagem e a chamada detach.
O que acontece quando a instância é excluída
Cada anexo carrega um sinalizadordelete_on_termination, e o padrão difere de acordo com como o volume chegou lá:
PATCH /v1/instances/{instance_id}/volumes/{volume_id} muda o sinalizador em um anexo existente. Defina-o deliberadamente em qualquer coisa que contenha dados que você se importa — o volume de inicialização padrão é aquele que exclui.
No console, o sinalizador é um Delete on termination na lista de volumes anexados da instância, não na própria página do volume. Pertence ao apego, então é aí que ele vive.
O disco de inicialização em si não pode ser desconectado: desconectá-lo levaria o sistema de arquivos root do convidado com ele, então a chamada é recusada.
crescer enquanto estiver ligado.
Crescendo um volume
- Console
- API
- CLI
- Go
Abra o volume e escolha Extend, ou use a ação de linha Extend em Storage → Volumes. A caixa de diálogo Extend Volume mostra Current Size e assume um New Size (GB).
202 com o volume em extending e retorna para available para um volume separado ou in_use para um volume anexado, no novo tamanho. Os volumes de inicialização e de dados podem crescer com a instância em execução ou parada; nenhum desligamento é necessário. new_size_gb deve ser estritamente maior que o tamanho atual; qualquer outra coisa é 400 VOLUME_SIZE_INVALID.
O crescimento do volume não aumenta sua partição ou sistema de arquivos. Aguarde até que o volume saia de extending, então verifique o tamanho do dispositivo dentro do guest:
/dev/vda, com espaço livre imediatamente após essa partição, o seguinte aumenta a partição e o sistema de arquivos. Confirme o dispositivo e o layout com lsblk primeiro e faça um backup. Esses comandos são executados dentro da sua instância; eles não são executados pelo serviço.
resize2fs no dispositivo do volume e pule growpart. XFS, LVM, discos encriptados e outros layouts de partição precisam dos seus próprios passos de crescimento; não use o exemplo ext4 para eles.
Excluindo um volume
DELETE /v1/volumes/{volume_id} responde 202, inverte a linha para deleting e destrói o volume de forma assíncrona. Sondagem até que o volume desapareça.
Duas recusas de saber sobre:
409 - Não encontrado
409 - Não encontrado
O volume está anexado. Desconecte-o da instância primeiro. Delete também é recusado durante os estados transitórios —
creating, extending, deleting — então uma segunda operação não pode competir com a primeira.409 - Não encontrado
409 - Não encontrado
Um volume que ainda tenha instantâneos não será excluído, porque esses instantâneos são filhos dos dados do volume e não é possível remover o pai abaixo deles. Apague os instantâneos primeiro, depois o volume.Esta é uma recusa limpa em vez de um desmantelamento parcial, então nada é perdido ao tentar.

