Limpe as etiquetas após restaurar discos anexados a VMs

Esta página explica como evitar potenciais falhas de restauro ou perda de dados quando trabalha com discos restaurados a partir de cópias de segurança de discos anexados a máquinas virtuais (VMs).

A restauração de um disco individual que estava associado a uma VM pode deixar etiquetas específicas no recurso de disco restaurado e no respetivo recurso PersistentVolumeClaim(PVC) subjacente. A não remoção das etiquetas conforme descrito pode resultar no seguinte:

  • Falhas durante operações de restauro completo de VMs subsequentes.
  • Modificação ou substituição não intencional do PVC subjacente do disco restaurado durante um restauro completo da VM subsequente, o que pode levar à perda de dados no disco restaurado.

Antes de começar

Para limpar as etiquetas após restaurar um disco associado a uma VM, tem de ter o seguinte:

  • A função de identidade e acesso necessária. Peça ao administrador de IAM da organização para lhe conceder a função de depurador de DBS (dbs-debugger).
  • Acesso aos ficheiros kubeconfig adequados para os clusters que gerem estes recursos.
  • A ferramenta de linhas de comando kubectl instalada e configurada.

Limpe etiquetas

Tem de fazer a limpeza do recurso VirtualMachineDisk e do recurso PersistentVolumeClaim (PVC) subjacente.

Limpe as etiquetas de discos de VMs

Para limpar as etiquetas de um disco de VM restaurado, siga estes passos:

  1. Obtenha o ficheiro kubeconfig para o servidor da API de gestão e defina a variável de ambiente KUBECONFIG:

    export KUBECONFIG=PATH_TO_MANAGEMENT_API_KUBECONFIG
    

    Substitua PATH_TO_MANAGEMENT_API_KUBECONFIG pelo caminho para o ficheiro kubeconfig. Para mais informações, consulte os recursos do servidor da API de gestão zonal.

  2. Verifique se o recurso VirtualMachineDisk restaurado existe no espaço de nomes especificado:

    kubectl get virtualmachinedisks.virtualmachine.gdc.goog \
    -n NAMESPACE RESTORED_VM_DISK_NAME
    

    Substitua o seguinte:

    • NAMESPACE: o espaço de nomes do projeto.
    • RESTORED_VM_DISK_NAME: o nome completo do disco restaurado com os valores recolhidos nos pré-requisitos. O valor desta variável pode ser derivado de RESTORED_PREFIX-VM_DISK_NAME.
  3. Remova a etiqueta de âmbito da cópia de segurança do recurso VirtualMachineDisk. O hífen final após a chave da etiqueta significa remoção:

    kubectl label virtualmachinedisks.virtualmachine.gdc.goog -n NAMESPACE \
        RESTORED_VM_DISK_NAME bpvms/VM_NAME-
    

    Substitua VM_NAME pelo nome da VM restaurada.

  4. Opcional: para verificar se a etiqueta bpvms/VM_NAME já não está presente, pode executar novamente o comando kubectl get correspondente, ajustando-o ao tipo de recurso e cluster específicos:

    kubectl get virtualmachinedisks.virtualmachine.gdc.goog \
    -n NAMESPACE VM_NAME
    

Limpe as etiquetas de PVC

Para limpar as etiquetas do PVC subjacente, siga estes passos:

  1. Obtenha o ficheiro kubeconfig para o cluster de infraestrutura da organização e defina a variável de ambiente KUBECONFIG:

    export KUBECONFIG=PATH_TO_ORG_INFRA_KUBECONFIG
    

    Substitua PATH_TO_ORG_INFRA_KUBECONFIG pelo caminho para o ficheiro kubeconfig.

  2. Verifique se o PVC subjacente do disco restaurado existe no espaço de nomes especificado:

    kubectl get pvc -n NAMESPACE \
        RESTORED_VM_DISK_NAME
    

    Substitua o seguinte:

    • NAMESPACE: o espaço de nomes do projeto.
    • RESTORED_VM_DISK_NAME: o nome do disco da VM restaurado.
  3. Remova a etiqueta de âmbito da cópia de segurança do PVC. O hífen final após a chave da etiqueta significa remoção:

    kubectl label pvc -n NAMESPACE RESTORED_VM_DISK_NAME bpvms/VM_NAME-
    

    Substitua VM_NAME pelo nome da VM restaurada.

  4. Opcional: para verificar se a etiqueta bpvms/VM_NAME já não está presente, pode executar novamente o comando kubectl get correspondente, ajustando-o ao tipo de recurso e cluster específicos:

    kubectl get pvc -n NAMESPACE \
        VM_NAME