Criar um plano de backup programado

Neste documento, descrevemos como criar planos de backup programados para fazer backup de cargas de trabalho de máquina virtual (VM) em uma programação definida no Google Distributed Cloud (GDC) com isolamento físico.

Os planos de backup oferecem a configuração e o local para backups. Um plano de backup contém uma configuração de backup, incluindo a VM de origem e a seleção de qual VM fazer backup. Os planos de backup definem uma programação regular para os backups de VMs. Cada plano de backup baseado em VM faz referência aos recursos de VM ou disco de VM de destino que serão armazenados em backup usando um seletor de rótulos definido em um recurso ProtectedApplication.

Este documento é destinado a desenvolvedores em grupos de administradores de plataforma ou operadores de aplicativos que gerenciam operações de backup de VMs. Para mais informações, consulte Públicos-alvo da documentação do GDC com isolamento físico.

Antes de começar

Para criar planos de backup de VM, você precisa ter o seguinte:

Solicitar papéis do IAM

Para gerenciar o ciclo de vida dos recursos de backup de VM, incluindo a criação, visualização e exclusão de planos de backup e restauração em clusters de usuário, peça ao administrador do IAM da organização para conceder a você o papel de Administrador de backup da organização (organization-backup-admin). Esse papel permite configurar e executar estratégias de proteção de dados de VM.

Criar um modelo de plano de backup para VMs

Para planejar seus backups, crie um recurso personalizado VirtualMachineBackupPlanTemplate. Confira um exemplo de VirtualMachineBackupPlanTemplate:

   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachineBackupPlanTemplate
   metadata:
     name: BACKUP_TEMPLATE_NAME
     namespace: PROJECT_NAME
   spec:
     backupRepository: "BACKUP_REPOSITORY_NAME"

Substitua:

  • BACKUP_TEMPLATE_NAME: o nome do modelo de plano de backup.
  • PROJECT_NAME: o nome do projeto em que o modelo será criado.

  • BACKUP_REPOSITORY_NAME: o nome do repositório criado na seção anterior.

Criar um plano de backup definido para VMs

Para criar backups de VM em uma programação definida com um escopo especificado, é necessário criar um recurso VirtualMachineBackupPlan usando a API. Esse recurso especifica o escopo do backup da VM e a programação cron que define a frequência de criação do backup.

Defina o escopo do plano de backup da VM de duas maneiras:

  • Usar uma lista: especifique as máquinas virtuais ou os discos de máquina virtual para fazer backup na forma de uma lista. Esses destinos de backup estão listados nos campos selectedVirtualMachines e selectedVirtualMachineDisks.
  • Usar um rótulo: forneça um rótulo que selecione todas as máquinas virtuais ou discos máquina virtual que contenham esse valor de rótulo. Todas as VMs correspondentes são salvas por esse plano de backup.

Criar um plano de backup de VM usando uma lista

Para criar um plano de backup de VM usando o método de lista, especifique os destinos de backup nos campos selectedVirtualMachines e selectedVirtualMachineDisks:

apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineBackupPlan
metadata:
    name: BACKUP_PLAN_NAME
    namespace: BACKUP_PLAN_NAMESPACE
spec:
    virtualMachineBackupPlanTemplate: BACKUP_TEMPLATE_NAME
    backupConfig:
        backupScope:
            selectedVirtualMachines:
                - resourceName: VM_NAME
            selectedVirtualMachineDisks:
                - resourceName: VM_DISK_NAME
        volumeStrategy: VOLUME_STRATEGY
    backupSchedule:
        cronSchedule: CRON_SCHEDULE
        paused: false
        maxConcurrency: MAX_CONCURRENCY

