Visão geral dos backups

Nesta página, você verá o que é um backup, como ele funciona, alguns casos de uso comuns e práticas recomendadas para criar e usar backups. Para saber como criar e gerenciar backups, além de como restaurar uma instância do Filestore a partir de um backup, consulte Como fazer backup e restaurar compartilhamentos de arquivos.

O que é um backup?

Um backup do Filestore é uma cópia de um compartilhamento de arquivos que inclui todos os dados e metadados dele a partir do momento em que o backup é criado. Ele funciona com instâncias de nível básico de HDD e SSD. Depois que o backup de um compartilhamento de arquivos é criado, o compartilhamento de arquivos original pode ser modificado ou excluído sem afetar o backup. Um compartilhamento de arquivos pode ser completamente restaurado a partir de um backup como uma nova instância do Filestore ou para um compartilhamento de arquivos existente.

Os backups são recursos regionais que permanecem dentro da região que o usuário especifica no momento da criação. É possível criar backups na mesma região da instância do Filestore ou em outra região para redundância entre regiões. Os backups são globalmente endereçáveis e podem ser usados para restaurar compartilhamentos de arquivos para qualquer região do GCP, mas não podem ser compartilhados entre projetos.

Criação do backup

Os backups de uma região são criados gradualmente com base nos backups anteriores. Isso significa que o primeiro backup criado é uma cópia completa do compartilhamento de arquivos, mas os backups subsequentes incluem apenas os dados novos ou modificados que não estão contidos no backup anterior. Os dados inalterados contidos nos backups anteriores são referenciados, mas não copiados para os backups mais recentes. Se um backup mais antigo for excluído, os dados exclusivos dele serão copiados para o próximo backup mais recente e todas as referências de dados internas serão atualizadas automaticamente.

A criação do backup é instantânea, mas é preciso um período proporcional à quantidade de dados copiados para que o backup esteja disponível para uso. Durante esse período, o backup passa por três estados:

Estado Duração Descrição
Criando Alguns segundos As novas mudanças nos dados do compartilhamento de arquivos podem ou não ser incluídas no backup. As gravações estáveis reconhecidas pela instância antes do início do backup são incluídas.
Finalizando Depende do tamanho As novas alterações nos dados do compartilhamento de arquivos não estão incluídas no backup.
Pronto Até que o backup seja excluído O backup está pronto para uso.

Após a criação, os backups são compactados automaticamente para reduzir os custos. Fazer um backup não afeta a disponibilidade ou o desempenho da instância do Filestore.

Consistência no backup

Os backups do Filestore têm a semântica de consistência NFSv3. Antes de um backup ser iniciado, qualquer gravação que a instância do Filestore reconhece como gravada no armazenamento estável ou que é seguida por um COMMIT confirmado é incluída no backup. Para mais detalhes, consulte a seção 3.3.7 do NFSv3 RFC-1813.

Casos de uso comuns

Como fazer backup de dados para recuperação de desastres

Imagine que você tem uma instância do Filestore em us-west1-c e quer proteger seus dados no caso de um desastre que envolva essa região. Você pode agendar um job que crie backups desta instância regularmente para uma região remota, como us- east1. Se ocorreu um desastre que envolve us-west1-c, é possível criar uma nova instância em outro local a partir de qualquer backup anterior.

Como fazer backup de dados para proteção contra alterações acidentais

Para proteger os dados em uma instância do Filestore contra alterações não intencionais, programe um job que crie regularmente backups da instância na mesma região. No caso de perda de dados, é possível navegar pela lista de backups para identificar aquele com a versão do arquivo necessário, criar uma nova instância do Filestore a partir do backup, ativá-la no mesmo cliente que a instância original e, em seguida, copiar o arquivo.

Também é possível usar o comando diff nos dois pontos de montagem para verificar as diferenças entre os dados da instância original e os dados restaurados do backup. Depois que os dados forem recuperados, será possível excluir a instância restaurada, e o backup será preservado para uso futuro.

Como alternativa, você pode fazer uma restauração no local, em que os dados de backup são restaurados diretamente para a instância original do Filestore, substituindo todos os dados dela pelos dados do backup. Recomendamos que você crie um backup dos dados mais recentes antes de realizar uma restauração no local, porque todos os dados não armazenados serão perdidos.

