Skip to main content
NetApp Backup and Recovery
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Configurações avançadas de restauração para Kubernetes em NetApp Backup and Recovery

Colaboradores netapp-mwallis

Utilize anotações, configurações de namespace e opções de storage para personalizar as operações de restauração do Kubernetes para o seu ambiente.

Anotações e rótulos de namespace durante operações de restauração e failover

Durante a restauração e o failover, os rótulos e anotações do namespace de destino são atualizados para corresponder à origem: as chaves da origem são adicionadas ou substituem as chaves de destino, enquanto as chaves que existem apenas no destino permanecem inalteradas.

Observação No Red Hat OpenShift, as anotações de namespace são importantes porque garantem que os pods restaurados recebam as restrições e permissões de contexto de segurança corretas, permitindo que acessem volumes e sejam executados sem erros de permissão. Para obter mais informações, consulte a "OpenShift security context constraints documentação".

Defina a variável de ambiente do Kubernetes

RESTORE_SKIP_NAMESPACE_ANNOTATIONS

Antes da restauração ou failover, para evitar que anotações específicas do namespace de destino sejam sobrescritas. Por exemplo:

helm upgrade trident-protect -n trident-protect netapp-trident-protect/trident-protect \
  --set-string restoreSkipNamespaceAnnotations="{<annotation_key_to_skip_1>,<annotation_key_to_skip_2>}" \
  --reuse-values
Observação Durante a restauração ou failover, quaisquer anotações e rótulos de namespace especificados em restoreSkipNamespaceAnnotations e restoreSkipNamespaceLabels são excluídos da operação de restauração ou failover. Certifique-se de que essas configurações sejam definidas durante a instalação inicial do Helm. Para saber mais, consulte "Configurar configurações adicionais do helm chart do Trident Protect".

Se você usou o Helm com a --create-namespace flag para instalar o aplicativo de origem, Trident Protect copia o rótulo de nome para o namespace de destino. Se o valor do rótulo corresponder ao nome do namespace de origem, ele será substituído pelo nome do namespace de destino; caso contrário, permanecerá como está.

Exemplo

O exemplo a seguir mostra namespaces de origem e destino com rótulos e anotações diferentes, e exibe o namespace de destino antes e depois da operação para ilustrar como as chaves são adicionadas, mescladas ou sobrescritas.

Antes da operação de restauração ou failover

A tabela a seguir ilustra o estado dos namespaces de origem e destino do exemplo antes da operação de restauração ou failover:

Espaço de nomes Anotações Etiquetas

Namespace ns-1 (fonte)

  • annotation.one/key: "valoratualizado"

  • anotação.dois/chave: "true"

  • ambiente=produção

  • compliance=hipaa

  • name=ns-1

Espaço de nomes ns-2 (destino)

  • annotation.one/key: "true"

  • anotação.three/chave: "falso"

  • role=database

Após a operação de restauração

A tabela a seguir ilustra o estado do namespace de destino de exemplo após a operação de restauração ou failover. Algumas chaves foram adicionadas, outras foram sobrescritas e o name rótulo foi atualizado para corresponder ao namespace de destino:

Espaço de nomes Anotações Etiquetas

Espaço de nomes ns-2 (destino)

  • annotation.one/key: "valoratualizado"

  • anotação.dois/chave: "true"

  • anotação.three/chave: "falso"

  • name=ns-2

  • compliance=hipaa

  • ambiente=produção

  • role=database

Campos suportados

Esta seção descreve campos adicionais para operações de restauração.

Mapeamento de classe de armazenamento

O spec.storageClassMapping atributo mapeia uma classe de armazenamento no aplicativo de origem para uma nova classe de armazenamento no cluster de destino. Use este campo ao migrar aplicativos entre clusters com classes de armazenamento diferentes ou ao alterar o backend de armazenamento para operações de BackupRestore.

Exemplo:

storageClassMapping:
  - destination: "destinationStorageClass1"
    source: "sourceStorageClass1"
  - destination: "destinationStorageClass2"
    source: "sourceStorageClass2"

Anotações suportadas

Esta seção lista as anotações suportadas para configurar vários comportamentos no sistema. Se você não definir uma anotação explicitamente, o sistema usará o valor padrão.

Anotação Tipo Descrição Valor padrão

protect.trident.netapp.io/data-mover-timeout-sec

string

O tempo máximo, em segundos, que uma operação de movimentação de dados pode permanecer parada.

"300"

protect.trident.netapp.io/kopia-content-cache-size-limit-mb

string

O limite máximo de tamanho (em megabytes) para o cache de conteúdo do Kopia.

"1000"

protect.trident.netapp.io/pvc-bind-timeout-sec

string

Tempo máximo (em segundos) para esperar que qualquer PersistentVolumeClaims (PVCs) recém-criado atinja a Bound fase antes que a operação falhe. Aplica-se a todos os tipos de CR de restauração (BackupRestore, BackupInplaceRestore, SnapshotRestore, SnapshotInplaceRestore). Use um valor maior se o seu backend de storage ou cluster frequentemente exigir mais tempo.

"1200" (20 minutos)