Tutorial: trasferimento dei dati dallo storage locale ad Amazon S3 in un altro modoAccount AWS - AWS DataSync

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Tutorial: trasferimento dei dati dallo storage locale ad Amazon S3 in un altro modoAccount AWS

Quando si utilizzaAWS DataSync l'archiviazione locale, in genere si copiano i dati su un servizio diAWS archiviazione che appartiene alloAccount AWS stessoDataSync agente. In alcuni casi, tuttavia, potrebbe essere necessario trasferire i dati su un bucket Amazon S3 associato a un altro account.

Importante

La copia dei datiAccount AWS utilizzando i metodi di questo tutorial funziona solo quando Amazon S3 è una delleDataSync sedi.

Panoramica

In questo tutorial, scoprirai comeAWS Identity and Access Management (IAM) eAWS Command Line Interface (AWS CLI) possono aiutarti a creareDataSync attività che trasferiscono dati dallo storage locale a un bucket S3 in un altroAccount AWS.

Ecco come può apparire questo tipo di scenario:

  • Account A: quelloAccount AWS che usi per gestire le risorse di rete. Anche l'endpoint con cui si attiva l'DataSyncagente appartiene a questo account.

    Nota

    I passaggi di questo tutorial si applicano a qualsiasi tipo di endpoint con cui attivi il tuo agente.

  • Account B: L'account B: quelloAccount AWS per il bucket S3 in cui si desidera copiare i dati.

Il diagramma seguente illustra questo scenario.

DataSyncUno scenario di esempio di trasferimento di dati da un sistema di storage locale attraverso Internet aAWS. I dati vengono prima trasferiti in unoAccount AWS (Account A), prima di essere infine trasferiti in un bucket Amazon S3 in un altroAccount AWS (Account B).

Prerequisiti

Prima di iniziare il lavoro IAM per facilitare il trasferimento tra account, se non l'hai già fatto, procedi come segue:

  1. Configura la rete in modo che il sistema di storage locale possa connettersi conAWS.

  2. Distribuisci e attiva il tuoDataSync agente con l'Account A.

  3. Crea una posizione diDataSync origine con l'Account A per il sistema di storage locale da cui stai copiando i dati.

  4. ConfiguraloAWS CLI con l'account A. Ti serviràAWS CLI per creare la posizione diDataSync destinazione per il bucket S3 nell'Account B.

Fase 1: creazione di un ruolo IAM per l'accountDataSync A

È necessario un ruolo IAM utilizzato perDataSync autorizzare la scrittura nel bucket S3 nell'Account B.

Quando crei una posizione per un bucket,DataSync puoi creare e assumere automaticamente un ruolo con le autorizzazioni giuste per accedere a quel bucket. Dato che stai effettuando il trasferimento tra account, è necessario creare manualmente.

Per ulteriori informazioni, consulta Creating a role for anServizio AWS (console) nella IAM User Guide.

Crea il ruolo IAM

Crea un ruolo conDataSync lo status di entità attendibile.

Per creare il ruolo IAM
  1. AccediAWS Management Console con l'account A.

  2. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  3. Nel riquadro di navigazione a sinistra, in Gestione accessi, scegli Ruoli, quindi scegli Crea ruolo.

  4. Nella pagina Seleziona entità attendibile, per Tipo di entità attendibile, scegli Servizio AWS.

  5. In Caso d'uso, scegli DataSyncnell'elenco a discesa e seleziona DataSync. Scegli Next (Successivo).

  6. Nella pagina Add permissions (Aggiungi autorizzazioni), scegli Next (Successivo).

  7. Assegna un nome al tuo ruolo e scegli Crea ruolo.

Allegare una policy personalizzata al ruolo IAM

Il ruolo IAM necessita di una policy cheDataSync consenta di scrivere nel bucket S3 nell'Account B.

