IBM Cloud Docs
Movendo dados entre depósitos

Movendo dados entre depósitos

Em algum ponto, será necessário mover ou fazer backup de seus dados para uma região diferente do IBM Cloud® Object Storage. Uma abordagem para mover ou replicar dados entre regiões de armazenamento de objetos é usar uma ferramenta de "sincronização" ou "clone", como o utilitário de linha de comando de código aberto rclone. Esse utilitário sincroniza uma árvore de arquivos entre dois locais, incluindo o armazenamento de objetos de nuvem. Quando o rclone grava dados no COS, ele usa a API do COS/S3 para segmentar objetos grandes e faz upload das partes em paralelo, de acordo com os tamanhos e os limites definidos como parâmetros de configuração.

Este guia fornece instruções para copiar dados de um bucket IBM Cloud Object Storage para outro bucket Object Storage na mesma região ou para um segundo bucket Object Storage em uma região Object Storage diferente. Essas etapas precisam ser repetidas para todos os dados que você deseja copiar de cada depósito. Depois que os dados forem migrados, será possível verificar a integridade da transferência usando rclone check, que produzirá uma lista de quaisquer objetos que não correspondam ao tamanho do arquivo ou à soma de verificação. Além disso, é possível manter os depósitos em sincronização executando regularmente rclone sync de suas origens disponíveis para seus destinos escolhidos.

Criar um depósito do IBM Cloud Object Storage de destino

Você tem a opção de usar sua instância existente do IBM Cloud Object Storage ou criar uma nova instância. Se você deseja reutilizar sua instância existente, pule para a etapa nº 2.

  1. Crie uma instância do IBM Cloud Object Storage por meio do catálogo.
  2. Crie quaisquer depósitos em que você precise armazenar os dados transferidos. Leia o guia de introdução para se familiarizar com os conceitos-chave, como terminais e classes de armazenamento.
  3. O utilitário rclone não copiará nenhuma configuração de bucket ou metadados de objeto. Portanto, se estiver usando qualquer um dos recursos do Object Storage, como expiração, arquivamento, proteção de chaves, etc., certifique-se de configurá-los adequadamente antes de migrar seus dados. Para visualizar quais recursos são suportados em seu destino do COS, consulte a matriz de recursos.

A documentação de configuração de recurso e de políticas de acesso pode ser visualizada nas páginas de portal da IBM Cloud listadas abaixo:

Configurar um recurso de cálculo para executar a ferramenta de migração

  1. Escolha uma máquina Linux™/macOS™ /BSD™ ou uma infraestrutura IBM Cloud Bare Metal ou servidor virtual com a melhor proximidade de seus dados. Selecionar um data center na mesma região que o bucket de destino geralmente é a melhor opção (por exemplo, se estiver movendo dados de mel01 para au-syd, use uma VM ou Bare Metal em au-syd). A configuração recomendada do Servidor é: 32 GB de RAM, 2 - 4 processadores principais e velocidade de rede privada de 1000 Mbps.
  2. Se você estiver executando a migração em um IBM Cloud Infrastructure Bare Metal ou Virtual Server, use os terminais do COS privados para evitar encargos de egresso de rede.
  3. Caso contrário, use os terminais do COS públicos ou diretos.
  4. Instalar rclone de um gerenciador de pacotes ou de um binário pré-compilado.
curl https://rclone.org/install.sh | sudo bash

Configurar o rclone para dados de origem do COS

Crie 'perfis' para sua origem e seu destino da migração em rclone.

Se necessário, obtenha as credenciais do COS

  1. Selecione sua instância do COS no console do IBM Cloud.
  2. Clique em Credenciais de serviço na área de janela de navegação.
  3. Clique em Nova credencial para gerar informações de credenciais.
  4. Selecione Opções avançadas.
  5. Mude as credenciais HMAC para Ativado.
  6. Clique em Incluir.
  7. Visualize a credencial criada e copie o conteúdo JSON.

Obter terminal do COS

  1. Clique em Depósitos na área de janela de navegação.
  2. Clique no depósito de destino de migração.
  3. Clique em Configuração na área de janela de navegação.
  4. Role para baixo até a seção Terminais e escolha o terminal com base no local em que a ferramenta de migração está sendo executada.
  5. Crie o destino do COS copiando o seguinte e colando em rclone.conf.
[COS_SOURCE]
type = s3
provider = IBMCOS
env_auth = false
access_key_id =
secret_access_key =
endpoint =

Use [COS_DESTINATION] como o nome do perfil que você precisa criar para configurar o destino. Repita as etapas acima.

Usando suas credenciais e o terminal desejado, preencha os campos a seguir:

access_key_id = <access_key_id>
secret_access_key = <secret_access_key>
endpoint = <bucket endpoint>

Configurar o rclone para dados de destino do COS

Repita as etapas anteriores para os depósitos de destino.

Verificar se a origem e o destino estão adequadamente configurados

  • Liste os depósitos associados à origem para verificar se o rclone está configurado adequadamente.
rclone lsd COS_SOURCE:
  • Liste os depósitos associados ao destino para verificar se o rclone está adequadamente configurado.
rclone lsd COS_DESTINATION:

Se você estiver usando a mesma instância de COS para a origem e o destino, as listagens de bucket corresponderão.

Executar o rclone

  1. Teste sua configuração com uma execução seca (em que nenhum dado é copiado) de rclone para testar a cópia dos objetos em seu bucket de origem (por exemplo, source-test) para o bucket de destino (por exemplo, destination-test), em que source-test e destination-test são os respectivos nomes de bucket de origem e destino.
   rclone --dry-run copy COS_SOURCE:source-test COS_DESTINATION:destination-test

  1. Verifique se os arquivos que você deseja migrar aparecem na saída de comando. Se tudo parecer bem, remova a sinalização --dry-run e, opcionalmente, inclua a sinalização -v e/ou -P para copiar os dados e rastrear o progresso. O uso da sinalização --checksum opcional evita a atualização de quaisquer arquivos que tenham o mesmo hash MD5 e o tamanho do objeto em ambos os locais.
   rclone -v -P copy --checksum COS_SOURCE:source-test COS_DESTINATION:destination-test

Tente maximar a CPU, a memória e a rede na máquina que está executando o rclone para obter o tempo de transferência mais rápido.

Há outros parâmetros a serem considerados ao ajustar o rclone. Diferentes combinações desses valores impactarão a CPU, a memória e os tempos de transferência para os objetos em seu depósito.

`rclone` options
Sinalize Tipo Descrição
--checkers int Número de verificadores a serem executados em paralelo (o padrão é oito). Este é o número de somas de verificação que comparam os encadeamentos em execução. Recomendamos aumentar isso para 64 ou mais.
--transfers int Esse é o número de objetos a serem transferidos em paralelo (o padrão é quatro). Recomendamos aumentar esse valor para 64, 128 ou mais ao transferir muitos arquivos pequenos.
--multi-thread-streams int Faça download de arquivos grandes (> 250 M) em diversas partes em paralelo. Isso melhorará o tempo de download de arquivos grandes (o padrão é quatro).
--s3-upload-concurrency int O número de partes de arquivos grandes (> 200 M) para fazer upload em paralelo. Isso melhorará o tempo de upload de arquivos grandes (o padrão é quatro).

A migração de dados usando rclone copy somente copia, mas não exclui, os dados de origem.

O processo de cópia deve ser repetido para todos os outros depósitos de origem que requerem migração/cópia/backup.