Se a instância de máquina virtual (VM) precisar de mais espaço de armazenamento ou limites de desempenho maiores, aumente o tamanho do Persistent Disk. É possível aumentar o tamanho do disco a qualquer momento, esteja ele conectado ou não a uma VM em execução.
Nesta página, discutimos como mudar o tamanho de um Persistent Disk. Para aumentar o tamanho de um volume do Google Cloud Hyperdisk, consulte Modificar as configurações de um hiperdisco.
Ao criar uma imagem personalizada do Linux, imagem personalizada do Windows ou uma imagem do Fedora CoreOS, você precisa aumentar manualmente o tamanho dos discos de inicialização e de não inicialização. Se você estiver usando uma imagem pública (exceto imagens do Fedora CoreOS), o Compute Engine redimensionará automaticamente os discos de inicialização.
Aumentar o tamanho de um disco não exclui ou modifica dados de disco. No entanto, como prática recomendada, antes de fazer alterações no sistema de arquivos ou nas partições, sempre faça backup do disco criando um snapshot.
O Compute Engine gerencia o hardware por trás dos discos permanentes. Assim, é possível adicionar e redimensionar os discos sem lidar com divisão ou redundância.
Antes de começar
-
Configure a autenticação, caso ainda não tenha feito isso.
Com isso, você confirma 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:
Selecione a guia para como planeja usar as amostras nesta página:
Console
Quando você usa o console Google Cloud para acessar serviços Google Cloud e APIs, não é necessário configurar a autenticação.
gcloud
-
Instale a CLI do Google Cloud. Após a instalação, inicialize a Google Cloud CLI executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
-
- Defina uma região e uma zona padrão.
-
Instale a CLI do Google Cloud.
-
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
-
Se você estiver usando um shell local, crie credenciais de autenticação local para sua conta de usuário:
gcloud auth application-default login
Não é necessário fazer isso se você estiver usando o Cloud Shell.
Se um erro de autenticação for retornado e você estiver usando um provedor de identidade (IdP) externo, confirme se você fez login na CLI gcloud com sua identidade federada.
Terraform
Para usar os exemplos do Terraform nesta página em um ambiente de desenvolvimento local, instale e inicialize a CLI gcloud e configure o Application Default Credentials com suas credenciais de usuário.
Para mais informações, consulte Configurar a autenticação para um ambiente de desenvolvimento local.
REST
Para usar as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Instale a CLI do Google Cloud.
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Papéis e permissões necessárias
Para receber a permissão necessária para redimensionar um Persistent Disk, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto:
-
Administrador da instância do Compute (v1) (
roles/compute.instanceAdmin.v1) -
Para se conectar a uma VM que pode ser executada como uma conta de serviço:
Usuário da conta de serviço (v1) (
roles/iam.serviceAccountUser)
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém a
permissão
compute.disks.update,
que é necessária para
redimensionar um Persistent Disk.
Também é possível receber essa permissão com papéis personalizados ou outros papéis predefinidos.
Diminuir o tamanho de um disco
Não é possível diminuir o tamanho de um Persistent Disk. Substitua o disco por um novo e menor. Para fazer isso, crie um disco em branco com um tamanho menor e copie o conteúdo do disco original para o novo. Em seguida, use o novo disco em vez do original.
Para substituir um disco por um menor, siga estas etapas:
- Crie um disco permanente em branco e especifique o tamanho desejado. Verifique se o novo disco é grande o suficiente para conter os dados do disco de origem.
- Anexe os dois discos à mesma instância. Para instruções, consulte Anexar um disco que não é de inicialização a uma VM.
- Formate e ative o novo disco. Consulte as instruções para instâncias do Linux e do Windows.
- Copie os dados do disco original para o novo usando
utilitários disponíveis para seu sistema operacional (SO). Por exemplo, para Linux, use
rsyncoudd. Para instâncias do Windows, userobocopy. - Verifique se o novo disco tem todos os dados e está funcionando como esperado.
- Atualize o aplicativo ou SO para usar o novo disco.
- Depois de confirmar que a migração foi bem-sucedida, é possível desanexar e excluir o disco original maior.
Limites de tamanho para volumes do Persistent Disk
O tamanho especificado para um volume Persistent Disk precisa estar dentro dos intervalos listados na tabela a seguir.
| Tipo de disco | Tamanho mínimo | Tamanho máximo | Tamanho padrão |
|---|---|---|---|
| Disco permanente equilibrado | Por zona: 10 GiB Regional: 10 GiB |
64 TiB | 100 GiB |
| Persistent Disk (SSD) de desempenho | Por zona: 10 GiB Regional: 10 GiB |
64 TiB | 100 GiB |
| Disco permanente padrão | Por zona: 10 GiB Regional: 200 GiB |
64 TiB | 500 GiB |
| Disco permanente extremo | 500 GiB | 64 TiB | 1 TiB |
Aumentar o tamanho de um disco
Para aumentar o tamanho de um disco de inicialização ou não inicialização, use o seguinte procedimento:
Console
No console do Google Cloud , acesse a página Discos.
Na lista de discos do projeto, clique no nome do disco que você quer redimensionar.
Na página de Detalhes do disco, clique em Editar. Talvez seja necessário clicar no menu Mais ações e em Editar.
No campo Tamanho, insira o novo tamanho do disco. Os discos com tabelas de partição MBR só podem ser redimensionados até 2 TB.
Clique em Salvar para aplicar as mudanças ao disco.
O novo tamanho do disco é exibido na lista de discos.
gcloud
Use o comando gcloud compute disks resize
e especifique a flag --size com o novo tamanho do disco, em gibibytes (GiB).
gcloud compute disks resize DISK_NAME \
--size DISK_SIZE \
--zone=ZONE
Substitua:
DISK_NAME: o nome do disco que você está redimensionando.DISK_SIZE: o novo tamanho do disco em gibibytes (GiB). Discos com tabelas de partição MBR podem ser redimensionados apenas até 2 TB.ZONE: para Persistent Disk zonais, especifique a zona em que o disco está localizado.Para discos permanentes regionais, use a flag
--region=REGIONe especifique a região em que o disco está localizado.
Terraform
Escolha uma das opções a seguir para redimensionar discos zonais ou discos permanentes regionais:
Disco zonal
Para mudar o tamanho de um Persistent Disk, use o
recurso google_compute_disk e o parâmetro
size.
Se você incluir o parâmetro size com o
image ou snapshot, o
valor size precisa ser igual ou maior que o tamanho da
imagem ou do snapshot.
Se você omitir os parâmetros image e snapshot, poderá definir o parâmetro size como menor que o tamanho do disco atual. Se você fizer isso, o Terraform vai destruir o disco e
criar um novo Persistent Disk vazio.
Disco permanente regional
Para mudar o tamanho de um disco permanente regional, use o
recurso google_compute_region_disk
e o parâmetro size.
Se você incluir o parâmetro size com o
image ou snapshot, o
valor size precisa ser igual ou maior que o tamanho da
imagem ou do snapshot.
Se você omitir os parâmetros image e snapshot, poderá definir o parâmetro size como menor que o tamanho do disco atual. Se você fizer isso, o Terraform vai destruir o disco e
criar um novo RegionalPersistent Disk vazio.
REST
Para redimensionar um Persistent Disk, crie uma solicitação POST para o
método compute.disks.resize.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/resize
{
"sizeGb": "DISK_SIZE"
}
Para redimensionar um disco permanente regional, crie uma solicitação POST para o
método compute.regionDisks.resize.
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.ZONE: para Persistent Disk zonal, a zona em que o disco está localizado.REGION: para Persistent Disk regional, a região em que o disco está localizado.DISK_NAME: o nome do disco a ser redimensionado.DISK_SIZE: o novo tamanho do disco em gibibytes (GiB). Discos com tabelas de partição MBR podem ser redimensionados apenas até 2 TB.
Redimensionar o sistema de arquivos e as partições
Depois de aumentar o tamanho de um disco, talvez seja necessário redimensionar o sistema de arquivos e as partições dele. A lista a seguir mostra mais informações sobre discos de inicialização e de não inicialização:
Disco de inicialização: se você estiver usando uma imagem personalizada do Linux, uma imagem personalizada do Windows ou uma imagem do Fedora CoreOS, será preciso redimensionar manualmente a partição raiz e o sistema de arquivos. Para VMs com imagens públicas (exceto imagens do Fedora CoreOS), o Compute Engine redimensiona automaticamente a partição raiz e o sistema de arquivos depois que você aumenta o tamanho do disco de inicialização, sem precisar reiniciar a VM.
Disco que não é de inicialização: depois de aumentar o tamanho do disco, estenda o sistema de arquivos no disco para usar o espaço adicionado. Não é necessário reiniciar a VM.
No exemplo a seguir, mostramos como redimensionar manualmente a partição raiz e o sistema de arquivos de um disco de inicialização e como redimensionar manualmente o sistema de arquivos de um disco de dados que não seja de inicialização sem tabela de partição. Neste exemplo, presumimos que o disco foi anexado usando SCSI e formatado e montado anteriormente.
Se o Persistent Disk foi anexado usando NVMe, consulte Redimensionar o sistema de arquivos e as partições para ver um exemplo de saída para discos anexados por NVMe.
VMs do Linux
No console do Google Cloud , acesse a página Instâncias de VM.
Ao lado da instância que tem o novo disco anexado, clique no botão SSH. O navegador abre uma conexão de terminal à instância.
Use os comandos
dfelsblkpara listar o tamanho do sistema de arquivos e encontrar os nomes dos dispositivos para seus discos.$ sudo df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/sda1 ext4 9.7G 1.2G 8.5G 12% / /dev/sdb ext4 250G 60M 250G 1% /mnt/disks/disk-1
$ sudo lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 20G 0 disk └─sda1 8:1 0 10G 0 part / sdb 8:16 0 500G 0 disk /mnt/disks/disk-1
Este exemplo inclui os seguintes discos:
- Disco de inicialização: a partição
/dev/sda1está em um disco de inicialização que foi redimensionado para 20 GB. A tabela de partição e o sistema de arquivos fornecem apenas 9,7 GB para o sistema operacional. - Disco de dados não inicializável: o disco de dados
/dev/sdbnão inicializável não tem tabela de partição, mas o sistema de arquivos nesse disco fornece apenas 250 GB para o sistema operacional. O diretório de ativação para este disco é/mnt/disks/disk-1.
O comando
dfmostra que a partição/dev/sda1é montada como o sistema de arquivos raiz, e o disco/dev/sdbé montado como um disco de dados não inicializável em/mnt/disks/disk-1. Anote a coluna Tipo, que indica se o disco usa um sistema de arquivosext4ouxfs.- Disco de inicialização: a partição
Verifique o tipo de partição:
Como alternativa, para ver informações apenas de um disco específico:sudo parted -l
Procure o campo Tabela de partição. Se o valor forsudo parted -l /dev/DEVICE_NAME
msdos, o disco terá um tipo de partição MBR. Isso significa que o tamanho máximo desse disco é de 2 TB.Redimensione a partição raiz e o sistema de arquivos no disco de inicialização. Neste exemplo, presumimos que a imagem de VM não é compatível com o particionamento raiz automático e o redimensionamento de sistema de arquivos.
Redimensione a partição raiz usando
parted. Por exemplo, os comandos a seguir expandem a partição1de/dev/sdapara o tamanho máximo possível:Abra
partedna partição/dev/sda:sudo parted /dev/sda
No prompt
(parted), insira:resizepart
No prompt
Partition number?, insira:1
No prompt
Warning: Partition /dev/sda1 is being used. Are you sure you want to continue?, insira:Yes
No prompt
End?, insira:100%
No prompt
(parted), insira:quit
Leia a nova tabela de partições usando
partprobe.sudo partprobe /dev/sda
Ampliar o sistema de arquivos:
Se estiver usando
ext4, utilize o comandoresize2fs.sudo resize2fs /dev/sda1
Se estiver usando
xfs, utilize o comandoxfs_growfs.sudo xfs_growfs -d /
Se você estiver usando btrfs, use o comando
btrfs:sudo btrfs filesystem resize max /
Redimensione o sistema de arquivos no disco de dados não inicializável.
Se você estiver usando
ext4, utilize o comandoresize2fspara estender o sistema de arquivos:sudo resize2fs /dev/DEVICE_NAME
Substitua
DEVICE_NAMEpelo nome do dispositivo do disco. Neste exemplo, o nome do dispositivo é/dev/sdb.Se você estiver usando
xfs, utilize o comandoxfs_growfspara estender o sistema de arquivos:sudo xfs_growfs MOUNT_DIR
Substitua MOUNT_DIR pelo ponto de montagem do dispositivo. É possível encontrar o ponto de montagem listado na coluna
MOUNTPOINTna saída do comandolsblk.Se você estiver usando btrfs, utilize o comando
btrfspara estender o sistema de arquivos:sudo btrfs filesystem resize max MOUNT_DIR
Substitua MOUNT_DIR pelo ponto de montagem do dispositivo. É possível encontrar o ponto de montagem listado na coluna
MOUNTPOINTna saída do comandolsblk.
Use o comando
dfpara verificar se o sistema de arquivos foi estendido. Por exemplo:df -h /dev/sdb Filesystem Size Used Avail Use% Mounted on /dev/sdb 493G 70M 492G 1% /mnt/disks/disk-1
VM do Windows
Use a ferramenta Gerenciamento de disco do Windows para redimensionar as partições de uma instância nesse SO.
No console do Google Cloud , acesse a página Instâncias de VM.
Ao lado da instância com o disco redimensionado, clique no botão RDP. O navegador abre uma conexão RDP com a instância.
Clique com o botão direito do mouse no botão Iniciar do Windows e selecione Gerenciamento de Disco para abrir essa ferramenta.
Mostre o tipo de partição dos discos executando no PowerShell:
Na coluna Estilo de partição, se o valor for MBR, o disco terá um tipo de partição MBR. Isso significa que o tamanho máximo desse disco seria de 2 TB.Get-Disk
Atualize a ferramenta Gerenciamento de Disco para que o espaço extra do Persistent Disk zonal seja reconhecido. Na parte superior da janela Gerenciamento de Disco, clique em Ação e selecione Atualizar.
No disco que você redimensionou, clique com o botão direito do mouse na partição formatada e selecione Estender Volume.
Siga as instruções do Assistente para Extensão de Volumes para estender a partição atual e incluir o espaço extra no disco. Se a partição atual estiver formatada em NTFS, o tamanho máximo da partição será limitado pelas configurações de tamanho do cluster.
Depois de concluir a tarefa guiada pelo assistente e a formatação do volume, verifique a coluna
Statusna lista de discos anexados para confirmar que o novo disco está com o statusHealthy.
Não vai ser necessário reiniciar a VM depois que esse processo for concluído. Já é possível usar o espaço em disco adicionado para armazenar dados.