Disco permanente regional e Alta disponibilidade do hiperdisco equilibrada são opções de armazenamento que permitem implementar serviços de alta disponibilidade (HA) no Compute Engine. O Persistent Disk regional e Hyperdisk Balanced High Availability replicam dados de maneira síncrona entre duas zonas na mesma região e garantem a alta disponibilidade para dados de disco de até uma falha na zona. O disco regional pode ser um disco de inicialização ou um disco não de inicialização.
Neste documento, explicamos como fazer as seguintes tarefas em discos regionais:
- Crie discos regionais.
- Anexe um disco regional à sua instância do Compute Engine.
- Mudar um disco zonal para um disco regional.
- Crie uma nova instância com discos regionais.
- Usar um disco regional como um disco de inicialização para uma nova instância.
- Anexar um disco de inicialização regional a uma instância.
- Liste e descreva seus discos regionais.
- Redimensionar um disco regional.
Antes de começar
- Analise as diferenças entre os diferentes tipos de opções de armazenamento em disco.
- Revise os conceitos básicos da replicação síncrona de discos.
- Leia sobre o failover de disco regional.
-
Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud.
Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
Administrador da instância da computação (v1) (
roles/compute.instanceAdmin.v1
) -
Para se conectar a uma instância que possa ser executada como uma conta de serviço:
Usuário da conta de serviço (v1) (
roles/iam.serviceAccountUser
) -
compute.disks.create
-
compute.instances.attachDisk
-
compute.disks.use
-
Crie um snapshot de um disco:
compute.disks.createSnapshot
-
Confira os detalhes de um disco:
compute.disks.get
-
Receba uma lista de discos:
compute.disks.list
-
Mudar o tamanho de um disco:
compute.disks.update
- No México, em Montreal e em Osaka, temos três zonas instaladas em um ou dois data centers físicos. A destruição de um data center é um evento raro, mas os dados armazenados nessas regiões podem ser perdidos se isso acontecer. Por isso, considere fazer o backup dos dados mais importantes da sua empresa em uma segunda região para aumentar a proteção.
- Só é possível anexar Persistent Disk regionais a VMs que usam tipos de máquina E2, N1, N2 e N2D.
- Você pode anexar o Hyperdisk Balanced High Availability somente a arquivos tipos de máquina compatíveis.
- Não é possível criar um Persistent Disk regional a partir de uma imagem ou de um disco criado a partir de uma imagem.
- Ao usar o modo somente leitura, é possível anexar um Persistent Disk equilibrado regional a, no máximo, 10 instâncias de VM.
- O tamanho mínimo de um disco permanente regional padrão é 200 GB.
- Só é possível aumentar o tamanho do volume do Disco permanente regional ou do Hyperdisk Balanced High Availability; não é possível diminuir o tamanho.
- Os volumes do Disco permanente regional e do Hyperdisk Balanced High Availability têm desempenhos diferentes do que os discos zonais correspondentes. Para mais informações, consulte Desempenho do armazenamento em blocos.
- Não é possível usar um volume do Hyperdisk Balanced High Availability que esteja no modo de vários gravadores como um disco de inicialização.
- Se você criar um disco replicado clonando um disco zonal, as duas réplicas zonais não estarão totalmente sincronizadas no momento da criação. Após a criação, é possível usar o clone de disco regional em média em até três minutos. No entanto, talvez seja necessário aguardar diversos minutos até que o disco atinja um estado totalmente replicado e o objetivo de ponto de recuperação (RPO) esteja próximo de zero. Saiba como Verificar se o disco replicado foi totalmente replicado.
- Crie uma nova instância com um disco de inicialização regional.
- Crie um disco de inicialização regional e anexe-o a uma instância:
- Crie um disco regional com base em um snapshot de um disco de inicialização.
- Anexar um disco de inicialização regional a uma instância.
No console do Google Cloud, acesse a página Discos.
Selecione o projeto necessário.
Clique em Criar disco.
Especifique um Nome para o disco.
Em Local, escolha Regional.
Selecione a Região e a Zona. É preciso selecionar a mesma região ao criar a instância.
Selecione a Zona de réplica na mesma região. Anote as zonas selecionadas porque você precisa anexar o disco à instância em uma delas.
Selecione o Tipo de origem do disco.
Selecione o Tipo de disco e o Tamanho.
Clique em Criar para concluir a criação do disco.
DISK_NAME
: o nome do novo discoDISK_SIZE
: o tamanho do novo disco em GB.DISK_TYPE
: Para o Persistent Disk regional, esse é o tipo do disco regional. O valor padrão épd-standard
. Para o Hyperdisk, especifique o valorhyperdisk-balanced-high-availability
.REGION
: a região do disco regional, por exemplo,europe-west1
.ZONE1
,ZONE2
: as zonas dentro da região em que as duas réplicas de disco estão localizadas, por exemplo:europe-west1-b,europe-west1-c
DISK_ACCESS_MODE
: opcional: como as instâncias podem acessar os dados no disco. Os valores aceitos são:READ_WRITE_SINGLE
, para acesso de leitura e gravação de uma instância. Esse é o padrão.READ_WRITE_MANY
, para acesso de leitura e gravação de várias instâncias.
Só é possível definir o modo de acesso para discos do Hyperdisk Balanced High Availability.
PROJECT_ID
: ID do projetoREGION
: a região do disco regional, por exemplo,europe-west1
.DISK_NAME
: o nome do novo discoZONE1
,ZONE2
: as zonas em que as réplicas do novo disco precisam estar localizadas.DISK_SIZE
: o tamanho do novo disco em GB.DISK_TYPE
: Para o Hyperdisk Balanced regional, este é o tipo de Hyperdisk Balanced. Para o Hyperdisk, especifique o valorhyperdisk-balanced-high-availability
.DISK_ACCESS_MODE
: como as instâncias podem acessar os dados no disco. Os valores aceitos são:READ_WRITE_SINGLE
, para acesso de leitura e gravação de uma instância. Esse é o padrão.READ_WRITE_MANY
, para acesso de leitura e gravação de várias instâncias.
Só é possível definir o modo de acesso para discos do Hyperdisk Balanced High Availability.
Para anexar um disco a uma instância, acesse a página Instâncias de VM.
Na coluna Nome, clique no nome da instância.
Clique em Editar
.Clique em Anexar disco atual.
Escolha o disco regional criado anteriormente para adicionar à instância.
Se você receber um aviso indicando que o disco selecionado já está anexado a outra instância, marque a caixa Forçar anexação de disco para forçar a anexação do disco à instância que você está editando.
Confira os casos de uso para anexação forçada de discos regionais em Failover de disco regional.
Clique em Salvar.
Na página Editar VM, clique em Salvar.
INSTANCE_NAME
: o nome da instância a que você está adicionando o disco regional.DISK_NAME
: o nome do novo disco que você está anexando à instância.PROJECT_ID
: o ID do projeto;ZONE
: o local da instância;INSTANCE_NAME
: o nome da instância a que você está adicionando o novo disco regional.REGION
: a região em que o disco está localizadoDISK_NAME
: o nome do disco regional- PRIMARY_INSTANCE_NAME: um nome para a instância
- ZONE: o nome da zona em que você quer criar a instância.
- REGIONAL_DISK_NAME: um nome para o disco regional
- DISK_TYPE: o tipo de disco a ser criado, por exemplo,
hyperdisk-balanced-high-availability
oupd-balanced
. - SNAPSHOT_NAME: o nome do snapshot que você criou para o disco de inicialização
- REMOTE_ZONE: a zona alternativa do disco regional
PROJECT_ID
: ID do projeto;ZONE
: o nome da zona em que você quer criar a instância.INSTANCE_NAME
: um nome para a instânciaBOOT_SNAPSHOT_NAME
: o nome do snapshot do disco de inicializaçãoREMOTE_ZONE
: a zona remota do disco regionalDISK_TYPE
: o tipo de disco a ser criado, por exemplo,hyperdisk-balanced-high-availability
oupd-balanced
.- Substitua o disco de inicialização de uma instância atual por um disco de inicialização regional.
- Faça failover de um disco de inicialização regional para uma instância de espera ativa em execução na zona de backup. Para fazer isso, anexe o disco regional à instância como o disco de inicialização.
- Interrompa a instância.
gcloud compute instances stop INSTANCE_NAME --zone=ZONE
- Remova o disco de inicialização atual da instância.
gcloud compute instances detach-disk INSTANCE_NAME \ --zone=ZONE --disk=CURRENT_BOOT_DEVICE_NAME
- Anexe o disco de inicialização regional à instância.
gcloud compute instances attach-disk INSTANCE_NAME \ --zone=ZONE \ --disk=REGIONAL_DISK_NAME \ --disk-scope=regional --force-attach \ --boot
Reinicie a instância.
gcloud compute instances start INSTANCE_NAME
INSTANCE_NAME
: o nome da instância a que você quer anexar o disco de inicialização regional.ZONE
: a zona em que a instância está localizadaCURRENT_BOOT_DEVICE_NAME
: o nome do disco de inicialização que está sendo usado pela instância. Geralmente, é igual ao nome da instância.REGIONAL_DISK_NAME
: o nome do disco regional que você quer anexar à instância como um disco de inicialização.Interrompa a instância.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/stop
Remova o disco de inicialização atual da instância.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/detachDisk?deviceName=CURRENT_BOOT_DEVICE_NAME
Anexe o disco de inicialização regional à instância.
Crie uma solicitação
POST
para o métodocompute.instances.attachDisk
e inclua o URL do disco de inicialização regional:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk { "source": "compute/v1/projects/PROJECT_ID/regions/REGION/disks/REGIONAL_DISK_NAME", "boot": true }
Reinicie a instância.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/start
PROJECT_ID
: ID do projeto;INSTANCE_NAME
: o nome da instância a que você quer anexar o disco regional.ZONE
: a zona em que a instância está localizadaCURRENT_BOOT_DEVICE_NAME
: o nome do disco de inicialização que está sendo usado pela instância. Geralmente, é igual ao nome da instância.REGION
: a região em que o disco regional está localizado.REGIONAL_DISK_NAME
: o nome do disco regional que você quer anexar à instância como um disco de inicialização.- ID do disco
- Nome do disco
- Tamanho
- Tipo de disco
- Região
- Réplicas zonais
- Para conferir os detalhes de todos os discos regionais em
uma região e um projeto específicos:
- Crie uma solicitação
GET
para o métodocompute.regionDisks.list
. - Use o comando
gcloud compute disks list
e filtre os resultados por região.
- Crie uma solicitação
- Para conferir os detalhes de um disco regional específico:
- Execute o comando
gcloud compute disks describe
com a flag--region
e especifique o nome do disco e a região. - Crie uma solicitação
GET
para o métodocompute.regionDisks.get
.
- Execute o comando
- Persistent Disk regional: aumentar o tamanho de um disco permanente
- Hyperdisk Balanced High Availability: modificar um volume do Hyperdisk
- Saiba mais sobre preços de discos.
- Saiba como monitorar os estados de réplica dos discos regionais.
- Saiba como determinar o estado de replicação de um disco regional.
- Consulte Compartilhar volumes de disco permanente entre instâncias de computação como uma alternativa aos discos permanentes regionais para dados somente leitura.
- Crie um snapshot de um disco.
- Saiba mais sobre grupos de instâncias para instâncias de computação.
- Saiba como criar aplicativos da Web escalonáveis e resilientes no Google Cloud.
- Consulte o guia de planejamento de recuperação de desastres do Google Cloud.
Terraform
Para usar os exemplos do Terraform nesta página em um ambiente de desenvolvimento local, instale e inicialize a gcloud CLI e, em seguida, configure o Application Default Credentials com suas credenciais de usuário.
Confira mais informações em Set up authentication for a local development environment.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Papéis e permissões necessárias
Para receber as permissões necessárias e criar um disco regional, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esses papéis predefinidos contêm as permissões necessárias para criar um disco regional. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para criar um disco regional:
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Limitações
Sobre o uso de um disco regional como um disco de inicialização para uma instância
É possível anexar um Persistent Disk regional ou um disco de alta disponibilidade do hiperdisco equilibrada como um disco de inicialização para cargas de trabalho com estado provisionadas com antecedência, antes de provisionar uma carga de trabalho de produção. Os discos de inicialização regionais não são destinados a espera ativa, porque não podem ser anexados simultaneamente a duas instâncias de computação.
Só é possível criar Persistent Disk regional ou volumes do Hyperdisk Balanced High Availability a partir de snapshots. Não é possível criar um disco regional usando uma imagem.
Para usar um disco regional como o disco de inicialização de uma instância, use um destes métodos:
Se você precisar fazer o failover de um disco de inicialização regional para uma instância de espera em execução na zona de réplica, siga as etapas descritas em Anexar um disco de inicialização regional a uma instância.
Criar um disco regional
Crie um Persistent Disk regional ou um volume do Hyperdisk Balanced High Availability. O disco precisa estar na mesma região da instância de computação a que você planeja anexá-lo.
Se você criar um volume do Hyperdisk Balanced High Availability, também poderá permitir que diferentes instâncias acessem o disco simultaneamente definindo o modo de acesso ao disco. Para mais informações, consulte Compartilhar um disco entre instâncias.
Para o Persistent Disk regional, se você criar um disco no console do Google Cloud, o tipo de disco padrão serápd-balanced
. Se você criar um disco usando a gcloud CLI ou REST, o tipo de disco padrão serápd-standard
.Console
gcloud
Crie um disco regional usando o comando
compute disks create
.Se você precisar de um disco permanente SSD regional para ter capacidade de processamento ou IOPS extras, inclua a sinalização
--type
e especifiquepd-ssd
.gcloud compute disks create DISK_NAME \ --size=DISK_SIZE \ --type=DISK_TYPE \ --region=REGION \ --replica-zones=ZONE1,ZONE2 --access-mode=DISK_ACCESS_MODE
Substitua:
Terraform
Para criar um disco permanente regional ou um volume do Hyperdisk Balanced High Availability, use o recurso
google_compute_region_disk
.REST
Para criar um Disco permanente regional ou volume do Hyperdisk Balanced High Availability, crie uma solicitação
POST
para o métodocompute.regionDisks.insert
.Para criar um disco vazio, não especifique uma origem de snapshot.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks { "name": "DISK_NAME", "region": "projects/PROJECT_ID/regions/REGION", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE1", "projects/PROJECT_ID/zones/ZONE2" ], "sizeGb": "DISK_SIZE", "type": "projects/PROJECT_ID/regions/REGION/diskTypes/DISK_TYPE", "accessMode": "DISK_ACCESS_MODE" }
Substitua:
Anexar um disco regional à instância
Para discos que não são de inicialização, depois de criar um Persistent Disk regional ou um volume do Hyperdisk Balanced High Availability, é possível anexá-lo a uma instância. A instância precisa estar na mesma região que o disco.
Para anexar um disco de inicialização regional a uma instância, consulte Anexar um disco de inicialização regional a uma instância.
Para anexar um disco a várias instâncias, repita o procedimento desta seção para cada instância.
Console
gcloud
Para anexar um disco regional a uma instância em execução ou parada, use o comando
compute instances attach-disk
com a flag--disk-scope
definida comoregional
.gcloud compute instances attach-disk INSTANCE_NAME \ --disk=DISK_NAME \ --disk-scope=regional
Substitua:
Terraform
Para anexar um Persistent Disk regional ou um volume do Hyperdisk Balanced High Availability a uma instância, use o recurso
google_compute_attached_disk
.REST
Para anexar um disco regional a uma instância em execução ou interrompida, crie uma solicitação
POST
para o métodocompute.instances.attachDisk
e inclua o URL do disco regional que você criou.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:
Para discos não inicializáveis, depois de criar e anexar um disco regional em branco a uma instância, é necessário formatar e montar o disco, para que o sistema operacional possa usar o espaço de armazenamento disponível.
Mudar um disco zonal para um disco regional
Para converter seu Persistent Disk zonal atual em um Persistent Disk regional, crie um novo disco clonando um disco zonal existente. Para mais informações, consulte Como criar um clone de disco regional a partir de um disco zonal.Para converter um Hyperdisk em um disco regional, crie um novo disco do Hyperdisk Balanced High Availability com base em um snapshot do disco atual, conforme descrito em Mudar um disco zonal para um disco do Hyperdisk Balanced High Availability}}.
Criar uma nova instância com discos regionais
Ao criar uma instância, você pode incluir Persistent Disk regional ou Hyperdisk Balanced High Availability como discos adicionais.
Para criar e anexar um Persistent Disk regional ou um volume do Hyperdisk Balanced High Availability a uma instância durante a criação da instância, consulte uma destas opções:
Criar uma nova instância com um disco de inicialização regional
Ao configurar uma instância de computação altamente disponível, é possível criar a instância principal com um disco de inicialização regional. Se ocorrer uma interrupção zonal, você poderá reiniciar a instância na zona secundária em vez de criar uma nova.
Em uma configuração de alta disponibilidade, em que o dispositivo de inicialização é um disco regional, o Google recomenda não pré-criar e iniciar a instância de espera. Em vez disso, no estágio de failover, anexe o disco regional atual ao criar a instância de espera usando a opção
forceAttach
.Para criar uma instância com um disco de inicialização regional, use um destes métodos:
gcloud
Use o comando
gcloud compute instances create
para criar uma instância e a flag--create-disk
para especificar o disco regional.gcloud compute instances create PRIMARY_INSTANCE_NAME \ --zone=ZONE \ --create-disk=^:^name=REGIONAL_DISK_NAME:scope=regional:boot=true:type=DISK_TYPE:source-snapshot=SNAPSHOT_NAME:replica-zones=ZONE,REMOTE_ZONE
Ao especificar os parâmetros de disco, os caracteres
^:^
definem que o caractere de separação entre os parâmetros é dois-pontos (:
). Isso permite usar uma vírgula (,
) ao especificar o parâmetro "replica-zones".Substitua:
REST
Crie uma solicitação
POST
para o métodoinstances.insert
e especifique as propriedadesboot: 'true'
ereplicaZones
. Por exemplo:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "disks": [{ "boot": true, "initializeParams": { "sourceSnapshot": "global/snapshots/BOOT_SNAPSHOT_NAME", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE", "projects/PROJECT_ID/zones/REMOTE_ZONE" ], "diskType": "projects/PROJECT_ID/zones/ZONE/diskTypes/DISK_TYPE" } }], "networkInterfaces": [ { "network": "global/networks/default" } ] }
Substitua:
Anexar um disco de inicialização regional a uma instância
Siga estas etapas:
Estas etapas pressupõem que o disco regional e a instância já existem.
gcloud
Substitua as variáveis nos comandos anteriores pelas seguintes:
Opcional: se não for possível remover o disco de inicialização regional da instância principal devido a uma interrupção ou falha, inclua a flag
--force-attach
.REST
Substitua as variáveis nos comandos anteriores pelas seguintes:
Opcional: se não for possível remover o disco de inicialização regional da instância que foi originalmente anexado devido a uma interrupção ou falha, inclua
"forceAttach": true
no corpo da solicitação.Listar e descrever os discos regionais
É possível conferir uma lista de todos os discos regionais configurados e informações sobre as propriedades, incluindo o seguinte:
Para conferir informações detalhadas sobre os discos regionais, use o seguinte:
Redimensionar um disco regional
Se as instâncias com discos regionais precisarem de mais espaço de armazenamento, redimensione os discos. É possível redimensionar discos a qualquer momento, independentemente de o disco estar anexado a uma instância em execução. Se você precisar separar seus dados em volumes exclusivos, crie vários discos secundários para a instância. No Hyperdisk Balanced High Availability, também é possível aumentar os limites de IOPS e de capacidade de processamento do disco.
O comando para redimensionar um disco regional é muito semelhante ao comando para redimensionar um disco zonal. No entanto, é necessário especificar uma região em vez de uma zona para o local do disco.
É possível apenas aumentar, e não diminuir, o tamanho do disco. Para diminuir o tamanho do disco, crie um novo com um tamanho menor. Até excluir o disco maior e original, haverá cobrança pelos dois discos.
Para instruções sobre como modificar um disco regional, consulte:
A seguir
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2024-12-22 UTC.
-