Pular para o conteúdo principal
BlogComputaçãoClonagem de conteúdo para o Linode Object Storage com o RClone

Clonagem de conteúdo para o Linode Object Storage com o RClone

Clonagem de conteúdo para o Linode Object Storage com o RClone

Quando você precisa mover um grande conjunto de arquivos de um local remoto para outro, especialmente entre diferentes serviços de nuvem, copiar todos os arquivos da origem para o seu computador local e depois carregá-los para o novo destino pode ser um pesadelo. Imagine lidar com um terabyte de arquivos. Você tem espaço de armazenamento para isso em seu computador?

Felizmente, há uma maneira melhor de lidar com isso: o rclone. O rclone é uma CLI que permite executar operações de arquivos em lote diretamente entre locais remotos, sincronizando-os com eficiência da origem ao destino.

Neste post, vamos orientá-lo no uso do rclone para copiar arquivos de uma unidade de armazenamento em nuvem para o Linode Object Storage, tornando o processo o mais simples possível.

O que é rclone?

O Rclone é um programa de linha de comando que gerencia arquivos no armazenamento em nuvem. Ele é como um canivete suíço para o armazenamento em nuvem, lidando com tarefas como sincronização, cópia e movimentação de arquivos.

Como funciona?

O Rclone configura "controles remotos" para cada serviço de nuvem com o qual você deseja interagir. Depois de configurado, você pode usar os comandos do rclone para transferir dados entre eles. Embora os arquivos passem por seu computador local, eles não são armazenados lá por muito tempo.

O que você pode fazer com ele?

Com o rclone, você pode:

  • Sincronize arquivos entre diferentes serviços de nuvem.
  • Copie e mova arquivos com eficiência.
  • Monte o armazenamento em nuvem como um sistema de arquivos em seu computador local.
  • Criptografe arquivos para armazenamento seguro.

O Rclone é compatível com muitos serviços de nuvem, incluindo Linode Object Storage, Google Drive, AWS S3 , Nextcloud, entre outros. É uma ferramenta versátil para gerenciar seus dados na nuvem.

Agora que sabemos o que o rclone pode fazer, vamos demonstrar como você pode usá-lo para sincronizar dados entre o Google Drive e o Linode Object Storage.

O uso do rclone envolve a transferência de arquivos da origem remota para seu computador local antes de movê-los para o destino remoto. Embora esses arquivos não sejam mantidos localmente, os dados ainda trafegam pela sua conexão com a Internet.

Para otimizar o processo e reduzir a carga em sua rede doméstica, recomendamos a criação de uma VM Linode. Ao fazer isso, você encurta o caminho de transferência de dados. 

Para otimizar sua configuração, escolha um Linode na mesma região que seu bucket do Linode Object Storage .

Etapa 2: Instalar o rclone

Depois de configurar a VM do Linode, a próxima etapa é instalar o rclone. Primeiro, use o SSH para se conectar à sua instância da Linode. No painel da Linode, você pode se conectar por meio do Console LISH.

Execute o seguinte comando para baixar e instalar o rclone:

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

Verifique se o rclone está instalado corretamente executando o seguinte:

~# rclone version
rclone v1.66.0- os/version: debian 11.9 (64 bit)- os/kernel: 5.10.0-28-amd64 (x86_64)- os/type: linux- os/arch: amd64- go/version: go1.22.1- go/linking: static- go/tags: none

Depois de confirmar que a instalação foi bem-sucedida, você estará pronto para configurar o rclone com seus controles remotos de armazenamento em nuvem.

Etapa 3: Adicionar um novo controle remoto (Google Drive) ao rclone

Para iniciar a transferência de arquivos, é necessário configurar o rclone para acessar o Google Drive. Para fazer isso, você precisará obter credenciais. Siga estas instruções para criar uma conta de serviço e obter uma chave pública/privada para sua conta de serviço. Salve esse arquivo em seu computador local como service-account.json. Em seguida, use o SFTP para transferir esse arquivo para sua VM Linode (já que o rclone precisará fazer referência a ele).

Com o arquivo de chave da conta de serviço em sua VM Linode, use o seguinte comando para configurar o controle remoto do Google Drive no rclone:

~# rclone config

Siga as instruções para configurar um novo controle remoto:

  1. Selecione "n" para um new remote.
  2. Name o controle remoto (por exemplo: "gdrive").
  3. Para storage typeselecione "Google Drive" na lista de opções.
  4. Deixe client_id e client_secret em branco.
  5. Escolha a opção apropriada scope. Para nossos propósitos, escolheremos "Read-only access to file metadata and contents" (Acesso somente leitura aos metadados e ao conteúdo do arquivo).
  6. Para o arquivo service_account, insira o caminho para o arquivo JSON com as credenciais da conta de serviço que você baixou acima.
  7. Escolha os padrões para todas as perguntas restantes.

Para obter etapas mais detalhadas, você também pode consultar a documentação do rclone para o Google Drive.

Depois de concluído, o rclone terá acesso ao seu Google Drive, pronto para operações com arquivos.

Etapa 4: adicionar um novo remoto (Linode) ao rclone

A próxima etapa é configurar um segundo controle remoto no rclone, apontando para o Linode Object Storage. Assim como na etapa anterior, você precisará obter suas credenciais de armazenamento em nuvem.

