Resolva problemas relacionados com discos cheios e redimensionamento de discos

Esta página descreve problemas comuns que pode encontrar ao redimensionar um disco persistente ou quando o disco persistente está cheio, e como corrigir cada um deles.

Antes de começar

  • Crie sempre uma captura instantânea do seu disco antes de realizar quaisquer passos de resolução de problemas para garantir que é feita uma cópia de segurança dos seus dados.
  • Se ainda não o tiver feito, configure a autenticação. A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-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

    1. Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init

      Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.

    2. Set a default region and zone.

    REST

    Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.

      Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init

      Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.

    Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.

Erro de limite de taxa ao modificar um disco

Seguem-se erros comuns que pode encontrar quando tenta modificar o seu Extreme Persistent Disk ou Google Cloud Hyperdisk. Pode ver estes erros apresentados em vários locais, como na saída da consola de série ou nos registos da aplicação.

    Disk cannot be resized due to being rate limited.
    
    Cannot update provisioned iops due to being rate limited.
    
    Cannot update provisioned throughput due to being rate limited.
    

Reveja os seguintes limites de tempo para modificar discos:

  • Só pode redimensionar um volume de disco persistente extremo ou de débito do Hyperdisk uma vez num período de 6 horas.
  • Só pode redimensionar um volume do Hyperdisk Extreme uma vez num período de 4 horas.
  • Só pode alterar os IOPS aprovisionados ou a taxa de transferência de um volume do Hyperdisk uma vez num período de 4 horas.

Para resolver estes erros, aguarde o tempo necessário desde a última modificação antes de tentar modificar novamente os discos.

Erros de capacidade do disco

Discos cheios

Seguem-se erros comuns que pode encontrar quando o disco persistente atinge a capacidade máxima. Pode ver estes erros apresentados em vários locais, como na saída da consola de série ou nos registos de aplicações.

    No space left on device
    
    Not enough storage is available to process this command
    

Para resolver este problema, faça o seguinte:

  1. Crie um instantâneo do disco.

  2. Elimine ficheiros de que não precisa no disco para libertar espaço.

  3. Se o disco precisar de mais espaço após este processo, redimensione o disco.

VM inacessível devido a disco de arranque cheio

A sua VM pode ficar inacessível se o respetivo disco de arranque estiver cheio. Este cenário pode ser difícil de identificar. Nem sempre é óbvio quando o problema de conetividade da VM se deve a um disco de arranque cheio. Seguem-se exemplos de erros comuns que pode encontrar se não conseguir aceder à sua VM a partir da CLI gcloud porque o disco de arranque está cheio:

      Network error: Software caused connection abort
      
      ERROR: (gcloud.compute.ssh) Could not SSH into the instance.  It is possible
      that your SSH key has not propagated to the instance yet. Try running this
      command again.  If you still cannot connect, verify that the firewall and
      instance are set to accept ssh traffic.
      
      You cannot connect to the VM instance because of an unexpected error. Wait a
      few moments and then try again.
      
      No space left on device
      
      ERROR Exception calling the response handler. [Errno 2] No usable temporary
      directory found in ['/tmp', '/var/tmp', '/usr/tmp', '/']...
      

Para resolver os problemas acima, faça o seguinte:

  1. Confirme se a falha de SSH da VM se deve a um disco de arranque cheio:

    gcloud compute instances tail-serial-port-output VM_NAME
    

    Se o disco de arranque estiver cheio, o resultado contém a mensagem No space left on device.

  2. Se ainda não o fez, crie uma captura de ecrã do disco de arranque da VM.

  3. Experimente reiniciar a VM.

  4. Se ainda não conseguir aceder à VM, faça o seguinte:

    1. Parar a VM:

      gcloud compute instances stop VM_NAME
      

      Substitua VM_NAME pelo nome da sua VM.

    2. Aumente o tamanho do disco de arranque:

      gcloud compute disks resize BOOT_DISK_NAME --size DISK_SIZE
      

      Substitua o seguinte:

      • BOOT_DISK_NAME: o nome do disco de arranque da VM
      • DISK_SIZE: o novo tamanho maior, em gigabytes, do disco de arranque

      Por exemplo, para redimensionar um disco denominado example-disk-1 para 6 GB, execute o seguinte comando:

      gcloud compute disks resize example-disk-1 --size=6GB
      
    3. Inicie a VM:

      gcloud compute instances start VM_NAME
      
  5. Tente novamente estabelecer ligação SSH à VM. Se ainda não conseguir aceder à VM, faça uma das seguintes ações:

Problemas do sistema de ficheiros

Redimensionamento do sistema de ficheiros

Depois de redimensionar um disco de arranque de VM, a maioria das VMs redimensiona o sistema de ficheiros raiz e reinicia a VM. No entanto, para alguns tipos de imagens de VM, pode ter de redimensionar o sistema de ficheiros manualmente. Se a sua VM não suportar a alteração automática do tamanho do sistema de ficheiros raiz ou se tiver alterado o tamanho de um disco persistente de dados (não de arranque), tem de alterar manualmente o tamanho do sistema de ficheiros e das partições.

Para verificar se o sistema de ficheiros raiz foi expandido automaticamente depois de redimensionar o disco de arranque da VM, faça o seguinte:

  1. Verifique se a VM redimensionou o disco de arranque através de um dos seguintes métodos:

    • Inspecione a saída da porta de série. Procure uma linha que indique que a partição de raiz foi redimensionada.

      Por exemplo, em VMs com imagens Debian, se o redimensionamento automático tiver sido bem-sucedido, os registos da consola incluem a linha ... expand-root.sh[..]: Resizing ext4 filesystem on /dev/sda1.

    • Se conseguir estabelecer ligação a uma VM do Linux através de SSH, execute o comando df -h para verificar se existe espaço livre no disco.

      Por exemplo, este resultado mostra que o sistema de ficheiros raiz está 92% cheio:

      Filesystem                                    Size  Used Avail Use% Mounted on
      udev                                           63G     0   63G   0% /dev
      tmpfs                                          13G  1.4M   13G   1% /run
      /dev/sda1                                     339G  315G   24G  92% /
      
  2. Se a VM não redimensionou o sistema de ficheiros raiz, redimensione manualmente o sistema de ficheiros e as partições.