Tutorial: Transferência de dados do armazenamento local para o Amazon S3 de forma diferenteConta da AWS - AWS DataSync

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Tutorial: Transferência de dados do armazenamento local para o Amazon S3 de forma diferenteConta da AWS

Ao usarAWS DataSync com armazenamento local, você normalmente copia dados para um serviçoAWS de armazenamento que pertence aoConta da AWS mesmo que seuDataSync agente. No entanto, há situações em que talvez seja necessário transferir dados para um bucket do Amazon S3 associado a uma conta diferente.

Importante

A cópia de dadosContas da AWS usando os métodos deste tutorial funciona somente quando o Amazon S3 é um dosDataSync locais.

Visão geral

Neste tutorial, você aprenderá como oAWS Identity and Access Management (IAM) e oAWS Command Line Interface (AWS CLI) podem ajudá-lo a criarDataSync tarefas que transferem dados do armazenamento local para um bucket do S3 em outroConta da AWS.

Veja como esse tipo de cenário pode ser:

  • Conta A: AConta da AWS que você usa para gerenciar recursos de rede. O endpoint com o qual você ativa oDataSync agente também pertence a essa conta.

    nota

    As etapas deste tutorial se aplicam a qualquer tipo de endpoint com o qual você ativa seu agente.

  • Conta B: O bucket do S3Conta da AWS para o qual você deseja copiar dados.

O diagrama a seguir ilustra esse cenário.

Um exemplo deDataSync cenário de transferência de dados de um sistema de armazenamento local pela Internet paraAWS. Os dados são transferidos primeiro para umaConta da AWS (Conta A), antes de finalmente serem transformados em um bucket do Amazon S3 em outroConta da AWS (Conta B).

Pré-requisitos

Antes de começar o trabalho do IAM para facilitar a transferência entre contas, faça o seguinte caso ainda não tenha feito isso:

  1. Configure sua rede para que seu sistema de armazenamento local possa se conectar comAWS.

  2. Implante e ative seuDataSync agente com a Conta A.

  3. Crie um localDataSync de origem com a Conta A para o sistema de armazenamento local do qual você está copiando dados.

  4. Configure oAWS CLI com a Conta A. Você precisará doAWS CLI para criar o local deDataSync destino para o bucket S3 na Conta B.

Etapa 1: Criar uma função do IAM paraDataSync a conta A

Você precisa de uma função do IAM que dêDataSync permissão para gravação no bucket do S3 na conta B.

Quando você cria um local para um bucket,DataSync pode criar e assumir automaticamente uma função com as permissões certas para acessar esse bucket. Como você está transferindo entre contas, é necessário criar a função manualmente.

Para obter mais informações, consulte Criação de uma função para umAWS service (Serviço da AWS) (console) no Guia do usuário do IAM.

Criar o perfil do IAM

Crie uma funçãoDataSync como entidade confiável.

Para criar a função do IAM
  1. Faça login na contaAWS Management Console com A.

  2. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  3. No painel de navegação esquerdo, em Gerenciamento de acesso, escolha Funções e, em seguida, escolha Criar função.

  4. Na página Selecionar entidade confiável, em Tipo de entidade confiável, escolha AWS service (Serviço da AWS).

  5. Em Caso de uso, escolha DataSyncna lista suspensa e selecione DataSync. Escolha Próximo.

  6. Na página Add permissions (Adicionar permissões), escolha Next (Próximo).

  7. Dê um nome à sua função e escolha Criar função.

Anexe uma política personalizada à função do IAM

A função do IAM precisa de uma política que permitaDataSync gravar em seu bucket do S3 na Conta B.

Para anexar uma política personalizada à função do IAM
  1. Na página Funções do console do IAM, pesquise a função que você acabou de criar e escolha seu nome.

  2. Na página de detalhes da função, escolha a guia Permissões. Escolha Adicionar permissões e depois Criar política embutida.

  3. Escolha a guia JSON e faça o seguinte:

    1. Cole o seguinte JSON no editor de política:

      { "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetBucketLocation", "s3:ListBucket", "s3:ListBucketMultipartUploads" ], "Effect": "Allow", "Resource": "arn:aws:s3:::account-b-bucket" }, { "Action": [ "s3:AbortMultipartUpload", "s3:DeleteObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:PutObject", "s3:GetObjectTagging", "s3:PutObjectTagging" ], "Effect": "Allow", "Resource": "arn:aws:s3:::account-b-bucket/*" } ] }
    2. account-b-bucketSubstitua pelo nome do bucket do S3 na conta B.

  4. Escolha Review policy (Revisar política).

  5. Dê um nome à sua política e escolha Criar política.

Etapa 2: desabilite as ACLs para seu bucket do S3 na Conta B

É importante que todos os dados que você copie para o bucket do S3 pertençam à Conta B. Para garantir que a Conta B seja a proprietária dos dados, desative as listas de controle de acesso (ACLs) do bucket. Para obter mais informações, consulte Controlar a propriedade de objetos e desabilitar ACLs para seu bucket, no Guia do Usuário do Amazon S3.

Como desabilitar as ACLs para um bucket do S3
  1. NoAWS Management Console, mude para a Conta B.

  2. Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

  3. No painel de navegação à esquerda, escolha Buckets.

  4. Na lista Buckets, escolha o bucket S3 para o qual você está transferindo dados.

  5. Na página de detalhes do bucket, escolha a guia Permissões.

  6. Em Object Ownership, escolha Edit (Editar).

  7. Se ainda não estiver selecionado, escolha a opção ACLs desativadas (recomendado).

  8. Escolha Salvar alterações.

Etapa 3: Atualizar a política de bucket do S3 na conta B

Na conta B, modifique a política de bucket do S3 para permitir o acesso ao perfil do IAM para o qual você criouDataSync na conta A.

A política atualizada (fornecida a você nas instruções a seguir) inclui dois princípios:

  • O primeiro diretor especifica a função do IAM na Conta A que você criou na Etapa 1. Essa função permiteDataSync gravar no bucket do S3 na conta B.

  • O segundo principal especifica a função do IAM na Conta A que você usa para acessar o console ouAWS CLI. Na Etapa 4, você usará essa função ao criar o local de destino para o bucket S3.

Para atualizar a política de bucket do S3
  1. Enquanto ainda estiver no console do S3 e usando a Conta B, escolha o bucket do S3 para o qual você está copiando dados.

  2. Na página de detalhes do bucket, escolha a guia Permissões.

  3. Em Política de bucket, escolha Editar e faça o seguinte para modificar sua política de bucket do S3:

    1. Atualize o que está no editor para incluir as seguintes declarações de política:

      { "Version": "2008-10-17", "Statement": [ { "Sid": "DataSyncCreateS3LocationAndTaskAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-a-id:role/name-of-datasync-role" }, "Action": [ "s3:GetBucketLocation", "s3:ListBucket", "s3:ListBucketMultipartUploads", "s3:AbortMultipartUpload", "s3:DeleteObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:PutObject", "s3:GetObjectTagging", "s3:PutObjectTagging" ], "Resource": [ "arn:aws:s3:::account-b-bucket", "arn:aws:s3:::account-b-bucket/*" ] }, { "Sid": "DataSyncCreateS3Location", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::account-a-id:role/name-of-your-role" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::account-b-bucket" } ] }
    2. account-a-idSubstitua peloConta da AWS número da Conta A.

    3. name-of-datasync-roleSubstitua pela função do IAM para a qual você criouDataSync na Conta A (na Etapa 1).

    4. account-b-bucketSubstitua pelo nome do bucket do S3 na conta B.

    5. name-of-your-roleSubstitua pela função do IAM que você usa para acessar o console ouAWS CLI pela Conta A.

  4. Escolha Salvar alterações.

Etapa 4: criar um local deDataSync destino para o bucket S3

Depois de criar um local para o bucket do S3, você pode executar suaDataSync tarefa. ODataSync console, no entanto, não oferece suporte à criação de locais em contas diferentes. Você deve criar o local com oAWS CLI antes de executar a tarefa.

Para criar umDataSync local com a CLI
  1. Abra um terminal do .

  2. Certifique-se de que seu perfil CLI esteja configurado para usar a Conta A.

  3. Copie o seguinte comando:

    aws datasync create-location-s3 \ --s3-bucket-arn arn:aws:s3:::account-b-bucket \ --s3-config '{"BucketAccessRoleArn":"arn:aws:iam::account-a-id:role/name-of-datasync-role"}'
  4. account-b-bucketSubstitua pelo nome do bucket do S3 na conta B.

  5. account-a-idSubstitua peloConta da AWS número da Conta A.

  6. name-of-datasync-roleSubstitua pela função do IAM para a qual você criouDataSync na Conta A (na Etapa 1).

  7. Execute o comando .

    Se o comando retornar um ARN deDataSync localização semelhante a este, você criou o local com êxito:

    { "LocationArn": "arn:aws:datasync:us-east-2:123456789012:location/loc-abcdef01234567890" }
  8. Volte para a Conta A noAWS Management Console.

  9. Abra oDataSync console em https://console.aws.amazon.com/datasync/.

  10. No painel de navegação esquerdo, escolha Locais.

    Você pode ver a localização do bucket do S3 na Conta B que você acabou de criar com a CLI.

Etapa 5: criar e iniciar umaDataSync tarefa

Antes de mover seus dados, vamos recapitular o que você fez até agora:

  • Implantou e ativou seuDataSync agente na Conta A para que o agente possa ler do seu sistema de armazenamento autogerenciado e se comunicar com eleAWS.

  • Criou uma função do IAM na Conta A paraDataSync poder gravar dados no bucket S3 na Conta B.

  • Configure seu bucket S3 na Conta B para garantir que suaDataSync tarefa funcione.

  • Criou seus locaisDataSync de origem e destino na Conta A.

Para criar e iniciar aDataSync tarefa
  1. Enquanto ainda estiver usando oDataSync console na Conta A, expanda Transferência de dados no painel de navegação esquerdo e escolha Tarefas e Criar tarefa.

    nota

    Você deve estar conectado ao console com a mesma função do IAM para a Conta A que você especificou na política de bucket do S3 na Etapa 3.

  2. Na página Configurar localização de origem, escolha Escolher um local existente. Escolha o local de origem do qual você está copiando os dados (seu armazenamento local) e depois Avançar.

  3. Na página Configurar local de destino, escolha Escolher um local existente. Escolha o local de destino para o qual você está copiando os dados (o bucket S3 na Conta B) e depois Avançar.

  4. Na página Definir configurações, dê um nome à tarefa. Conforme necessário, defina configurações adicionais, como especificar um grupo deCloudWatch registros da Amazon. Escolha Próximo.

  5. Na página Revisão, revise suas configurações e escolha Criar tarefa.

  6. Na página de detalhes da tarefa, escolha Iniciar e escolha uma das seguintes opções:

    • Para executar a tarefa sem modificação, escolha Iniciar com padrões.

    • Para modificar a tarefa antes de executá-la, escolha Iniciar com opções de substituição.

Quando sua tarefa terminar, você verá os dados do seu armazenamento local no bucket do S3. Agora você pode acessar os dados do bucket na Conta B.

Recursos relacionados

Para obter mais informações sobre o que você fez neste tutorial, consulte os seguintes tópicos: