A Cópia de segurança do GKE é um serviço para fazer cópias de segurança e restaurar cargas de trabalho em clusters do GKE. Tem dois componentes:
- Uma API Google Cloud que funciona como o plano de controlo do serviço.
- Um suplemento do GKE (o agente da Cópia de segurança do GKE) que tem de ser ativado em cada cluster para o qual quer realizar operações de cópia de segurança e restauro.
As cópias de segurança das suas cargas de trabalho podem ser úteis para a recuperação de desastres, pipelines de CI/CD, clonagem de cargas de trabalho ou cenários de atualização. A proteção das suas cargas de trabalho pode ajudar a alcançar objetivos de pontos de recuperação essenciais para a empresa.
Introdução
Depois de ativado, o serviço Backup for GKE integra-se com a IU do GKE, a CLI gcloud e as APIs REST, oferecendo fluxos de trabalho consistentes para desenvolvimento e operações. São captadas duas formas de dados numa cópia de segurança:
- Cópia de segurança da configuração: um conjunto de manifestos de recursos do Kubernetes extraídos do servidor da API do cluster em fase de cópia de segurança, que captam o estado do cluster.
- Cópias de segurança de volumes: um conjunto de cópias de segurança de volumes que correspondem aos recursos
PersistentVolumeClaimencontrados na cópia de segurança da configuração.
Pode escolher as cargas de trabalho das quais quer fazer uma cópia de segurança ou que quer restaurar, ou pode fazer uma cópia de segurança ou restaurar todas as cargas de trabalho. Pode fazer uma cópia de segurança das cargas de trabalho de um cluster e restaurá-las noutro cluster. Pode agendar a execução automática das cópias de segurança para poder responder rapidamente e recuperar as suas cargas de trabalho em caso de incidente.
A Cópia de segurança do GKE suporta a criação de cópias de segurança ou o restauro de um cluster em vários projetos. Também pode criar planos de cópia de segurança para um cluster do GKE no mesmo projeto que o cluster. Da mesma forma, pode criar planos de restauro para um cluster do GKE no mesmo projeto que o cluster.
A restauração de uma carga de trabalho envolve a recriação de recursos do Kubernetes no cluster de destino. Após a criação dos recursos, o restauro das capacidades da carga de trabalho está sujeito ao processo de conciliação do cluster (por exemplo, os pods são agendados para os nós e, em seguida, iniciados nesses nós). Durante a restauração, pode aplicar opcionalmente regras de transformação, que são usadas para fazer corresponder um conjunto de recursos e substituir o valor atual de um atributo nesses recursos por um novo valor.
A combinação da cópia de segurança e do restauro seletivos com substituições foi concebida para ativar e suportar muitos cenários de cópia de segurança e restauro diferentes, por exemplo:
- Faça uma cópia de segurança de todas as cargas de trabalho num cluster e restaure-as num cluster separado para recuperação de desastres.
- Criar uma cópia de segurança de todas as cargas de trabalho, mas reverter seletivamente uma única carga de trabalho no cluster de origem.
- Fazer uma cópia de segurança dos recursos num espaço de nomes e cloná-los noutro espaço de nomes.
- Migrar ou clonar uma carga de trabalho de um cluster para outro.
- Alterar os parâmetros de armazenamento de uma carga de trabalho (por exemplo, mover a carga de trabalho de um disco persistente zonal para um disco persistente regional).
Tem de criar um cluster de destino com o serviço Backup for GKE ativado antes de poder fazer uma cópia de segurança ou restaurar cargas de trabalho.
Arquitetura
A Cópia de segurança do GKE é composta por dois componentes principais:
- Um serviço que é executado no Google Cloud e suporta uma API REST baseada em recursos. Este serviço funciona como o plano de controlo da Cópia de segurança do GKE. O serviço inclui Google Cloud elementos da IU da consola que interagem com esta API.
- Um agente que é executado em todos os clusters onde são feitas cópias de segurança ou restauros. O agente executa operações de cópia de segurança e restauro nestes clusters através da interação com a API Backup for GKE.
O diagrama seguinte mostra a relação entre os diferentes componentes do Backup for GKE:
Vista geral do serviço
O serviço Backup for GKE fornece um ponto final da API para os clientes interagirem com. A API Backup for GKE, como a maioria das Google Cloud APIs, opera em recursos na nuvem específicos da aplicação numa hierarquia de recursos. A Cópia de segurança para GKE gere uma base de dados destes recursos específicos da aplicação e os métodos da API de serviço correspondem principalmente a operações de criação, leitura, atualização ou eliminação destes recursos.
Existem dois tipos de recursos ativos principais no modelo de recursos da nuvem:
Backup: representa a cópia de segurança de uma parte específica de um cluster do GKE num momento específico. A criação de umBackuprecurso inicia o processo de cópia de segurança (armazenando, eventualmente, cópias dos recursos do Kubernetes de destino e criando instantâneos dos volumes de disco persistente de destino). A eliminação de umBackupelimina estes artefactos armazenados.Restore: representa o restauro de uma parte selecionada de umBackupespecífico num cluster do GKE. A criação de umRestorerecurso inicia o processo de restauro. A eliminação de umRestorenão tem efeitos secundários e remove o registo da restauração da base de dados.
A Cópia de segurança do GKE também inclui dois tipos de recursos de configuração e controlo:
BackupPlan: um recurso principal para recursosBackupque representam uma cadeia de cópias de segurança. Este recurso contém uma configuração de cópia de segurança incluindo o cluster de origem, a seleção das cargas de trabalho das quais fazer uma cópia de segurança e a região na qual os artefactosBackupproduzidos ao abrigo deste plano são armazenados. Esta região pode ser qualquer uma das localizações suportadas. Para cópias de segurança armazenadas numa região diferente da região do cluster do GKE, aplicam-se custos de transferência de dados de rede de saída. Para mais informações, consulte os preços do Backup for GKE.RestorePlan: fornece um modelo de restauro reutilizável. Este recurso contém uma configuração de restauro, incluindo o cluster de destino no qual quer restaurar a cópia de segurança, o plano de cópia de segurança de origem, o âmbito do restauro, o processamento de conflitos e as regras de transformação. Antes de criar um plano de restauro, tem de criar o cluster de destino. A cópia de segurança do GKE não cria o cluster de destino durante um restauro.
Vista geral do agente
O agente da Cópia de segurança do GKE é implementado e executado em cada cluster do GKE que configurar para ter uma cópia de segurança através do serviço Cópia de segurança do GKE. O agente é responsável por executar as atividades de cópia de segurança e restauro, por exemplo:
Cópia de segurança:
- Orquestrar o processo de cópia de segurança.
- Obter recursos do servidor da API Kubernetes, serializá-los num arquivo e armazenar o arquivo.
- A criar cópias de segurança dos volumes subjacentes associados a
PersistentVolumeClaims.
Restaurar:
- Orquestrar o processo de restauro.
- Obter o arquivo de recursos do Kubernetes do armazenamento, extrair os recursos selecionados, aplicar as modificações adequadas a estes recursos e criá-los no cluster de destino.
- Criar volumes e associá-los à configuração do Kubernetes do cluster de destino.
Os administradores não interagem com o agente, uma vez que o agente é controlado por recursos personalizados do Kubernetes (BackupJob e RestoreJob) criados automaticamente no cluster pelo serviço Backup for GKE em resposta à criação de recursos de nuvem de cópia de segurança e restauro. No entanto, os administradores podem influenciar a orquestração das cópias de segurança criando recursos ProtectedApplication do Kubernetes opcionais no cluster. Estes recursos ProtectedApplicationsão exclusivos da Cópia de segurança do GKE e oferecem opções mais detalhadas para definir o âmbito da cópia de segurança e do restauro.
Consulte o artigo Descontinuação da pré-visualização do agente para ver informações sobre as diferenças entre as versões de pré-visualização e de disponibilidade geral do agente.
Redundância zonal
A secção seguinte descreve a redundância zonal para a Cópia de segurança do GKE.
- As cópias de segurança dos artefactos do GKE são replicadas em várias zonas numa região, o que garante a continuidade da operação, mesmo que uma zona sofra uma interrupção.
- A cópia de segurança do GKE como serviço é replicada em, pelo menos, três zonas em cada região, o que oferece redundância e resiliência adicionais.
- A cópia de segurança do GKE não toma decisões ao nível da zona quando armazena dados. A Cópia de segurança do GKE baseia-se nas instalações regionais subjacentes para processar a replicação ao nível da zona.
O que não é incluído na cópia de segurança
Só pode fazer cópias de segurança de recursos do Kubernetes e volumes persistentes subjacentes com o Backup for GKE. A Cópia de segurança do GKE não faz cópias de segurança do seguinte:
- Informações de configuração do cluster do GKE, como a configuração do nó, os conjuntos de nós, o tamanho inicial do cluster ou as funcionalidades ativadas.
- Imagens de contentores referenciadas por uma cópia de segurança. Apenas é feita uma cópia de segurança dos recursos do Kubernetes que descrevem a carga de trabalho e fazem referência às imagens de contentores. Se uma imagem referenciada por um manifesto de carga de trabalho numa cópia de segurança for removida do respetivo repositório de imagens, uma restauração subsequente dessa configuração não restaura a carga de trabalho com êxito.
- Informações de configuração ou estado dos serviços fora do cluster, como o Cloud SQL ou os balanceadores de carga externos.
- Apenas são feitas cópias de segurança de volumes do tipo Persistent Disk. Outros tipos de volumes, como o Filestore NFS ou o Google Cloud NetApp Volumes, não têm cópias de segurança. No entanto, pode usar a Cópia de segurança do GKE para fornecer soluções para cargas de trabalho suportadas por volumes do Filestore. Para mais informações, consulte o artigo Faça a gestão de volumes do Filestore com a Cópia de segurança do GKE.
O que se segue?
- Saiba como instalar a Cópia de segurança do GKE.
- Saiba como criar uma cópia de segurança manual.
- Saiba como planear um conjunto de cópias de segurança.
- Saiba como definir uma lógica de cópia de segurança e restauro personalizada.
- Saiba como restaurar uma cópia de segurança.