Substitua:

  • BACKUP_PLAN_NAME: o nome do plano de backup.
  • BACKUP_PLAN_NAMESPACE: o namespace que contém o plano de backup.
  • BACKUP_TEMPLATE_NAME: o modelo de plano de backup da máquina virtual que aponta para o repositório de backup relevante criado em Criar um modelo de plano de backup de VM.
  • VM_NAME: os nomes das VMs como uma lista no campo selectedVirtualMachines. Essa lista de VMs é armazenada em backup pelo plano de backup de máquina virtual. Se mais de uma VM for especificada, liste os nomes das VMs usando o seguinte formato:

    selectedVirtualMachines:
        - resourceName: "virtualmachine"
        - resourceName: "virtualmachine-2"
        ...
        - resourceName: "virtualmachine-n"
    
  • VM_DISK_NAME: os discos da VM que serão incluídos no plano de backup da máquina virtual. Se você precisar especificar mais de um disco de VM, liste os discos no seguinte formato:

    selectedVirtualMachineDisks:
        - resourceName: "disk-1"
        - resourceName: "disk-2"
        ...
        - resourceName: "disk-n"
    
  • VOLUME_STRATEGY: o tipo de backup de volume a ser realizado. Use um dos seguintes valores:

    • ProvisionerSpecific: aproveita os recursos de backup e restauração do provisionador de armazenamento subjacente. Use essa opção se includeVolumeData for true.
    • LocalSnapshotOnly: cria uma cópia pontual do volume apenas no próprio sistema de armazenamento local.
  • CRON_SCHEDULE: a expressão cron que define a programação de backup escolhida. Por exemplo, um valor cron de 0 */12 * * * cria um backup a cada 12 horas. O intervalo mínimo entre backups programados é de 10 minutos.

  • MAX_CONCURRENCY: especifica o número máximo de backups programados ativos que podem existir em um plano de backup ao mesmo tempo. Se especificado, não mais do que esse número de backups programados desse plano podem estar no estado ativo em um determinado momento. Se não for especificado, o padrão será 2. O valor precisa estar entre 1 e 7.

Criar um plano de backup de VM usando um rótulo

Para criar um plano de backup de VM usando o método de rótulo, especifique um rótulo no campo vmResourceLabelSelector que corresponda às VMs de destino que você quer incluir no backup:

apiVersion: virtualmachine.gdc.goog/v1
kind: VirtualMachineBackupPlan
metadata:
    name: BACKUP_PLAN_NAME
    namespace: BACKUP_PLAN_NAMESPACE
spec:
    virtualMachineBackupPlanTemplate: BACKUP_TEMPLATE_NAME
    backupConfig:
        backupScope:
            vmResourceLabelSelector:
                KEY: VALUE
        volumeStrategy: VOLUME_STRATEGY
    backupSchedule:
        cronSchedule: CRON_SCHEDULE
        paused: false
        maxConcurrency: MAX_CONCURRENCY

Substitua:

  • BACKUP_PLAN_NAME: o nome do plano de backup.
  • BACKUP_PLAN_NAMESPACE: o namespace que contém o plano de backup.
  • BACKUP_TEMPLATE_NAME: o modelo de plano de backup da máquina virtual que aponta para o repositório de backup relevante criado em Criar um modelo de plano de backup de VM.
  • KEY: VALUE: o seletor de rótulos que corresponde aos rótulos fornecidos com as VMs que contêm esse rótulo. Todas as VMs correspondentes encontradas no mesmo namespace são salvas por esse plano de backup. Esse objeto precisa estar no formato keys:string, values:string.
  • VOLUME_STRATEGY: o tipo de backup de volume a ser realizado. Use um dos seguintes valores:
    • ProvisionerSpecific: aproveita os recursos de backup e restauração do provisionador de armazenamento subjacente. Use essa opção se includeVolumeData for true.
    • LocalSnapshotOnly: cria uma cópia pontual do volume apenas no próprio sistema de armazenamento local.
  • CRON_SCHEDULE: a expressão cron que define a programação de backup escolhida. Por exemplo, um valor cron de 0 */12 * * * cria um backup a cada 12 horas.
  • MAX_CONCURRENCY: especifica o número máximo de backups programados ativos que podem existir em um plano de backup ao mesmo tempo. Se especificado, não mais do que esse número de backups programados desse plano podem estar no estado ativo em um determinado momento. Se não for especificado, o padrão será 2. O valor precisa estar entre 1 e 7.

Ver um plano de backup

Veja um plano de backup usando o console do GDC ou kubectl.

Console

Confira uma lista de planos de backup usando o console do GDC.

  1. Faça login no console do GDC.
  2. No menu de navegação, clique em Backup para máquinas virtuais > Planos de backup.
  3. Selecione um projeto.
  4. Clique em um plano de backup na lista para ver os detalhes.

kubectl

Para ver um plano de backup, liste os planos de backup e confira os detalhes deles usando kubectl.

  1. Liste os planos de backup atuais:

    kubectl get backupplans.backup.gdc.goog -n PROJECT_NAME
    
  2. Na lista, encontre o plano de backup que você quer visualizar.

  3. Confira os detalhes do plano de backup:

    kubectl describe backupplans.backup.gdc.goog BACKUP_PLAN_NAME -n PROJECT_NAME
    

    Substitua:

    • BACKUP_PLAN_NAME: o nome do plano de backup.
    • PROJECT_NAME: o nome do projeto.

A seguir