Como criar clones para desenvolvimento e teste

Imagine que você tenha uma configuração de banco de dados em uma instância do Filestore que exiba tráfego de produção. Se você quiser executar um teste com um banco de dados como entrada, poderá criar uma nova instância do Filestore a partir de um backup da instância de produção para o teste. Dessa maneira, o uso do teste não interfere na produção.

Da mesma forma, é possível usar backups para análise e investigação off-line sem afetar a produção.

Como migrar dados

Depois de criar uma instância do Filestore, não será possível alterar o local ou o nível de serviço. Se precisar migrar seus dados para outra região, crie um backup e use-o para criar uma nova instância de Filestore na região que quiser ou restaure o backup em uma instância existente.

Além disso, quando você cria uma nova instância do Filestore a partir de um backup, é possível escolher entre os níveis de HDD básico e SDD básico, independentemente do nível da instância de origem.

Práticas recomendadas

Como preparar o compartilhamento de arquivos para ter uma melhor consistência de backup

A qualidade de um backup depende da capacidade do aplicativo de se recuperar dos backups criados durante cargas de trabalho de gravação pesadas. Na maioria das situações, é possível criar backups com boa consistência, mesmo que os aplicativos gravem dados no compartilhamento de arquivos. No entanto, se os aplicativos exigirem consistência rigorosa, recomendamos executar uma ou mais das seguintes opções:

  • Use a montagem de sincronização. Para mais informações, consulte a seção "Opção de montagem de sincronização" em nfs(5). Você também pode abrir arquivos com as sinalizações O_DIRECT|O_SYNC. Para mais informações, consulte open(2).
  • Pause os aplicativos ou processos do sistema operacional que gravam dados no compartilhamento de arquivos e faça com que eles limpem as alterações no compartilhamento de arquivos antes de iniciar o backup. Para ver mais informações, consulte fsync(2).
  • Se os aplicativos exigirem consistência entre vários compartilhamentos, pause todos os aplicativos em todas as instâncias que estiverem gravando nos compartilhamentos de arquivos e crie backups de todos os compartilhamentos de arquivos antes de retomar os aplicativos.
  • Se você precisar de consistência no nível do aplicativo, interrompa seus aplicativos e desative o compartilhamento de arquivos antes de criar um backup.

Como usar backups existentes como referência para novos backups a fim de reduzir o tempo de criação

Quando você cria um backup de um compartilhamento de arquivos em uma região com backups já existentes, os backups existentes são usados como valores de referência para criar o novo backup. Isso significa que o sistema poderá criar um novo backup mais rapidamente do que se não houver backups. Portanto, recomendamos que você faça o seguinte:

  • Faça um novo backup de um compartilhamento de arquivos antes de excluir o backup anterior.
  • Aguarde que novos backups estejam no estado Ready antes de criar backups subsequentes do mesmo compartilhamento de arquivos.

Como programar backups fora do horário de pico para reduzir o tempo de criação

A criação de backups fora do horário de pico reduz o tempo que leva para criar um backup. Se você programar backups regulares dos compartilhamentos de arquivos, recomendamos que eles sejam programados fora do horário de pico, quando possível.

Os horários de pico para a criação de backups são o final de cada dia útil e a meia-noite da região onde a instância do Filestore está localizada. Recomendamos que você crie os backups no início da manhã ou durante o dia útil.

Como organizar seus dados em instâncias separadas do Filestore para maximizar a eficiência

Um backup copia todos os dados e metadados de um compartilhamento de arquivos. Quanto mais dados o compartilhamento de arquivos tiver, maior será o backup e o custo. Para fazer backup somente dos dados necessários, recomendamos que organize seus dados em compartilhamentos de arquivos separados. Isso inclui:

  • Armazenamento de dados críticos com diferentes padrões de gravação ou requisitos de backup distintos em diferentes compartilhamentos de arquivos.
  • Ao manter dados semelhantes em um compartilhamento de arquivos, você reduz o número de backups que precisam ser criados.

A seguir