Visão geral do backup do Cassandra

O recurso de backup e restauração híbrido da Apigee permite criar backups dos dados híbridos sob demanda, e no caso de cenários de desastre, restaurar os dados para snapshots de trabalho anteriores. A disponibilidade e a retenção do backup são baseadas na infraestrutura de backup fornecida por você.

Uma instalação típica da Apigee híbrida consiste nos seguintes componentes:

  • MART (serviço de administrador)
  • Controlador e inspetor (gerencia objetos do Kubernetes)
  • Istio (gerencia o Ingress)
  • Runtime, Sync e UDCA (um por ambiente)
  • Telemetria (monitoramento e registro)
  • Gerenciador de certificados (gerencia os certificados)
  • Armazenamentos de dados (bancos de dados Cassandra e Redis)

Todos os componentes, exceto o Cassandra, não têm estado e não mantêm dados. O backup e a restauração não são necessários para esses componentes. Durante a recuperação, a reinstalação desses componentes usando as substituições existentes é suficiente.

Por que fazer backups do Cassandra?

Os backups são uma medida importante de proteção contra cenários de desastres. Cada backup atua como um snapshot consistente dos dados do Cassandra no momento em que o backup é criado. Além dos dados do Cassandra, esse snapshot inclui esquema e metadados no cluster do Cassandra. No caso de um desastre, os backups permitem restaurar a instância híbrida para um estado operacional anterior. Dependendo do tamanho da instância híbrida, um único conjunto de backup pode conter um ou mais arquivos de backup.

O que você precisa saber sobre os backups do Cassandra?

O Cassandra é um banco de dados replicado configurado para ter pelo menos 3 cópias dos dados em cada região ou data center. O Cassandra usa replicação de streaming e reparos de leitura para manter as réplicas de dados em cada região ou data center em um determinado ponto.

No ambiente híbrido, os backups do Cassandra não estão ativados por padrão. É recomendável ativar os backups do Cassandra caso seus dados sejam perdidos devido a uma falha catastrófica. Os backups do Cassandra destinam-se ao uso em casos de recuperação de desastres e não para restaurar a perda de dados causada pela exclusão acidental.

Os backups são criados de acordo com a programação definida no arquivo overrides.yaml. Depois que uma programação de backup é aplicada ao cluster híbrido, um job de backup do Kubernetes é executado de acordo com a programação. O job aciona um script de backup em cada nó do Cassandra no cluster híbrido que coleta todos os dados no nó, cria um arquivo de dados e o envia para o Cloud Storage ou um diretório em um controle remoto servidor.

O que é incluído no backup?

O backup programado da Apigee híbrida é um backup completo dos dados de ambiente de execução armazenados no Cassandra da Apigee no momento do backup. As modificações de dados após o horário do backup não estarão disponíveis no backup. O backup programado consiste nas seguintes entidades:

  • Esquema do Cassandra, incluindo o esquema do usuário (definições de keyspace da Apigee).
  • Informações do token de partição do Cassandra por nó do Cassandra em um cluster.
  • Um snapshot dos dados do Cassandra.

Onde os dados de backup são armazenados?

A localização dos dados de backup depende do seu método de backup. A Apigee híbrida é compatível com os seguintes métodos para fazer backups:

  • Backup no Cloud Storage: o backup é armazenado nos buckets configurados do Cloud Storage no seu projeto do Google Cloud.
  • Backup em um servidor remoto: o backup é armazenado em um diretório em um servidor remoto especificado por você.

Como os dados são protegidos?

Se você estiver usando o Cloud Storage para backup, os dados de backup serão criptografados por padrão. No caso de backups que não estão no Cloud Storage, os dados são criptografados durante a transferência para o servidor remoto. No entanto, após a transferência, você precisa garantir que os dados de backup sejam criptografados no servidor remoto.

Como fazer backups?

É necessário programar os backups como jobs cron. O cron job lê a configuração de um arquivo overrides.yaml configurado por você. A Apigee recomenda que você faça uma cópia do arquivo overrides.yaml, para que possa reutilizá-lo durante o processo de recuperação.

As seções a seguir descrevem em detalhes como programar backups no Cloud Storage e em um servidor remoto.