Pular para o conteúdo

Criando backups com Amazon S3

Backups! Backups!! Backups!!! Afinal precisamos sempre manter backups de nossos arquivos, sejam eles pessoais ou profissionais. Com a facilidade de criar backups hoje em dia, podemos contar com diversos meios para isto, serviços como DropBox, Google Backup entre outros são uma ótima forma de manter seus backups salvos.
Percio Andrade Castelo Branco percioandrade
Hits: 13.273 Categoria: Linux Subcategoria: Backup
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Parte 2: Configuração

Chegamos na etapa de configuração do Amazon S3.

O primeiro passo é criar sua conta no sistema através do painel da Amazon. A conta pode ser criada em:
Após criar sua conta no S3, você precisará obter as chaves de conexão sendo elas a Key e PrivateKey, estas chaves podem ser obtidas em:
Obs.: a URL pode mudar de acordo com a região assinada na Amazon.

Com posse da chave crie e configure o arquivo abaixo no usuário root:

# echo "SUA_KEY:SUA_PRIVATE_KEY" > $HOME/.passwd-s3fs
# chmod 600 "$HOME/.passwd-s3fs"


Este arquivo deve existir, caso contrário a conexão não poderá ser efetuada.

Vamos então para o próximo passo que é criar a conta e testar a configuração.

Criação de conta

Chegamos na etapa de criação de conta e vamos verificar se tudo está funcionando corretamente.

1. Acesse o painel do Amazon S3 e crie um bucket. Digamos que foi criado como 'arquivos'.

Para saber como criar um bucket veja este guia:
2. Agora acesse seu servidor e crie o usuário que receberá o bucket, vamos definir como vivaolinux, este usuário deve possuir um diretório home válido:

# useradd -d /home/vivaolinux -m vivaolinux

Em seguida insira uma senha para este usuário:

# passwd vivaolinux

Anote a senha.

3. Agora vamos criar um diretório na home do cliente com o mesmo nome do bucket:

# mkdir /home/vivaolinux/arquivos

4. Uma vez o diretório criado, vamos invocar o s3fs para montar o bucket no diretório que criamos:

# /usr/local/bin/s3fs "vivaolinux" -o use_rrs -o allow_other -o default_acl=public-read "/home/vivaolinux/arquivos"

Podemos verificar se houve a montagem corretamente rodando:

# df -h | grep s3fs

Se aparecer listado a montagem foi feita corretamente.

5. Vamos inserir uma entrada no fstab para evitar que após o reinicio da maquina a montagem se perca:

# echo "s3fs#$BUCKET /home/vivaolinux/arquivos fuse _netdev,allow_other,nodnscache,retries=5 0 0" >> /etc/fstab

6. Vamos por fim adicionar o usuário vivaolinux à lista de usuários permitidos no FTP:

# echo "vivaolinux" >> /etc/vsftpd/user_list

Reinicie o servidor FTP em seguida:

# /etc/init.d/vsftpd restart

Opcional: caso você queira que o usuário possa somente fazer upload no Amazon S3 e não em seu servidor, modifique a permissão do diretório home para 0555:

# chmod 0555 "/home/vivaolinux/"

Agora você pode fazer upload de duas formas:

a) Diretamente via algum cliente de FTP utilizando a conexão:
  • Servidor: IP OU NOME_DO_SERVIDOR
  • PORTA: 21
  • USUÁRIO: USUÁRIO
  • SENHA: SENHA
  • DIRETÓRIO: /arquivos

b) Ou via shell diretamente no diretório "arquivos".

Uma vez o upload feito, ele é imediatamente enviado ao bucket na Amazon S3.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. O que é o Amazon S3
   2. Configuração
   3. Automatização

Backups com Amazon S3

Servidor Bacula com Fedora Server 21

Clonando e Salvando Todos os Linux de um Disco Rígido para um HD Portátil Usando Gparted

Backup completo com sincronismo da /home em nuvem - Grátis

Backup com o FSArchiver

Virtualização com ESXi 5.5.0 - pfSense virtualizado + backup de VMs no FreeNAS via iSCSI

#1 Comentário enviado por fabio em 07/07/2016 - 02:53h
Muito bom! Eu já usava o Amazon EC2 e não tinha conhecimento sobre o E3. Acabei de criar um bucket e já estou usando! Vou aposentar meu Dropbox.

A instalação no Debian é bem simples:

# apt-get install s3fs

Depois é criar o arquivo ~/.passwd-s3 usando o procedimento do artigo e montar o diretório usando o comando s3fs conforme explicado aqui.
#2 Comentário enviado por Tacioandrade em 08/07/2016 - 00:35h
Só uma dica sobre o s3fs, fazendo uso dele com mais de um servidor ao mesmo tempo, acesso simultâneo ao mesmo arquivo irá corrompe-lo. Quem me passou isso foi um amigo que o utilizou e acabou perdendo dezenas de arquivos. =/

Att. Tácio Andrade.
#3 Comentário enviado por percioandrade em 08/07/2016 - 02:36h
É verdade e a resposta é devido a forma como ele trata os arquivos e suas limitações:

S3 LIMITATIONS

Objects can contain a maximum of 5GB.
You can't update part of an object. If you want to update 1 byte in a 1GB object you'll have to reupload the entire GB.

High risk for data corruption, due to the delayed writes (e.g., your system or the connection to AWS fails). Journaling doesn't help because as far as the filesystem is concerned the blocks have already been written (I.e., to S3Backer's cache).

Aqui tem toda a explicação do S3 e do S3FS: https://www.turnkeylinux.org/blog/exploring-s3-based-filesystems-s3fs-and-s3backer

O S3FS recomendo para uso pessoal, mas o Amazon S3 existe "N" maneiras de montar como um webserver por exemplo onde é possível ultrapassar estas limitações e fazer múltiplos acessos.

Contribuir com comentário

Entre na sua conta para comentar.