Nesta página, explicamos como anexar um disco não inicializável a uma ou mais instâncias de máquina virtual (VM).
Para criar ou mudar o disco de inicialização de uma VM, consulte Criar um disco de inicialização e Desanexar e reanexar um disco de inicialização, respectivamente.
Para criar um disco, consulte Criar um novo volume de Persistent Disk e Criar um novo volume do Hyperdisk.
Papéis e permissões necessárias
Para ter as permissões necessárias para anexar um disco a uma VM, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
-
Administrador da instância da computação (v1) (
roles/compute.instanceAdmin.v1
) -
Para se conectar a uma instância de VM que possa ser executada como uma conta de serviço:
Usuário da conta de serviço (v1) (papel
roles/iam.serviceAccountUser
)
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 anexar um disco a uma VM. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As permissões a seguir são necessárias para anexar um disco a uma VM:
-
Para anexar um disco a uma VM:
-
compute.instances.attachDisk
na VM -
compute.instances.attachDisk
na VM -
compute.disks.use
no disco que você quer anexar à VM.
-
-
Para formatar e ativar o volume anexado:
compute.instances.setMetadata
na VM
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Modo de anexo de disco
Ao anexar um disco a uma VM, você indica como a VM pode acessar os dados no disco especificando o modo de anexação. Você pode escolher o modo somente leitura ou de leitura/gravação.
O modo padrão é de leitura/gravação.
Compartilhar um disco entre VMs
É possível compartilhar o mesmo disco entre VMs para que cada uma delas possa acessá-lo simultaneamente anexando o disco a cada VM. É possível anexar um disco a várias VMs se o tipo de disco e o tipo de máquina da VM forem compatíveis.
Para anexar um disco a várias VMs, siga o procedimento em Anexar um disco que não é de inicialização à VM para cada VM.
É necessário usar o mesmo modo de anexação de disco para todas as VMs a que você anexar o disco. Por exemplo, não é possível anexar um disco a uma VM no modo de leitura-gravação e, ao mesmo tempo, a outra VM no modo somente leitura.
Para informações sobre como anexar um disco a várias VMs, incluindo os tipos de disco compatíveis, consulte Compartilhar um disco entre VMs.
Como anexar um volume do Hyperdisk a várias VMs
Para anexar um volume do Hyperdisk a várias VMs, verifique se o modo de acesso do disco está definido com um valor adequado para seu caso de uso. Para instruções sobre como definir o modo de acesso, consulte como definir o modo de acesso do disco.
Ao anexar um volume do Hyperdisk a uma VM, é necessário escolher um modo de anexamento de disco que não entre em conflito com o modo de acesso do disco. Por exemplo, não é possível usar o modo de anexo somente leitura com um disco que esteja no modo de um único gravador ou de vários gravadores.
Limitações
Ao anexar um disco a uma VM, esteja ciente das seguintes limitações:
É possível anexar até 127 discos secundários, não inicializáveis e zonais a uma VM.
Não será possível anexar um disco a uma VM se isso exceder a capacidade máxima de disco para a VM.
Os seguintes tipos de disco não têm suporte para o modo somente leitura:
- Hiperdisco equilibrado
- Capacidade de processamento do hiperdisco
- Alta disponibilidade do hiperdisco equilibrada
- Hiperdisco extremo
Ao anexar um disco a várias VMs, use o mesmo modo de anexação de disco para todas elas.
Quando você anexa um disco a várias VMs, outras restrições são aplicadas. Consulte as restrições para compartilhar um disco entre VMs no modo somente leitura e no modo de vários gravadores.
Os discos anexados a várias VMs não são compatíveis com a exclusão automática, ou seja, eles não podem ser excluídos automaticamente quando a VM é excluída.
Como anexar um disco que não é de inicialização à VM
É possível anexar um disco zonal que não seja de inicialização a uma VM usando o console do Google Cloud, a CLI do Google Cloud ou o REST.
Ao anexar um disco a uma VM, considere os seguintes pontos:
Usar um nome de dispositivo personalizado: o Google recomenda que você especifique um nome de dispositivo personalizado ao anexar um disco a uma VM. O nome especificado é usado para gerar um link simbólico para o disco no SO convidado, o que facilita a identificação e o gerenciamento de discos na VM.
Anexar um disco a várias VMs: para anexar um disco a várias VMs, repita o procedimento desta seção para cada VM. É necessário usar o mesmo modo de anexação de disco para todas as VMs em que você anexar o disco.
Console
Acesse a página Instâncias da VM.
Clique no nome da VM a que você quer adicionar um disco.
Na página de detalhes, clique em Editar.
Na seção Armazenamento, em Discos adicionais, clique em + Anexar disco atual.
Na lista Disco, selecione o disco que você quer anexar. Se o disco não estiver listado, verifique se ele está no mesmo local que a VM. Isso significa a mesma zona para um disco zonal e a mesma região para um disco regional.
Em Modo de anexo de disco, selecione Somente leitura para permitir que a VM apenas leia do disco. Para permitir o acesso de leitura e gravação à VM, selecione Leitura/gravação.
Em Regra de exclusão, especifique se o disco será excluído quando a VM for excluída. Para manter o disco quando a VM for excluída, selecione Manter disco. Para excluir o disco quando a VM for excluída, selecione Excluir disco. Se você estiver anexando o disco a várias VMs, selecione Manter disco.
Opcional: no título Nome do dispositivo, selecione a opção Usar um nome de dispositivo personalizado. O nome inserido é usado para gerar um link simbólico para o disco, facilitando a identificação dele.
Para aplicar as mudanças ao disco, clique em Concluído.
Clique em Salvar para aplicar as alterações e anexar o disco à VM.
gcloud
Para anexar um disco a uma VM, use o comando gcloud compute instances attach-disk
.
Use a flag mode
para especificar o modo de anexo de disco.
gcloud compute instances attach-disk VM_NAME \ --disk DISK_NAME --device-name=DEVICE_NAME --mode DISK_ATTACHMENT_MODE
Substitua:
VM_NAME
: o nome da VM em que você está adicionando o novo disco zonal.DISK_NAME
: o nome do novo disco que você está anexando à VM.DEVICE_NAME
(opcional): um nome que o SO convidado usa para identificar o disco.DISK_ATTACHMENT_MODE
: opcional: como anexar o disco à VM. Para o modo somente leitura, defina comoro
. Para o modo de leitura e gravação, defina comorw
ou omita essa flag porquerw
é o padrão.
Terraform
Para anexar o disco a uma VM, use o recurso google_compute_instance
.
Para saber como aplicar ou remover uma configuração do Terraform, consulte Comandos básicos do Terraform.
REST
Para anexar um disco a uma VM, crie uma solicitação POST
para o
método compute.instances.attachDisk
e inclua o URL no disco que você quer anexar.
Para especificar o modo de conexão do disco, use o parâmetro mode
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/attachDisk { "source": "/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME", "deviceName": DEVICE_NAME, "mode" : "DISK_ATTACHMENT_MODE" }
Substitua:
PROJECT_ID
: o ID do projetoZONE
: a zona em que a VM e o disco estão localizadosVM_NAME
: o nome da VM a que você quer anexar o discoDISK_NAME
: o nome do disco que você quer anexarDEVICE_NAME
(opcional): um nome que o SO convidado usa para criar um link simbólico, que ajuda a identificar o disco.DISK_ATTACHMENT_MODE
: opcional: como o disco precisa ser anexado à VM. Para o modo somente leitura, useREAD_ONLY
. Para o modo de leitura e gravação, defina comoREAD_WRITE
ou omita porqueREAD_WRITE
é o padrão.
Depois de anexar um disco a uma VM, conecte-se a ela e ative o sistema operacional (SO) da VM para usar o disco:
- Se você anexou um disco em branco, formate e monte o disco.
- Se você tiver conectado um disco não vazio, monte-o.
Saiba como formatar e montar os novos discos em VMs do Linux ou do Windows.
A seguir
- Evite a perda de dados fazendo backup dos discos com snapshots regularmente.
- Use discos permanentes regionais para replicação síncrona entre duas zonas.