Nesta página, descrevemos como criar uma restauração refinada para um backup no Google Distributed Cloud (GDC) isolado por air-gap.
O recurso de restauração detalhada permite restaurar um subconjunto de recursos de um backup. Esse recurso oferece a flexibilidade de refinar o escopo de restauração definido no plano de restauração.
Antes de começar
Para criar uma restauração detalhada de um backup, você precisa ter o seguinte:
- Um backup existente. Para mais informações, consulte Planejar um conjunto de backups.
O papel necessário de identidade e acesso:
- Para usuários do PA:
- Administrador de backup de cluster de usuário: gerencia recursos de backup, como 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 do cluster de usuário (
user-cluster-backup-admin
).
- Administrador de backup de cluster de usuário: gerencia recursos de backup, como 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 do cluster de usuário (
- Para usuários do AO:
- Criador de backup: cria backups e restaurações manuais. Peça ao administrador do IAM do projeto para conceder a você o papel de criador de backup (
backup-creator
).
- Criador de backup: cria backups e restaurações manuais. Peça ao administrador do IAM do projeto para conceder a você o papel de criador de backup (
- Para mais informações, consulte Definições de papéis.
- Para usuários do PA:
Criar uma restauração refinada
Para criar uma restauração com um filtro detalhado, siga estas etapas:
Crie os filtros de restauração refinados. É possível usar o exemplo YAML a seguir.
inclusionFilters: - groupKind: group: foo.io kind: Bar name: name1 namespace: ns1 exclusionFilters: - labels: key1: value1 key2: value2
Crie um recurso personalizado
ManualRestoreRequest
para planejar restaurações de umBackups
atual. Confira um exemplo deManualRestoreRequest
:apiVersion: backup.gdc.goog/v1 kind: ManualRestoreRequest metadata: name: RESTORE_NAME namespace: PROJECT_NAMESPACE spec: restoreName: RESTORE_NAME restorePlanName: RESTORE_PLAN backupName: BACKUP_NAME filter: FINE_GRAINED_RESTORE_FILTERS
Substitua:
RESTORE_NAME
: o nome da restauração que você quer criar.PROJECT_NAMESPACE
: o nome do seu projeto do GDC.RESTORE_PLAN
: o nome do plano de restauração de origem da restauração.BACKUP_NAME
: o backup a ser restaurado. Ele precisa estar associado ao plano de backup a que o plano de restauração se refere. Para mais informações, consulte Planejar um conjunto de restaurações.FINE_GRAINED_RESTORE_FILTER
: os filtros de restauração refinados. Para exemplos, consulte Exemplos de filtros de restauração refinados.
Exemplos de filtros de restauração refinados
Os exemplos a seguir são fornecidos no formato YAML usado pela Google Cloud CLI.
Restaurar um único recurso com escopo de namespace
Este exemplo restaura um recurso ConfigMap
com o nome nginx-vars
no
namespace webserver
, usando a restauração detalhada inclusionFilters
para selecionar
o recurso. Se quiser escolher recursos no grupo principal, use uma string vazia no campo group
.
filter:
inclusionFilters:
- groupKind:
kind: ConfigMap
name: nginx-vars
namespace: webserver
Excluir um único recurso com escopo de cluster
Este exemplo restaura todos os recursos disponíveis, exceto um recurso groupKind
com o nome sc1
, usando a restauração detalhada
exclusionFilters
para excluir o recurso.
filter:
exclusionFilters:
- groupKind:
group: storage.k8s.io
kind: StorageClass
name: sc1
Restaurar recursos com dois rótulos
Este exemplo restaura recursos que têm os rótulos key1:value1
e
key2:value2
, usando a restauração detalhada inclusionFilters
para selecionar os
recursos.
filter:
inclusionFilters:
- labels:
key1: value1
key2: value2
Excluir todos os recursos de alguns GroupKinds
Este exemplo restaura todos os recursos disponíveis, exceto os recursos groupKind
de ConfigMap
e storage.k8s.io/StorageClass
, usando a restauração detalhada exclusionFilters
para excluir esses dois GroupKinds.
filter:
exclusionFilters:
- groupKind:
kind: ConfigMap
- groupKind:
group: storage.k8s.io
kind: StorageClass