As credenciais do Linode Object Storage são semelhantes às credenciais do AWS S3 . Você pode obter sua chave de acesso e chave secreta no Linode Cloud Manager. Na seção Object Storage página, clique em Create Access Key.

Depois de criar sua chave de acesso e sua chave secreta, copie-as.

Use o seguinte comando para configurar o Linode remoto no rclone:

~# rclone version

Siga as instruções para configurar um novo controle remoto:

  1. Selecione "n" para um new remote.
  2. Name o remoto (por exemplo: "linode").
  3. Para storage typeSelecione "Amazon S3 Compliant Storage Providers" (Provedores de armazenamento compatíveis com ) na lista de opções.
  4. Para providerSelecione "Linode Object Storage" na lista de opções.
  5. Selecione "Enter AWS credentials in the next step" (Insira as credenciais do na próxima etapa).
  6. Para access_key_id, cole a chave de acesso que você copiou acima.
  7. Para secret_access_key, cole a chave secreta que você copiou acima.
  8. Selecione a região para seu bucket do Linode Object Storage .
  9. Escolha os padrões para todas as perguntas restantes.

Para obter etapas detalhadas, consulte a documentação do rclone para o Linode Object Storage.

Depois de concluído, o rclone terá acesso ao seu Linode Object Storage, pronto para sincronizar arquivos do Google Drive.

Etapa 5: Sincronização

Com o Google Drive e o Linode Object Storage configurados como remotos no rclone, agora você pode sincronizar arquivos entre eles.

Para nossa demonstração, queremos sincronizar o conteúdo dos dados em nosso Google Drive com uma pasta chamada data em nosso bucket do Linode Object Storage .

Vamos começar dando uma olhada no que há em nossa pasta do Google Drive:

~# rclone size gdrive:/data
Total objects: 4.138k (4138)
Total size: 145.477 KiB (148968 Byte)

Aqui está o que vemos em nosso bucket do Linode Object Storage :

~# rclone size linode:/data
2024/05/18 16:06:40 Failed to size: directory not found

Como esperado, a pasta de dados não existe (ainda).

Para sincronizar nossos arquivos, podemos usar o seguinte comando básico:

~# rclone sync gdrive:/data linode:/data

Esse comando copiará os arquivos do seu Google Drive (origem) para o seu Linode Object Storage (destino).

Se quiséssemos monitorar o processo de transferência, adicionaríamos o sinalizador -progress:

~# rclone sync \     gdrive:/data \     linode:/data \     --progress

Podemos otimizar ainda mais o processo de sincronização configurando o número de transferências simultâneas com o sinalizador -transfers:

~# rclone sync \     gdrive:/data \     linode:/data \     --progress –transfers=8

Quando nossa sincronização começa, vemos o rclone atualizar constantemente os status de transferência:

Transferred:        6.152 KiB / 145.195 KiB, 4%, 421 B/s, ETA 5m37s
Transferred:        175 / 4138, 4%
Elapsed time:       16.1s
Transferring:
*    6/09843537-bc73-4def-a900-eb229b3ea126.txt: transferring
*    6/0a8fdcd4-2ded-4e69-8c08-37cbc74a3546.txt: transferring
*    6/0aed5c04-4a1b-4c6d-9fb8-7e490a959587.txt: transferring
*    6/0b35ae54-fae6-45f3-8f68-1445d8433e10.txt: transferring
*    6/0b9c8a7c-e6a9-44a3-8e89-28cb9e0fd695.txt: transferring
*    6/0bfddb9a-4f06-409b-ad6b-ee3c741dcf95.txt: transferring
*    6/0c2ebdda-87b7-44cf-9d9c-3e802880fc9c.txt: transferring
*    6/0c5a9407-ed90-40e1-85b3-18054f845cec.txt: transferring

Após a sincronização inicial, podemos executar novamente o comando para garantir que todos os arquivos estejam atualizados. O Rclone transferirá apenas arquivos novos ou alterados, tornando as sincronizações subsequentes mais rápidas.

~# rclone sync gdrive:/data linode:/data --progress
Transferred:        0 B / 0 B, -, 0 B/s, ETA -
Checks:             4138 / 4138, 100%
Elapsed time:       10.0s

Essa etapa garante que seus arquivos sejam transferidos com eficiência e mantidos em sincronia entre o Google Drive e o Linode Object Storage.

Conclusão

Nesta postagem, mostramos como usar o rclone para transferir arquivos com eficiência do Google Drive para o Linode Object Storage. Embora tenhamos usado especificamente o Google Drive e a Linode Object Storage em nossa demonstração, o rclone é compatível com dezenas de provedores de armazenamento em nuvem.

Para recapitular:

  • O Rclone permite que você execute operações de arquivos em lote diretamente entre serviços de nuvem.
  • A configuração de uma VM Linode na mesma região que seu Linode Object Storage pode otimizar suas transferências.
  • A configuração do rclone com o Google Drive e os controles remotos do Linode Object Storage é simples e eficiente.
  • O uso do recurso de sincronização do rclone ajuda a manter seus arquivos atualizados sem intervenção manual.

Pronto para otimizar suas transferências de arquivos? Experimente o Linode Object Storage hoje mesmo e veja como pode ser fácil gerenciar seus dados na nuvem!

Comentários

Deixe uma resposta

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados com *