Usando o RSYNC com o Amazon S3

34

Estou interessado em usar o Amazon S3 para fazer backup de nossas imagens de ~ 100 gb (criadas através das ferramentas de backup da Acronis)

Obviamente, esse upload para o S3 todas as noites seria caro, em termos de largura de banda e custo. Estou pensando em usar o rsync com o S3 e me deparei com s3rsync. Eu estava apenas imaginando se alguém tinha alguma experiência em usar isso ou qualquer outra utilidade?

    
por alex 13.10.2009 / 12:02

7 respostas

31

Eu recentemente deparei com esse tópico no Google e parece que o cenário mudou um pouco desde que a pergunta foi feita. A maioria das soluções sugeridas aqui não são mais mantidas ou se tornaram comerciais.

Depois de algumas frustrações trabalhando com o FUSE e algumas outras soluções, decidi escrever meu próprio "clone" de linha de comando para o S3 e o Armazenamento do Google usando o Python.

Você pode conferir o projeto no GitHub: link

Outro projeto que eu tomei conhecimento recentemente é "duplicidade". Parece um pouco mais elaborado e pode ser encontrado aqui: link

Espero que isso ajude.

UPDATE

A equipe Python da AWS tem trabalhado duro em um projeto de CLI baseado em bot para seus serviços em nuvem. Entre as ferramentas incluídas está uma interface para o S3 que duplica (e em muitos aspectos substitui) a maior parte da funcionalidade fornecida pelo boto-rsync:

link

Em particular, o comando sync pode ser configurado para funcionar quase exatamente como o rsync:

link

    
por 22.01.2012 / 02:30
10

Eu também tive sorte com S3cmd e S3sync , ambos são gratuitos.

    
por 13.10.2009 / 16:56
7

Dependendo de como suas imagens Acronis são criadas, não tenho certeza se qualquer tipo de rsync economizaria largura de banda. As imagens da Acronis são arquivos únicos, então o rsync não seria capaz de ler dentro deles para fazer backup apenas do que foi alterado. Também não tenho certeza de que tipo de imagens de servidor você está criando, mas desde que você disse 100GB eu vou assumir total? Uma imagem incremental reduziria muito o tamanho da imagem noturna, economizando largura de banda. Você também pode considerar salvar as imagens em um local alternativo ao S3, como mídia de fita, e armazená-las fora do site.

    
por 13.10.2009 / 13:32
4

Eu nunca tentei S3rsync.

Estou usando a duplicidade para nossos backups externos. Ele suporta backups incrementais no S3, embora não esteja realmente economizando largura de banda devido ao protocolo de armazenamento do Amazon S3, no qual qualquer modificação no arquivo obriga você a fazer upload de todo o novo arquivo novamente. De qualquer forma, a duplicidade apenas carrega as diferenças do último backup incremental.

Com o Duplicity, você não precisará passar por outro servidor como o S3sync, no entanto, se você criptografar seus dados, valerá a pena experimentar o S3sync.

    
por 13.10.2009 / 14:26
1

O S3 também tem um serviço complementar chamado AWS Import / Export que permite enviar uma unidade USB com seu conjunto de dados inicial de 100 Gb para eles e eles carregam na nuvem S3 usando algumas ferramentas de back-end em seus datacenters . Uma vez que o seu 100Gb está lá em cima, você pode fazer backups diferenciais a cada noite para fazer backup de tudo que foi alterado.

O site é link

Se a maioria dos seus dados for razoavelmente estática, essa seria uma boa opção, se todos os 100 Gb de dados estiverem mudando diariamente, isso não ajudará muito.

    
por 09.11.2009 / 22:35
0

O novo Jungle Disk Server Edition (beta) pode ser útil para você. Tem desduplicação em nível de bloco, portanto, se suas imagens Acronis tiverem algo em comum, isso reduzirá bastante a quantidade de backup necessária. Os recursos são perfeitos para backups do servidor. Confira as notas de lançamento.

Estou testando o beta há duas semanas e, além de alguns pequenos problemas com a GUI que tenho certeza de que serão corrigidos na final, estou animado com o produto.

    
por 21.10.2009 / 23:15
0

Você pode tentar o minio cliente conhecido como "mc". O mc fornece ferramentas mínimas para trabalhar com armazenamento em nuvem e sistemas de arquivos compatíveis com o Amazon S3.

mc implementa os seguintes comandos

  ls        List files and folders.
  mb        Make a bucket or folder.
  cat       Display contents of a file.
  pipe      Write contents of stdin to one or more targets. When no target is specified, it writes to stdout.
  share     Generate URL for sharing.
  cp        Copy one or more objects to a target.
  mirror    Mirror folders recursively from a single source to many destinations.
  diff      Compute differences between two folders.
  rm        Remove file or bucket [WARNING: Use with care].
  access    Manage bucket access permissions.
  session   Manage saved sessions of cp and mirror operations.
  config    Manage configuration file.
  update    Check for a new software update.
  version   Print version.

Você pode usar o comando mirror para fazer sua operação. "localdir" sendo o diretório local & S3 [alias para o Amazon S3] e o nome "remoteDir" do seu intervalo no S3.

$ mc mirror localdir/ S3/remoteDir

Você também pode escrever um cronjob para o mesmo. Também em caso de indignação da rede, você pode usar a "sessão $ mc" para reiniciar o upload a partir desse momento específico.

PS: Eu contribuo para o minio project & adoraria receber seu feedback & contribuição. Espero que ajude.

    
por 25.11.2015 / 18:14