Como adicionar ou redimensionar discos permanentes regionais

Nesta página, você verá como adicionar e gerenciar recursos de armazenamento do disco permanente regional. Para verificar o status dos discos regionais, use o comando compute disks describe DISK_NAME e inclua a sinalização --region NEW_DISK_REGION ou use o comando compute.regionDisks.list.

Antes de começar

Limitações

Os discos permanentes regionais têm as seguintes limitações:

  • Eles não podem ser usados como discos de inicialização.
  • É possível criar um disco permanente regional a partir de um snapshot, mas não usando uma imagem.
  • O tamanho mínimo de um disco permanente padrão regional é 200 GB.
  • Não é possível usar um disco permanente regional com os tipos de máquina com otimização de memória ou otimizados para computação.
  • Discos permanentes regionais são compatíveis com a anexação forçada a outra instância de máquina virtual (VM) no caso de falha na zona. Veja cenários de falha.
  • Ao redimensionar um disco permanente regional, será possível apenas aumentar o tamanho dele, reduzir não será uma opção.
  • Há diferenças no desempenho dos discos permanentes zonais. Para mais informações, consulte Desempenho do armazenamento em blocos.

Como adicionar um disco permanente regional à instância

Crie um disco permanente regional e o anexe a uma instância. Se você não tiver uma instância, primeiro será necessário criar e iniciar uma instância nova. Faça isso na mesma região em que estão os discos.

Console

É preciso criar primeiro um disco permanente regional para anexá-lo a uma instância atual. Não é possível criar discos permanentes regionais como discos de inicialização porque eles não podem ser anexados à força durante um failover.

Crie um disco permanente regional.

  1. No Console do Google Cloud, acesse a página Discos.

    Acessar "Discos"

  2. Selecione o projeto.

  3. Clique em Criar disco.

  4. Especifique um Nome para o disco.

  5. Escolha um Tipo de disco.

  6. Marque a caixa de seleção Replicar este disco dentro da região.

  7. Selecione a região.

    Anote a região. É preciso selecionar a mesma região ao criar sua instância.

  8. Selecione duas zonas nessa região e clique em OK.

    É preciso selecionar duas zonas. Anote as zonas selecionadas porque você precisa anexar o disco à instância em uma delas.

  9. Escolha o Tipo de fonte.

  10. Selecione a Criptografia.

  11. Clique em Criar para concluir a criação do disco.

Depois de criar um disco permanente regional, anexe-o à instância.

Ao anexar um disco a uma instância, é possível que você receba uma mensagem de erro se o disco já estiver conectado a outra instância. Talvez seja necessário forçar a anexação do disco à instância, marcando a caixa Forçar anexação do disco depois de clicar em Anexar disco existente.

Depois de anexar um novo disco a uma instância, é preciso formatá-lo e ativá-lo para que o sistema operacional possa usar o espaço de armazenamento disponível.

gcloud

Crie e anexe um disco permanente regional com a ferramenta de linha de comando gcloud:

  1. Para criar um disco permanente regional, use o comando compute disks create. Se você precisar de um disco permanente SSD regional para ter capacidade ou IOPS extras, inclua a sinalização --type e especifique pd-ssd.

    gcloud compute disks create DISK_NAME \
        --size DISK_SIZE \
        --type DISK_TYPE \
        --region REGION \
        --replica-zones ZONE1,ZONE2
    

    Substitua:

    • DISK_NAME: o nome do novo disco.
    • DISK_SIZE: o tamanho do novo disco em GB.
    • DISK_TYPE: o tipo do disco permanente Por exemplo, pd-ssd.
    • REGION: a região em que o disco regional residirá. Exemplo: europe-west1
    • ZONE1, ZONE2: as zonas dentro da região em que as duas réplicas de disco estão localizadas.
      É preciso selecionar duas zonas. Exemplo: europe-west1-a,europe-west1-b.
  2. Depois de criar o disco, anexe-o a qualquer instância em execução ou interrompida. Use o comando compute instances attach-disk e inclua a sinalização --disk.

    gcloud compute instances attach-disk INSTANCE_NAME \
        --disk DISK_NAME
    

    Substitua:

    • INSTANCE_NAME: o nome da instância em que você está adicionando os novos discos permanentes regionais;
    • DISK_NAME: o nome do novo disco que você está anexando à instância.

    Depois de criar e anexar um novo disco a uma instância, é preciso formatar e ativar o disco para que o sistema operacional possa usar o espaço de armazenamento disponível.

