Qual é a sua estratégia geral para fazer backup de buckets do S3?

2

Estamos iniciando um projeto que envolve o armazenamento de grandes quantidades de dados no S3. O S3 é bom para dimensionamento e esperamos ter até 5 TB e milhões de arquivos no intervalo. Embora eu possa confiar na Amazon no armazenamento dos dados, eu realmente não acho que possa haver absolutamente nenhum erro no software.

Temos o mecanismo de snapshots do EBS para restaurar o estado do EBS-volume ao seu estado anterior. Mas como podemos restaurar o bucket para seu estado, digamos, 3 dias antes?

UPD.

A questão suscitou todos os novos pensamentos sobre "Como você faz backup de sua infraestrutura de nuvem inteira ? Qual é o seu plano de recuperação de desastre ?" Como fazer backup do Route53? Configurações do CloudFront? Quanto tempo será necessário para recuperar-se do erro de script ou perder o acesso ao console raiz?

    
por Andrei Mikhaltsov 29.05.2013 / 16:04

1 resposta

2

Qual é a sua estratégia geral para fazer o backup dos buckets do S3?

Dependendo de quais dados você está armazenando, você pode não estar interessado em fazer o backup de dados do S3. Por exemplo, se você possui recursos gerais do site em que já tem uma cópia em um repositório em outro lugar, provavelmente não precisará fazer backup dos ativos que residem no S3.

Às vezes, você pode usar o S3 para armazenar os uploads dos usuários. Estes podem ter se originado de um EC2 ou podem ter ido direto para o S3. Faz sentido usar o controle de versão de objetos para recuperar de erros de script ou usuários excluindo arquivos, mas mudando de ideia. link

Até onde eu sei, o controle de versão é feito no nível do objeto, portanto, se você quiser "reverter a aparência do seu intervalo há três dias", precisará criar um script que possa verificar todas as versões e datas e solicitar a versão correta para cada objeto. Isso seria possível, requer apenas um pouco de esforço no nível do aplicativo primeiro.

Você pode examinar outros métodos, como sincronizar todos os objetos de bucket do S3 com outro serviço (um servidor de terceiros ou um EC2 com suporte do EBS). Este poderia ser seu instantâneo diário ou semanal. Esse método adiciona custos extras, manutenção e esforço, portanto, pode não ser a melhor solução, principalmente para 5 TB de dados.

"Como você faz backup de toda a sua infraestrutura de nuvem? Qual é o seu plano de recuperação de desastre?" Como fazer backup do Route53? Configurações do CloudFront?

Dependendo de quanto você quer ir, todo esse tipo de informação deve ser roteirizado e em arquivos de configuração. Esses arquivos de configuração devem ser submetidos a backup. Isso aborda o DEVOPS e o conceito de infraestrutura como código.

Quanto tempo será necessário para recuperar-se do erro de script ou perder o acesso ao console raiz?

Esta pergunta é difícil de responder. Que tipo de erro de script? A primeira pergunta aborda um exemplo (um script excluindo um arquivo que vive no S3), mas há muito mais.

Você pode pesquisar no link do SimianArmy

The Simian Army is a suite of tools for keeping your cloud operating in top form. Chaos Monkey, the first member, is a resiliency tool that helps ensure that your applications can tolerate random instance failures

Quanto ao acesso ao "console-raiz", se você estiver falando sobre o acesso ao seu sistema operacional, ou seus EC2s ... tudo o que deve ser escrito via Puppet / Chef ou similar e, portanto, suas máquinas são "descartáveis". Não há nada de especial nelas, elas não contêm dados de usuários individuais e você pode aumentar ou diminuir o desempenho sem afetar o sistema.

Se você estiver falando sobre o acesso ao console da AWS, precisará fazer coisas como enviar por e-mail ou ligar para obter acesso, ou pode haver interrupções que precisa levar em conta.

    
por 22.06.2013 / 07:41