Esta página descreve como criar, editar e eliminar um plano de restauro no Google Distributed Cloud (GDC) air-gapped.
Os planos de restauro são cenários de restauro pré-configurados para uma linha correspondente de cópias de segurança. Os planos de restauro podem atribuir autorizações para os utilizadores com a função de criador de cópias de segurança usarem estas configurações.
Os criadores de cópias de segurança podem restaurar rapidamente e de forma independente uma cópia de segurança quando ocorre um incidente. Por exemplo, os dados persistentes podem ser danificados por uma atualização de software numa aplicação implementada, o que coloca o espaço de nomes da aplicação num estado inválido, que requer um restauro.
Durante o restauro, pode aplicar opcionalmente um conjunto de regras de substituição que são usadas para corresponder a um conjunto de recursos e substituir o valor atual de um atributo nesses recursos por um novo valor. Por exemplo, uma regra de substituição pode alterar o espaço de nomes dos recursos com cópia de segurança durante o restauro para migrar uma carga de trabalho de um espaço de nomes para outro.
Antes de começar
Para criar um plano de restauro, precisa do seguinte:
A função de identidade e acesso necessária:
- Administrador de cópias de segurança de clusters de utilizadores: gere recursos de cópias de segurança, como planos de cópias de segurança e restauro, em clusters de utilizadores. Peça ao administrador de IAM da organização para lhe atribuir a função de administrador de cópias de segurança de clusters de utilizadores (
user-cluster-backup-admin). Para mais informações, consulte o artigo Definições de funções. - Se for um operador de aplicações, peça ao administrador com privilégios de administrador de cópias de segurança de clusters de utilizadores para criar um plano de restauro para si.
- Administrador de cópias de segurança de clusters de utilizadores: gere recursos de cópias de segurança, como planos de cópias de segurança e restauro, em clusters de utilizadores. Peça ao administrador de IAM da organização para lhe atribuir a função de administrador de cópias de segurança de clusters de utilizadores (
Crie um plano de restauro
Crie um plano de restauro através da consola do GDC ou da API.
Consola
- Inicie sessão na consola do GDC.
- No menu de navegação, clique em Cópia de segurança para clusters.
- Clique em Criar plano de restauro.
- Na secção Informações básicas do plano de restauro, conclua os seguintes passos e clique em
Seguinte:
- Em Nome do plano de restauro, introduza o nome do plano de restauro.
- (Opcional) Em Descrição do plano de restauro , introduza uma descrição para o plano de restauro.
- Na lista Cluster de origem, escolha o cluster de origem para o plano de restauro.
- Na lista Projeto, escolha o projeto para o plano de restauro.
- Selecione o projeto que está anexado ao cluster de origem.
- No campo Plano de cópias de segurança, escolha um plano de cópias de segurança para um cluster existente que corresponda às cópias de segurança que quer restaurar.
- No campo Cluster de destino, escolha o cluster de destino onde quer restaurar a cópia de segurança.
- Na secção Escolha recursos com espaço de nomes, conclua os seguintes passos
e clique em Seguinte:
- Escolha os espaços de nomes a restaurar:
- Clique em Recursos com espaço de nomes selecionados para especificar os espaços de nomes na cópia de segurança a restaurar.
- Clique em Editar espaços de nomes do cluster e, de seguida, em Adicionar espaço de nomes do cluster para introduzir um espaço de nomes.
- Clique em Aplicações protegidas selecionadas para adicionar recursos especificando o espaço de nomes e o nome da aplicação.
- Clique em Recursos com espaço de nomes selecionados para especificar os espaços de nomes na cópia de segurança a restaurar.
- Escolha como processar conflitos:
- Clique em Falhar em caso de conflito (não destrutivo) para falhar o restauro se algum espaço de nomes segmentado para restauro a partir de uma cópia de segurança já existir no cluster de destino.
- Clique em Reverter (destrutivo) para eliminar os espaços de nomes existentes antes de restaurar os novos espaços de nomes se algum espaço de nomes segmentado para restauro a partir de uma cópia de segurança já existir no cluster de destino.
- Escolha como restaurar os dados de volume:
- Clique em Criar novos volumes e restaurar dados de volume a partir da cópia de segurança para restaurar os dados de volume a partir da cópia de segurança num novo disco persistente.
- Clique em Não restaurar dados de volume para criar um novo
volume persistente. Se o cluster de destino contiver um volume persistente não associado que satisfaça os requisitos de
PersistentVolumeClaim, o cluster é associado ao volume. - Clique em Reutilizar volumes existentes que contêm os seus dados para não restaurar os dados de cópia de segurança de volume. Todos os
PersistentVolumeClaimsestão associados a volumes que referenciam discos persistentes existentes.
- Escolha os espaços de nomes a restaurar:
- Opcional: na secção Escolha recursos com âmbito de cluster, conclua
os seguintes passos e clique em Seguinte:
- Clique em Não restaurar recursos com âmbito de cluster para deixar a versão existente do recurso intacta.
- Clique em Restaurar recursos com âmbito de cluster por GroupKind para restaurar estes recursos.
- Clique em Editar GroupKinds para adicionar mais recursos com âmbito de cluster. Introduza o Grupo de API e o Tipo de objeto para corresponder a recursos nesses tipos.
- Clique em Preservar recursos existentes para criar recursos se não existirem no cluster de destino.
- Clique em Substituir recursos no cluster de destino para eliminar um recurso se já existir no cluster de destino e restaurar a cópia a partir da cópia de segurança.
- Opcional: na secção Adicione regras de substituição, conclua os
seguintes passos e clique em Seguinte:
- Clique em Adicionar nova regra.
- Na caixa Espaços de nomes do cluster, escreva uma lista de espaços de nomes para corresponder a recursos nesses espaços de nomes.
- Para adicionar GroupKinds, clique em Adicionar GroupKind e introduza o Grupo de API e o Tipo de objeto para corresponder a recursos nesses tipos.
- No campo Caminho JSON, escreva o caminho JSON que identifica os campos nos recursos correspondentes para os quais a substituição se aplica.
- No campo Padrão de valor original, escreva o padrão original para comparar com o novo valor.
- No campo Novo valor, escreva o novo valor que substitui o valor atual dos atributos correspondentes.
- Clique em Guardar.
- Clique em Criar.
API
Crie um recurso personalizado ClusterRestorePlan para planear restauros a partir de um ClusterBackupPlan existente. O ClusterRestorePlan atribui o conjunto exato de recursos e espaços de nomes que um criador de cópias de segurança tem autorização para restaurar. Segue-se um exemplo de um ClusterRestorePlan:
apiVersion: backup.gdc.goog/v1
kind: ClusterRestorePlan
metadata:
name: RESTORE_PLAN_NAME
namespace: PROJECT_NAME
spec:
targetCluster:
targetClusterType: UserCluster
targetClusterName:
kind: "Cluster"
name: CLUSTER_NAME
description: RESTORE_PLAN_DESCRIPTION
clusterBackupPlanName: CLUSTER_BACKUP_PLAN_NAME
clusterRestoreConfig:
volumeDataRestorePolicy: RestoreVolumeDataFromBackup
clusterResourceConflictPolicy: UseBackupVersion
namespacedResourceRestoreMode: DeleteAndRestore
namespacedResourceRestoreScope:
selectedNamespaces:
namespaces: [NAME_SPACE]
clusterBackupRepositoryRef: CLUSTER_BACKUP_REPOSITORY
substitutionRules:
- newValue: NEW_CONFIG_VALUE
originValuePattern: VALUE_PATTERN
target:
groupKinds:
jsonPath: '{.metadata.name}'
namespaces:
- NAME_SPACE
- newValue: NEW_CONFIG_VALUE
originValuePattern: VALUE_PATTERN
target:
groupKinds:
jsonPath: '{.metadata.name}'
namespaces:
- NAME_SPACE
Substitua o seguinte:
- Substitua
RESTORE_PLAN_NAMEpelo nome do plano de restauro. - Substitua
PROJECT_NAMEpelo nome do projeto do GDC. - Substitua
CLUSTER_NAMEpelo nome do cluster.
Este exemplo usa os seguintes valores:
Valor |
Atributo |
Descrição |
|---|---|---|
targetClusterName |
Nome do cluster de origem num projeto ao qual este plano está associado. | |
description |
Uma descrição fornecida pelo utilizador para a finalidade do ClusterRestorePlan. |
|
clusterBackupPlanName |
O nome do ClusterBackupPlan a restaurar. O
ClusterBackupPlan tem de existir no mesmo espaço de nomes que o
ClusterRestorePlan. |
|
clusterRestoreConfig |
Configuração para o processo de restauro. | |
volumeDataRestorePolicy |
Especifique uma das seguintes opções:
|
|
clusterResourceConflictPolicy |
Especifica o comportamento para o tratamento de conflitos de recursos de cluster, como se o recurso já existir no cluster. Especifique uma das seguintes opções:
|
|
namespacedResourceRestoreMode |
Trata a situação em que os conjuntos de
recursos com espaço de nomes que estão a ser restaurados já existem no cluster de destino. Especifique uma das seguintes opções:
|
|
namespacedResourceRestoreScope |
Especifica quais Namespaces ou
ProtectedApplications têm autorização para restauro.
|
|
clusterBackupRepositoryRef |
Especifica o repositório para armazenar os Restore
recursos. Este repositório pode ser diferente do repositório de onde
a cópia de segurança é feita. O repositório tem de ser um ReadWrite
repositório no cluster. |
|
substitutionRules |
Regras para substituir valores nos recursos do Kubernetes com cópia de segurança
durante o restauro. Uma lista vazia significa que não ocorre nenhuma substituição.
As regras de substituição são aplicadas sequencialmente pela ordem definida.
Esta ordem é importante, uma vez que as alterações feitas por uma regra podem afetar a lógica de correspondência da regra subsequente. Cada regra especifica um target, um originValuePattern para corresponder (VALUE_PATTERN) e um newValue (NEW_CONFIG_VALUE) para substituir. O target pode incluir namespaces para definir o âmbito da regra (NAME_SPACE). |
Depois de criar um ClusterRestorePlan, os utilizadores com a função de criador de cópias de segurança podem restaurar manualmente as cópias de segurança.
Veja um plano de restauro
Veja um plano de restauro através da consola do GDC:
- Inicie sessão na consola do GDC.
- No menu de navegação, clique em Cópia de segurança para clusters.
- Clique em Selecionar projeto para selecionar uma organização ou um projeto, consoante a sua função:
- Administrador de cópias de segurança de clusters de utilizadores: selecione uma organização para ver todos os planos de restauro numa organização ou selecione um projeto para ver todos os planos de restauro num projeto.
- Criador de cópias de segurança: selecione um projeto para ver todos os planos de restauro num projeto.
- Clique no separador Planos de restauro.
- Clique num plano de restauro na lista para ver os respetivos detalhes.
Edite um plano de restauro
Se o repositório de cópias de segurança associado ao plano de restauro que quer editar tiver um valor no campo Cluster associado(só de leitura) quando o plano de restauro é criado, este é criado duas vezes. O plano de restauro é propagado para os clusters de leitura/escrita e só de leitura.
Quando edita o plano de restauro pertencente a um repositório de cópias de segurança que tem clusters de leitura/escrita e só de leitura definidos, tem de editar o plano de restauro que tem o TARGET CLUSTER definido para o cluster de leitura/escrita.
Edite um plano de restauro através da consola do GDC:
- Inicie sessão na consola do GDC.
- No menu de navegação, clique em Cópia de segurança para clusters.
- Clique em Selecionar projeto para selecionar uma organização ou um projeto, consoante a sua função:
- Administrador de cópias de segurança de clusters de utilizadores: selecione uma organização para ver todos os planos de restauro numa organização ou selecione um projeto para ver todos os planos de restauro num projeto.
- Criador de cópias de segurança: selecione um projeto para ver todos os planos de restauro num projeto.
- Clique no separador Planos de restauro.
- Clique no nome do plano de restauro que quer editar.
- Clique no separador Configuração do plano para ver os campos que podem ser modificados.
Clique no ícone de edição edit junto a Recursos com espaço de nomes para editar esse recurso:
Na secção Escolha recursos com espaço de nomes, selecione os recursos com espaço de nomes na cópia de segurança que quer restaurar:
Selecione Recursos com espaço de nomes selecionados para restaurar recursos dos espaços de nomes selecionados na cópia de segurança:
- Selecione Editar espaços de nomes do cluster para selecionar o espaço de nomes do cluster.
- No campo Espaço de nomes do cluster 1, introduza o nome do espaço de nomes.
- Clique no botão Guardar.
Selecione Aplicações protegidas selecionadas para restaurar recursos das aplicações protegidas selecionadas na cópia de segurança:
- Selecione Editar aplicações protegidas para selecionar o espaço de nomes e a aplicação protegida.
- No campo Espaço de nomes 1, introduza o nome do espaço de nomes.
- No campo Aplicação protegida 1, introduza o nome da aplicação protegida.
- Clique no botão Guardar.
Clique no ícone de edição edit junto a Recursos com âmbito de cluster para editar esse recurso:
Opcional: na secção Escolha recursos com âmbito de cluster, selecione os recursos com âmbito de cluster a restaurar especificando os grupos de API e os
GroupKinds, e decida como os conflitos têm de ser resolvidos:- Selecione Não restaurar recursos com âmbito de cluster para remover recursos com âmbito de cluster do processo de restauro.
Selecione Restaurar recursos com âmbito de cluster por GroupKind para restaurar os recursos pelo
GroupKindespecificado:Para especificar um
GroupKind, clique no botão Editar GroupKind.Clique no botão Adicionar GroupKind.
Introduza o nome do
GroupKind.Clique no botão Guardar.
Na secção Tratamento de conflitos, determine a ação a realizar se o recurso já existir no cluster de destino:
- Selecione Preservar recursos existentes para criar recursos se ainda não existirem no cluster.
- Selecione Substituir recursos existentes para eliminar todos os recursos existentes encontrados e substituir este recurso pelo recurso restaurado.
Clique no botão Guardar para confirmar as alterações.
Na secção Regras de substituição, clique no botão Adicionar nova regra para adicionar uma nova regra de substituição:
- No campo Espaços de nomes do cluster, introduza o nome do espaço de nomes do cluster para o qual aplicar esta regra de substituição.
- Clique no botão Adicionar GroupKind para aplicar esta regra a um determinado objeto
GroupKind. - No campo Caminho JSON, introduza o caminho para o atributo do recurso que quer substituir, no formato JSON.
- No campo Padrão de valor original, introduza uma expressão regular que corresponda ao valor original do atributo.
- No campo Novo valor, introduza o valor que é substituído pelo campo de destino. Se este campo estiver em branco, o campo de destino é removido do recurso.
- Clique no botão Guardar para concluir a criação da nova regra de substituição.
Na secção Regras de substituição, clique no ícone de edição edit para editar uma regra de substituição existente.
Na secção Regras de substituição, clique no ícone de eliminação delete para eliminar uma regra de substituição existente.
Elimine um plano de restauro
Os RestorePlans podem ser eliminados através da consola do GDC ou eliminando o recurso diretamente do servidor da API Kubernetes. Esta ação limpa todos os artefactos RestorePlan associados do armazenamento de objetos.
Consola
- Inicie sessão na consola do GDC.
- No menu de navegação, clique em Cópia de segurança para clusters.
- Clique em Selecionar projeto para selecionar uma organização ou um projeto, consoante a sua função:
- Administrador de cópias de segurança de clusters de utilizadores: selecione uma organização para ver todos os planos de restauro numa organização ou selecione um projeto para ver todos os planos de restauro num projeto.
- Criador de cópias de segurança: selecione um projeto para ver todos os planos de restauro num projeto.
- Clique no separador Planos de restauro.
- Clique no nome do plano de restauro que quer eliminar.
- Clique no botão delete Eliminar.
- Introduza o nome do plano de restauro no campo.
- Clique no botão Eliminar para confirmar a eliminação deste plano de restauro.
API
Elimine o recurso do plano de restauro:
kubectl delete clusterRestoreplan RESTORE_PLAN_NAME -n NAMESPACE
Substitua o seguinte:
RESTORE_PLAN_NAME: o nome do plano de restauro.NAMESPACE: o espaço de nomes que contém o plano de restauro.