Este guia orienta como configurar o rclone para sincronizar arquivos entre o AWS S3 e o storage de objetos do CentralServer, utilizando dois perfis configurados para cada serviço.

Pré-requisitos

  • rclone instalado no sistema.
  • Acesso aos serviços AWS e CentralServer com as devidas credenciais.
  • Bucket S3 de origem e bucket na CentralServer já criados

Passo 1: Instalar o rclone

Se o rclone não estiver instalado, siga os seguintes passos:

Baixe o script de instalação:

curl https://rclone.org/install.sh | sudo bash

Verifique a instalação com:

rclone version

Passo 2: Configuração do rclone

2.1 Configurar o AWS S3

Para configurar o AWS S3 no rclone, siga os passos abaixo:

Execute o comando para iniciar a configuração:

rclone config
  • Escolha a opção n para adicionar um novo remoto.
  • Quando solicitado, insira um nome para o seu remoto (por exemplo, aws).
  • Escolha o tipo de serviço como s3 e pressione Enter.
  • Selecione o provedor como AWS s3.

Selecione 1 conforme a imagem abaixo:

  • Insira as credenciais do AWS:
    • Access key ID: Insira sua chave de acesso da AWS.
    • Secret access key: Insira sua chave secreta da AWS.
  • Defina a região da AWS (exemplo: us-east-1).
  • Endpoint: deixe em branco
  • Location constraint (exemplo: us-east-1).
  • ACL: private
  • Configuração de avançados: n
  • Confirme as configurações pressionando y para aceitar as opções padrão.

2.2 Configurar o acesso ao storage de objetos da CentralServer:

Execute o comando para iniciar a configuração:

rclone config
  • Escolha a opção n para adicionar um novo remoto.
  • Quando solicitado, insira um nome para o seu remoto (por exemplo, centralserver).
  • Escolha o tipo de serviço como s3 e pressione Enter.
  • Selecione o provedor como Minio.

Selecione 1 conforme a imagem abaixo:

  • Insira as credenciais da CentralServer:
    • Access key ID: Insira sua chave de acesso da CentralServer.
    • Secret access key: Insira sua chave secreta da CentralServer.
  • Region: deixe em branco
  • Defina o endpoint URL do CentralServer (exemplo: https://exemplo.com)
  • Location_constraint: deixe em branco
  • Defina o tipo de ACL (acesso) como private.
  • Server_side_encryption: deixe em branco
  • Sse_kms_key_id: deixe em branco
  • Access key ID: Insira sua chave de acesso do CentralServer.
  • Secret access key: Insira sua chave secreta do CentralServer.
  • Confirme as configurações pressionando y para aceitar as opções padrão.

Passo 3: Sincronizando Arquivos entre AWS S3 e CentralServer

Agora que os remotos estão configurados, podemos realizar a sincronização dos arquivos.

3.1 Comando para Sincronização

Execute o comando abaixo para sincronizar arquivos do bucket S3 da AWS para o bucket no CentralServer:

rclone sync aws:NOME_DO_BUCKET_ORIGEM centralserver:NOME_DO_BUCKET_DESTINO
  • aws:NOME_DO_BUCKET_ORIGEM: O primeiro parâmetro é o nome do remoto configurado para o AWS S3, seguido do nome do bucket.
  • centralserver:NOME_DO_BUCKET_DESTINO: O segundo parâmetro é o nome do remoto configurado para o CentralServer, seguido do nome do bucket.

O comando acima vai sincronizar o conteúdo do bucket NOME_DO_BUCKET_ORIGEM da AWS para o bucket NOME_DO_BUCKET_DESTINO na CentralServer.

Passo 4: Excluir as Credenciais

Importante: Após terminar o teste ou a configuração, exclua as credenciais inseridas para garantir a segurança:

  1. Abra o arquivo de configuração do rclone:
nano ~/.config/rclone/rclone.conf

Exclua ou substitua as credenciais nos blocos correspondentes.

Notas:

Para maiores detalhes sobre o uso do rclone, consulte a documentação oficial do rclone

A transferência dos arquivos vai depender da velocidade de rede do usuário e do tamanho dos arquivos.

AVISO LEGAL: Os procedimentos descritos neste documento devem ser executados de acordo com o contexto de cada sistema, de forma a evitar impactos negativos à segurança, disponibilidade, integridade e privacidade de dados. A CentralServer se reserva o direito de modificar a qualquer tempo e sem aviso prévio as informações aqui apresentadas a fim de refletir o lançamento de novos serviços, atualizações físicas e operacionais, e evolução do estado-da-arte da tecnologia.