Per allegare una policy personalizzata al ruolo IAM
  1. Nella pagina Ruoli della console IAM, cerca il ruolo che hai appena creato e scegli il suo nome.

  2. Nella pagina dei dettagli del ruolo seleziona la scheda Autorizzazioni. Scegli Aggiungi autorizzazioni, quindi Crea policy in linea.

  3. Scegli la scheda JSON ed esegui le seguenti operazioni:

    1. Incollare il seguente JSON nell'editor di policy:

      { "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. Sostituireaccount-b-bucket con il nome del bucket S3 nell'account B.

  4. Scegli Review policy (Esamina policy).

  5. Assegna un nome alla tua politica e scegli Crea politica.

Passaggio 2: disabilita gli ACL per il tuo bucket S3 nell'account B

È importante che tutti i dati che copi nel bucket S3 appartengano all'Account B. Per assicurarti che l'Account B sia il proprietario dei dati, disabilita gli elenchi di controllo degli accessi (ACL) del bucket. Per ulteriori informazioni, consulta Controlling ownership of objects and disabling ACLs for your bucket (Controllo della proprietà degli oggetti e disabilitazione delle ACL per il bucket) nella Guida per l'utente di Amazon S3.

Per disabilitare gli ACL per un bucket S3
  1. NelAWS Management Console, passa all'account B.

  2. Apri la console di Amazon S3 su https://console.aws.amazon.com/s3/.

  3. Nel pannello di navigazione a sinistra, scegli Buckets (Bucket).

  4. Nell'elenco dei bucket, scegli il bucket S3 in cui stai trasferendo i dati.

  5. Nella pagina dei dettagli del bucket, scegli la scheda Autorizzazioni.

  6. Alla voce Proprietà Oggetto scegli Modifica.

  7. Se non è già selezionato, scegli l'opzione ACL disattivati (consigliato).

  8. Sceglie Save changes (Salva modifiche).

Fase 3: aggiornare la policy del bucket S3 nell'account B

In Account B, modifica la policy del bucket S3 per consentire l'accesso al ruolo IAM creatoDataSync nell'Account A.

La politica aggiornata (fornita nelle seguenti istruzioni) include due principi:

  • Il primo committente specifica il ruolo IAM nell'Account A che hai creato nella Fase 1. Questo ruolo consente diDataSync scrivere nel bucket S3 nell'account B.

  • Il secondo principale specifica il ruolo IAM nell'Account A che utilizzi per accedere alla console oAWS CLI. Nel passaggio 4, utilizzerai questo ruolo per creare la posizione di destinazione per il bucket S3.

Per aggiornare la policy del bucket S3
  1. Mentre sei ancora nella console S3 e usi l'Account B, scegli il bucket S3 in cui stai copiando i dati.

  2. Nella pagina dei dettagli del bucket, scegli la scheda Autorizzazioni.

  3. In Politica dei bucket, scegli Modifica ed esegui le seguenti operazioni per modificare la politica del bucket S3:

    1. Aggiorna il contenuto dell'editor per includere le seguenti dichiarazioni politiche:

      { "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. Sostituisciaccount-a-id con ilAccount AWS numero del conto A.

    3. Sostituisciname-of-datasync-role con il ruolo IAM che hai creatoDataSync nell'Account A (torna al passaggio 1).

    4. Sostituireaccount-b-bucket con il nome del bucket S3 nell'account B.

    5. Sostituisciname-of-your-role con il ruolo IAM che usi per accedere alla console oAWS CLI con l'Account A.

  4. Sceglie Save changes (Salva modifiche).

Fase 4: Creare una posizione diDataSync destinazione per il bucket S3

Dopo aver creato una posizione per il bucket S3, puoi eseguire l'DataSyncattività. LaDataSync console, tuttavia, non supporta la creazione di sedi in account diversi. È necessario creare la posizione con ilAWS CLI prima di poter eseguire l'operazione.

Per creare unaDataSync posizione con la CLI
  1. Apri un terminale .

  2. Assicurati che il tuo profilo CLI sia configurato per utilizzare l'Account A.

  3. Copia il seguente 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. Sostituireaccount-b-bucket con il nome del bucket S3 nell'account B.

  5. Sostituisciaccount-a-id con ilAccount AWS numero del conto A.

  6. Sostituisciname-of-datasync-role con il ruolo IAM che hai creatoDataSync nell'Account A (torna al passaggio 1).

  7. Esegui il comando .

    Se il comando restituisce unaDataSync posizione ARN simile a questa, la posizione è stata creata correttamente:

    { "LocationArn": "arn:aws:datasync:us-east-2:123456789012:location/loc-abcdef01234567890" }
  8. Torna all'account A nelAWS Management Console.

  9. Apri laDataSync console all'indirizzo https://console.aws.amazon.com/datasync/.

  10. Nel pannello di navigazione a sinistra, scegli Sedi.

    Puoi vedere la posizione del bucket S3 nell'Account B che hai appena creato con la CLI.

Fase 5: creazione e avvio di un'DataSyncattività

Prima di spostare i dati, ricapitoliamo ciò che hai fatto finora:

  • Hai installato e attivato il tuoDataSync agente nell'Account A in modo che possa leggere dal tuo sistema di storage autogestito e comunicare con luiAWS.

  • È stato creato un ruolo IAM nell'Account A in modo daDataSync poter scrivere dati nel bucket S3 nell'Account B.

  • Hai configurato il tuo bucket S3 nell'Account B per assicurarti che l'DataSyncattività funzioni.

  • Hai creato le tue sedi diDataSync origine e destinazione nell'Account A.

Per creare e avviare l'DataSyncattività
  1. Mentre usi ancora laDataSync console nell'Account A, espandi Trasferimento dati nel riquadro di navigazione a sinistra, quindi scegli Attività e Crea attività.

    Nota

    Devi accedere alla console con lo stesso ruolo IAM per l'Account A specificato nella policy del bucket S3 nella Fase 3.

  2. Nella pagina Configura posizione di origine, scegli Scegli una posizione esistente. Scegli la posizione di origine da cui stai copiando i dati (lo spazio di archiviazione locale), quindi Avanti.

  3. Nella pagina Configura posizione di destinazione, scegli Scegli una posizione esistente. Scegli la posizione di destinazione in cui stai copiando i dati (il bucket S3 nell'Account B), quindi Avanti.

  4. Nella pagina Configura impostazioni, assegna un nome all'attività. Se necessario, configura impostazioni aggiuntive, ad esempio specificando un gruppo diCloudWatch log Amazon. Seleziona Successivo.

  5. Nella pagina Revisione, rivedi le tue impostazioni e scegli Crea attività.

  6. Nella pagina dei dettagli dell'attività, scegli Avvia, quindi scegli una delle seguenti opzioni:

    • Per eseguire l'attività senza modifiche, scegli Inizia con le impostazioni predefinite.

    • Per modificare l'attività prima di eseguirla, scegli Inizia con opzioni di sostituzione.

Al termine dell'attività, vedrai i dati dello storage locale nel bucket S3. Ora puoi accedere ai dati del bucket dall'Account B.

Risorse correlate

Per ulteriori informazioni su ciò che hai fatto in questo tutorial, consulta i seguenti argomenti: