Esta página descreve como fazer uma cópia de segurança entre projetos no Google Kubernetes Engine (GKE) através do serviço Backup for GKE.
Vista geral
As cópias de segurança entre projetos permitem-lhe desassociar o ciclo de vida do projeto de cópia de segurança do projeto de cluster. Pode obter cópias de segurança com controlo de acesso separadamente num projeto diferente do projeto do cluster.
Limitações
Não pode migrar planos de cópia de segurança existentes para fazer cópias de segurança entre projetos.
Preços
Para ver detalhes dos preços, consulte o artigo Preços para cópias de segurança e restauros entre projetos.
Antes de começar
-
Antes de começar, certifique-se de que realizou as seguintes tarefas:
- Ative a API Google Kubernetes Engine. Ative a API Google Kubernetes Engine
- Se quiser usar a CLI gcloud para esta tarefa,
instale-a e, em seguida,
inicialize-a. Se instalou anteriormente a CLI gcloud, execute
gcloud components update
para obter a versão mais recente.
Ative a API Backup for GKE no projeto que contém o cluster do qual quer fazer uma cópia de segurança e no projeto onde quer armazenar a cópia de segurança. Para mais informações, consulte o artigo Ative a API Backup for GKE.
Ative o suplemento Backup for GKE no cluster do qual quer fazer uma cópia de segurança. Para mais informações, consulte o artigo Ative a cópia de segurança do GKE para um cluster.
Funções necessárias
Para receber as autorizações de que
precisa para criar e gerir uma cópia de segurança entre projetos,
peça ao seu administrador para lhe conceder a função de
administrador de cópias de segurança do Backup for GKE (roles/gkebackup.backupAdmin
), que é um subconjunto da função de administrador do Backup for GKE (roles/gkebackup.admin
)
do IAM no seu projeto.
Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.
Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.
Configure contas de serviço
Se necessário, crie contas de serviço por projeto para realizar operações nos seus projetos.
Usando a Google Cloud CLI, execute os seguintes comandos para configurar uma conta de serviço:
Crie uma conta de serviço executando o comando
gcloud beta services identity create
:gcloud beta services identity create \ --service=gkebackup.googleapis.com \ --project=CLUSTER_PROJECT_ID gcloud projects add-iam-policy-binding CLUSTER_PROJECT_ID \ --member=serviceAccount:service-CLUSTER_PROJECT_NUMBER@gcp-sa-gkebackup.iam.gserviceaccount.com \ --role=roles/gkebackup.serviceAgent \ gcloud beta services identity create \ --service=gkebackup.googleapis.com \ --project=BACKUP_PROJECT_ID gcloud projects add-iam-policy-binding BACKUP_PROJECT_ID \ --member=serviceAccount:service-BACKUP_PROJECT_NUMBER@gcp-sa-gkebackup.iam.gserviceaccount.com \ --role=roles/gkebackup.serviceAgent
Substitua o seguinte:
CLUSTER_PROJECT_ID
: o nome alfanumérico do projeto Google Cloud que quer criar. Por exemplo,cluster-project-id
.CLUSTER_PROJECT_NUMBER
: o identificador numérico exclusivo do seu projeto Google Cloud . Por exemplo,123456789012
.BACKUP_PROJECT_ID
: o nome alfanumérico do projetoGoogle Cloud onde a cópia de segurança vai ser armazenada. Por exemplo,backup-project-id
.BACKUP_PROJECT_NUMBER
: o identificador numérico exclusivo do projeto onde a cópia de segurança vai ser armazenada. Por exemplo,123456789012
.
Permita que a conta de serviço do projeto de cópia de segurança faça cópias de segurança no projeto do cluster executando o comando
gcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding CLUSTER_PROJECT_ID \ --member=serviceAccount:service-BACKUP_PROJECT_NUMBER@gcp-sa-gkebackup.iam.gserviceaccount.com \ --role=roles/gkebackup.serviceAgent
Substitua o seguinte:
CLUSTER_PROJECT_ID
: o nome alfanumérico do seu projeto do Google Cloud . Por exemplo,cluster-project-id
.BACKUP_PROJECT_NUMBER
: o identificador numérico exclusivo do projeto onde a cópia de segurança vai ser armazenada. Por exemplo,123456789012
.
Permita que o agente do projeto do cluster aceda a
gkebackup.googleapis.com
no projeto de cópia de segurança executando o comandogcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding BACKUP_PROJECT_ID \ --member serviceAccount:service-CLUSTER_PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com \ --role "roles/gkebackup.crossProjectServiceAgent"
Substitua o seguinte:
BACKUP_PROJECT_ID
: o nome alfanumérico do projetoGoogle Cloud onde a cópia de segurança vai ser armazenada. Por exemplo,backup-project-id
.CLUSTER_PROJECT_NUMBER
: o identificador numérico exclusivo do seu projeto Google Cloud . Por exemplo,123456789012
.
Crie um canal alternativo
Depois de configurar as contas de serviço, tem de criar um canal de cópia de segurança no mesmo projeto e região que o cluster do qual quer fazer uma cópia de segurança. Depois de criar um canal de cópia de segurança, pode fazer cópias de segurança de clusters no projeto e na região para o projeto de destino.
gcloud
Para criar um canal de cópia de segurança, execute o comando gcloud beta container backup-restore backup-channels create
através da CLI gcloud:
gcloud beta container backup-restore backup-channels create BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION \
--destination-project=projects/BACKUP_PROJECT_NUMBER
Substitua o seguinte:
BACKUP_CHANNEL_NAME
: o nome do canal alternativo que quer criar. Por exemplo,my-backup-channel-name
.CLUSTER_PROJECT_ID
: o nome alfanumérico do seu projeto onde o cluster está localizado.Google Cloud Por exemplo,cluster-project-id
.CLUSTER_LOCATION
: a região onde o cluster está localizado. Por exemplo,us-central1
.BACKUP_PROJECT_NUMBER
: o identificador numérico exclusivo do projeto onde a cópia de segurança vai ser armazenada.
Consola
Para criar um canal de backup na consola Google Cloud , siga as instruções seguintes:
Na Google Cloud consola, aceda à página Google Kubernetes Engine.
No menu Gestão de recursos, clique em Backup para GKE.
Clique no separador Canais de cópia de segurança.
No separador Canais alternativos, clique em Criar um canal alternativo.
No campo Projeto do cluster, certifique-se de que selecionou o projeto do cluster correto.
No menu Região, selecione a região onde os seus clusters estão localizados.
No campo Projeto de cópia de segurança, selecione o projeto para o qual quer permitir cópias de segurança.
No campo Nome do canal de cópia de segurança, introduza um nome para o canal de cópia de segurança.
Opcional: no campo Descrição do canal de backup, introduza uma breve descrição do canal de backup.
Clicar em Seguinte.
Valide as autorizações da conta de serviço nos projetos de cluster e de cópia de segurança.
Clique em Criar.
Crie um plano de cópia de segurança
Depois de criar um canal de apoio, tem de criar o plano de apoio. Se o cluster do qual está a fazer uma cópia de segurança residir num projeto diferente, o plano de cópia de segurança é automaticamente associado a um canal de cópia de segurança existente. O campo backup_channel
no plano de contingência mostra o canal de contingência ao qual o plano de contingência está associado.
Antes de começar
Antes de criar um plano de cópia de segurança, consulte o artigo Planeie um conjunto de cópias de segurança.
Crie um plano de cópia de segurança
Para criar um plano de cópia de segurança no projeto de cópia de segurança através da Google Cloud consola, use as seguintes instruções:
Na Google Cloud consola, aceda à página Google Kubernetes Engine.
No menu Gestão de recursos, clique em Backup para GKE.
Abra o projeto de cópia de segurança no qual quer criar o plano de cópia de segurança.
Clique em Criar um plano de cópia de segurança.
Selecione a caixa de verificação Configurar cópias de segurança entre projetos.
No campo Projeto do cluster, escolha o projeto que contém o cluster de origem.
No menu Cluster, selecione a região do cluster.
No campo Nome do plano de yedekleme, introduza um nome para o plano de yedekleme.
No campo Projeto de cópia de segurança, introduza o nome do projeto de cópia de segurança no qual quer armazenar as suas cópias de segurança.
No campo Região, introduza a localização onde as suas cópias de segurança vão ser armazenadas. Se não for encontrado nenhum canal alternativo, clique em Criar canal alternativo, siga as instruções para criar um canal alternativo e clique em Criar.
Clique em Ver detalhes do canal de apoio.
Clique em Validar autorizações.
Conclua os restantes passos conforme descrito no artigo Crie um plano de contingência.
Clique em Criar plano.
Veja um canal alternativo
Use as instruções nas secções seguintes para ver os canais alternativos.
Veja todos os canais de cópia de segurança num projeto e numa região
gcloud
Para ver todos os canais de cópia de segurança num projeto e numa região, execute o comando gcloud beta container backup-restore backup-channels list
através da CLI do Google Cloud:
gcloud beta container backup-restore backup-channels list \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Substitua o seguinte:
CLUSTER_PROJECT_ID
: o nome alfanumérico do seu projeto onde o cluster está localizado.Google Cloud Por exemplo,cluster-project-id
.CLUSTER_LOCATION
: a região onde o cluster está localizado. Por exemplo,us-central1
.
Consola
Para ver todos os canais de backup num projeto e numa região na Google Cloud consola, siga estas instruções:
Na Google Cloud consola do projeto do cluster, aceda à página Google Kubernetes Engine.
No menu Gestão de recursos, clique em Backup para GKE.
Clique no separador Canais de cópia de segurança.
Use o menu de projeto e região para filtrar a lista de canais de backup.
A lista filtrada apresenta todos os canais de cópia de segurança no projeto e na região selecionados.
Veja os detalhes de um canal alternativo
gcloud
Para ver os detalhes de um canal de cópia de segurança, execute o comando gcloud beta container backup-restore backup-channels describe
usando a CLI do Google Cloud:
gcloud beta container backup-restore backup-channels describe BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Substitua o seguinte:
BACKUP_CHANNEL_NAME
: o nome do canal alternativo que quer ver. Por exemplo,my-backup-channel-name
.CLUSTER_PROJECT_ID
: o nome alfanumérico do seu projeto onde o cluster está localizado.Google Cloud Por exemplo,cluster-project-id
.CLUSTER_LOCATION
: a região onde o cluster está localizado. Por exemplo,us-central1
.
Consola
Para ver os detalhes de um canal alternativo na Google Cloud consola, siga as instruções abaixo:
Na Google Cloud consola do projeto do cluster, aceda à página Google Kubernetes Engine.
No menu Gestão de recursos, clique em Backup para GKE.
Clique no separador Canais de cópia de segurança.
Use o menu de projeto e região para filtrar a lista de canais de backup.
Clique no nome do canal de backup que quer ver. É aberta uma página com os detalhes desse canal de backup.
Veja os planos de cópia de segurança associados a um canal de cópia de segurança
Para ver os planos de cópia de segurança associados a um canal de cópia de segurança, execute o comando gcloud beta container backup-restore backup-plan-bindings list
com a CLI Google Cloud:
gcloud beta container backup-restore backup-plan-bindings list \
--backup-channel=BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Substitua o seguinte:
BACKUP_CHANNEL_NAME
: o nome do canal alternativo que quer ver. Por exemplo,my-backup-channel-name
.CLUSTER_PROJECT_ID
: o nome alfanumérico do seu projeto onde o cluster está localizado. Google Cloud Por exemplo,cluster-project-id
.CLUSTER_LOCATION
: a região onde o cluster está localizado. Por exemplo,us-central1
.
Faça a gestão dos canais alternativos
As secções seguintes descrevem como gerir os canais de reserva depois de os criar.
Atualize um canal alternativo
Siga as instruções abaixo para atualizar um canal alternativo. Tenha em atenção que só pode modificar a descrição de um canal de apoio existente. Não é possível modificar todos os outros campos.
gcloud
Para atualizar a descrição de um canal de cópia de segurança, execute o comando gcloud beta container backup-restore backup-channels update
usando a CLI Google Cloud:
gcloud beta container backup-restore backup-channels update BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION \
--description=DESCRIPTION
Substitua o seguinte:
BACKUP_CHANNEL_NAME
: o nome do canal alternativo que quer atualizar. Por exemplo,my-backup-channel-name
.CLUSTER_PROJECT_ID
: o nome alfanumérico do seu projeto onde o cluster está localizado.Google Cloud Por exemplo,cluster-project-id
.CLUSTER_LOCATION
: a região onde o cluster está localizado. Por exemplo,us-central1
.DESCRIPTION
: a descrição que quer atualizar.
Consola
Para atualizar um canal de backup na Google Cloud consola, siga as seguintes instruções:
Na Google Cloud consola do projeto do cluster, aceda à página Google Kubernetes Engine.
No menu Gestão de recursos, clique em Backup para GKE.
Clique no separador Canais de cópia de segurança.
Na página Canais de backup, clique no canal de backup que quer atualizar. Tenha em atenção que só pode atualizar a descrição de um canal de cópia de segurança existente. Não é possível modificar todos os outros campos.
É apresentada a página Detalhes do canal de backup.
Clique em Validar autorizações.
Nas secções Detalhes do canal de backup, clique no ícone
Editar descrição.É apresentada a caixa de diálogo Editar descrição.
No campo Descrição, introduza a descrição atualizada e, de seguida, clique em Guardar alterações.
Elimine um canal alternativo
Só pode eliminar um canal de cópia de segurança se não contiver planos de cópia de segurança ativos. Se tiver planos de cópia de segurança ativos associados, tem de os desativar ou eliminar primeiro antes de poder eliminar o canal de cópia de segurança.
gcloud
Para eliminar um canal de backup, execute o comando gcloud beta container backup-restore backup-channels delete
usando a CLI do Google Cloud:
gcloud beta container backup-restore backup-channels delete BACKUP_CHANNEL_NAME \
--project=CLUSTER_PROJECT_ID \
--location=CLUSTER_LOCATION
Substitua o seguinte:
BACKUP_CHANNEL_NAME
: o nome do canal alternativo que quer eliminar. Por exemplo,my-backup-channel-name
.CLUSTER_PROJECT_ID
: o nome alfanumérico do seu projeto onde o cluster está localizado.Google Cloud Por exemplo,cluster-project-id
.CLUSTER_LOCATION
: a região onde o cluster está localizado. Por exemplo,us-central1
.
Consola
Para eliminar um canal de cópia de segurança na Google Cloud consola, siga as instruções abaixo:
Na Google Cloud consola do projeto do cluster, aceda à página Google Kubernetes Engine.
No menu Gestão de recursos, clique em Backup para GKE.
Clique no separador Canais de cópia de segurança.
Na página Canais de backup, clique no canal de backup que quer eliminar.
Clique em Eliminar canal.
É apresentada uma caixa de diálogo a pedir-lhe que confirme se quer eliminar o canal de cópia de segurança.
No campo Nome do canal de cópia de segurança, introduza o nome do canal de cópia de segurança para confirmar a eliminação.
Clique em Confirm.
O que se segue?
Saiba como fazer uma restauro entre projetos.
Saiba mais sobre como planear um conjunto de restauros.