API

  1. Na API, crie uma solicitação POST para gerar um disco permanente regional. No corpo da solicitação compute.regionDisks.insert, inicialize um novo disco com as propriedades name e replicaZones. Para criar um disco vazio, não especifique nenhuma fonte de imagem ou de snapshot.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks
    
    {
     "name": "DISK_NAME",
     "replicaZones": [
       "projects/PROJECT_ID/zones/ZONE1",
       "projects/PROJECT_ID/zones/ZONE2"
       ],
     }
    

    Substitua:

    • PROJECT_ID: o ID do projeto;
    • DISK_NAME: o nome do novo disco;
    • [ZONE1, ZONE2: as zonas em que as réplicas do novo disco precisam estar localizadas.
  2. Na API, crie uma solicitação POST para o método compute.instances.attachDisk e inclua o URL no disco permanente que você acabou de criar:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk
    
    {
     "source": "/projects/PROJECT_ID/regions/REGION/disks/DISK_NAME"
    }
    

    Substitua:

    • PROJECT_ID: o ID do projeto;
    • ZONE: o local da instância;
    • INSTANCE_NAME: o nome da instância em que você está adicionando o novo disco permanente;
    • DISK_NAME: o nome do novo disco.

Depois de criar e anexar um novo disco a uma instância, você precisará formatar e montar o disco para que o sistema operacional possa usar o espaço de armazenamento disponível.

Como redimensionar um disco permanente regional

É possível redimensionar os discos quando as instâncias com discos regionais permanentes precisam de mais espaço de armazenamento, IOPS ou capacidade. Se precisar separar seus dados em volumes exclusivos, crie vários discos secundários para a instância. Você pode reescalonar discos a qualquer momento, independentemente de o disco estar anexado a uma instância em execução.

O comando para reescalonar um disco permanente regional é idêntico ao reescalonamento de um disco permanente padrão, no entanto, há uma sinalização adicional para a região.

Console

Como redimensionar um disco permanente regional

  1. No Console do Google Cloud, acesse a página Discos.

    Acessar "Discos"

  2. Selecione o disco que você quer redimensionar.

  3. Clique em Editar no topo da página.

  4. Digite o tamanho do disco em GB.

    É possível aumentar o tamanho de um disco. Não é possível diminuí-lo.

  5. Clique em Salvar.

  6. Depois de redimensionar o disco, é preciso redimensionar o sistema de arquivos para que o sistema operacional possa acessar o espaço extra.

    O novo tamanho do disco é exibido na lista de discos.

gcloud

Na ferramenta gcloud, use o comando compute disks resize. Especifique a sinalização --size com o tamanho do disco, em GB, que você quer e a sinalização --region com a região em que o disco está localizado.

gcloud compute disks resize DISK_NAME \
    --region REGION  \
    --size DISK_SIZE

Substitua:

  • DISK_NAME: o nome do disco que você está redimensionando;
  • REGION: a região em que o disco está localizado;
  • DISK_SIZE: o novo tamanho do disco em GB.

Depois de redimensionar o disco, é preciso redimensionar o sistema de arquivos para que o sistema operacional possa acessar o espaço extra.

API

Na API, crie uma solicitação POST para o método compute.regionDisks.resize. No corpo da solicitação, especifique o parâmetro sizeGb e defina-o como o tamanho do disco que você quer em GB.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks/DISK_NAME/resize

{
 "sizeGb": "DISK_SIZE"
}

Substitua:

  • PROJECT_ID: o ID do projeto;
  • REGION: a região em que seu disco está localizado;
  • DISK_NAME: o nome do disco que você está redimensionando;
  • DISK_SIZE: o novo tamanho do disco em GB.

Depois de redimensionar o disco, é preciso redimensionar o sistema de arquivos para que o sistema operacional possa acessar o espaço agregado.

Como compartilhar um disco permanente regional entre várias instâncias

É possível anexar um disco permanente que não seja de inicialização a mais de uma instância de máquina virtual no modo somente leitura, o que permite compartilhar dados estáticos entre várias instâncias. O compartilhamento de dados estáticos entre várias instâncias de um disco permanente é mais barato do que replicar os dados em discos únicos para instâncias individuais.

Se você anexar um disco permanente a várias instâncias, será necessário fazer isso com o disco em modo somente leitura para todas as instâncias. Não é possível anexar o disco permanente a várias instâncias com o disco em modo de leitura/gravação. Se for necessário compartilhar espaço de armazenamento dinâmico entre várias instâncias, use uma destas opções:

Se o disco permanente tiver dados que você quer compartilhar entre várias instâncias, remova-o de todas as instâncias de leitura/gravação e anexe-o a uma ou mais instâncias no modo somente leitura.

Console

  1. No Console do Google Cloud, acesse a página Instâncias.

    Acessar "Instâncias"

  2. Clique no nome da instância a que você quer anexar o disco. A página de detalhes da instância será aberta.

  3. No início da página, clique em Editar.

  4. Na seção Discos extras, clique em Anexar disco.

  5. Selecione o disco permanente regional na lista.

  6. Na seção Modo, selecione Somente leitura.

  7. Clique em Concluir.

  8. Na parte inferior da página de detalhes da instância, clique em Salvar para aplicar as alterações à instância.

  9. Conecte a instância e ative o disco.

  10. Repita este processo para adicionar o disco a outras instâncias em modo somente leitura.

gcloud

Na ferramenta gcloud, use o comando compute instances attach-disk e especifique a sinalização --mode com a opção ro.

gcloud beta compute instances attach-disk INSTANCE_NAME --disk DISK_NAME \
    --disk-scope regional --mode ro

Substitua:

  • INSTANCE_NAME: o nome da instância a que você quer anexar o disco permanente;
  • DISK_NAME: o nome do disco que você quer anexar.

Depois de anexar o disco, conecte-se à instância e monte-o.

Repita este comando para cada instância onde quer adicionar esse disco no modo somente leitura.

API

Na API, crie uma solicitação POST para o método compute.instances.attachDisk. No corpo da solicitação, especifique o parâmetro mode como READ_ONLY.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk

{
 "source": "regions/REGION/disks/DISK_NAME",
 "mode": "READ_ONLY"
}

Substitua:

  • PROJECT_ID: o ID do projeto;
  • ZONE: a zona da instância;
  • INSTANCE_NAME: o nome da instância a que você quer anexar o disco permanente;
  • REGION: a região em que seu disco está localizado;
  • DISK_NAME: o nome do disco que você está anexando.

Depois de anexar o disco, conecte-se à instância e monte-o.

Repita esta solicitação para cada instância onde você quer adicionar esse disco no modo somente leitura.

Migrar um disco permanente zonal para um disco permanente regional

Para converter seus discos permanentes zonais existentes em discos persistentes regionais, faça um instantâneo do disco permanente atual e crie um regional a partir do instantâneo.

gcloud

Na ferramenta gcloud, use o comando compute disks snapshot e especifique as sinalizações --zone e --snapshot-names.

gcloud compute disks snapshot DISK_NAME \
    --zone ZONE \
    --snapshot-names SNAPSHOT_DISK_NAME

Substitua:

  • DISK_NAME: o nome do disco de que você quer criar o snapshot;
  • ZONE: a localização do disco zonal de origem;
  • SNAPSHOT_DISK_NAME: o nome do disco com snapshot recém-criado.

Use o comando compute disks create para criar um disco regional com base em um snapshot do disco zonal. Especifique o nome do disco e as sinalizações --region, --replica-zones e --source-snapshot.

gcloud compute disks create DISK_NAME \
    --region REGION \
    --replica-zones ZONE1,ZONE2 \
    --source-snapshot SNAPSHOT_DISK_NAME

Substitua:

  • DISK_NAME: o nome do novo disco.
  • REGION: a região em que o disco residirá;
  • ZONE1, ZONE2: as zonas em que as réplicas dos novos discos permanentes regionais residirão;
  • SNAPSHOT_DISK_NAME: o nome do disco do snapshot de origem.

Use o mesmo método para migrar os discos regionais para zonais.

API

Na API, crie uma solicitação POST para o método compute.disk.createSnapshot para gerar um snapshot de um disco. No corpo da solicitação, especifique a zone em que o disco está localizado, o nome do disk usado para gerar o snapshot e createSnapshot.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks/DISK_NAME/createSnapshot

Substitua:

  • PROJECT_ID: o ID do projeto;
  • ZONE: a zona em que o disco está localizado;
  • DISK_NAME: o nome do disco do qual você está criando o snapshot.

Na API, crie uma solicitação POST para gerar um disco permanente regional. No corpo da solicitação compute.regionDisks.insert, inicialize um novo disco e especifique o nome dele e as propriedades das zonas de réplica. Como este é um disco de dados, não inclua a propriedade sourceImage, que cria um disco em branco:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks

{
 "name": "DISK_NAME",
 "sourceSnapshot": "global/snapshots/SNAPSHOT_NAME",
 "replicaZones": [
 "projects/PROJECT_ID/zones/ZONE1",
 "projects/PROJECT_ID/zones/ZONE2"
 ],
}

Substitua:

  • PROJECT_ID: o ID do projeto;
  • REGION: a região em que o disco residirá;
  • DISK_NAME: o nome do novo disco.
  • SNAPSHOT_NAME: o snapshot a ser restaurado;
  • ZONE1, ZONE2: as zonas em que as réplicas dos novos discos permanentes regionais residirão.

A seguir