Trasferimento su una rete privata gestita da Google

Quando si trasferiscono dati da Amazon S3 a Cloud Storage, i dati attraversano in genere link di peering internet pubblici, dove AWS fattura i costi standard di uscita dei dati da internet. Storage Transfer Service offre un'opzione di rete privata gestita da Google per i trasferimenti da Amazon S3, consentendo ai tuoi dati di fluire tramite un routing privato sicuro fornito automaticamente da Google.

L'utilizzo di una rete privata gestita da Google riduce i costi di uscita da internet di AWS e semplifica la sicurezza di rete eliminando la necessità di configurare e gestire interconnessioni fisiche gestite dal cliente.

Vantaggi principali

L'opzione di rete privata gestita da Google offre i seguenti vantaggi operativi e finanziari per i trasferimenti Amazon S3:

  • Riduci i costi di traffico in uscita da internet: il trasferimento da Amazon S3 tramite la rete privata gestita da Google aggira le tariffe standard di traffico in uscita da internet di AWS. Non paghi costi di uscita da internet di AWS S3; paghi invece una tariffa di elaborazione dei dati per GiB prevedibile a Google Cloud. Per i dettagli, consulta la pagina dei prezzi. Vengono comunque applicati i costi standard delle richieste API AWS (ad esempio le operazioni Amazon S3 LIST, GET e HEAD) in base al programma dei prezzi di AWS.

  • Elimina l'esposizione a internet pubblico: i dati vengono trasferiti direttamente tramite la connessione di interconnessione privata gestita da Google tra AWS e Google Cloud. Poiché i pacchetti non attraversano mai le tabelle di routing di internet pubblico, elimini il rischio di intercettazione pubblica semplificando al contempo la conformità del firewall e zero-trust.

  • Manutenzione dell'infrastruttura zero: a differenza di una rete privata gestita dal cliente, non devi eseguire il provisioning, la configurazione o pagare tariffe ricorrenti per le porte per le interconnessioni fisiche (come Cloud Interconnect o AWS Direct Connect), i gateway VPN o il routing DNS personalizzato. Google gestisce completamente lo stack di networking privato end-to-end.

  • Deployment istantaneo senza tempi di risposta: la configurazione di circuiti di interconnessione dedicati può richiedere settimane. Con una rete privata gestita da Google, puoi iniziare immediatamente il trasferimento tramite routing privato, senza installare o gestire agenti di trasferimento.

Considerazioni su larghezza di banda e prestazioni

Tutti i job Storage Transfer Service in tutti i progetti che utilizzano la rete privata gestita da Google condividono una capacità di rete in pool comune. Durante i periodi di picco di utilizzo globale, le velocità di trasferimento potrebbero subire limitazioni o un aumento della latenza.

I carichi di lavoro costituiti principalmente da oggetti di grandi dimensioni sono più influenzati dall'utilizzo elevato del pool rispetto ai carichi di lavoro costituiti principalmente da oggetti più piccoli. Se il tuo workload richiede una larghezza di banda dedicata senza contesa del pool condiviso, valuta la possibilità di configurare una rete privata gestita dal cliente.

Regioni AWS supportate

L'opzione di rete privata gestita da Google è disponibile per i trasferimenti senza agenti dalle seguenti regioni Amazon S3:

ap-east-1
ap-northeast-1
ap-northeast-2
ap-northeast-3
ap-south-1
ap-south-2
ap-southeast-1
ca-central-1
ca-west-1
eu-central-1
eu-central-2
eu-north-1
eu-south-1
eu-south-2
eu-west-1
eu-west-2
eu-west-3
us-east-1
us-east-2
us-west-1
us-west-2
 

Prima di iniziare

Prima di creare il trasferimento, devi configurare IAM e le autorizzazioni di origine.

Configurare le autorizzazioni IAM

Segui le istruzioni riportate in Autorizzazioni di trasferimento senza agenti per concedere le autorizzazioni Google Cloud richieste.

Configura l'accesso al bucket S3

Segui le istruzioni riportate in Configurare l'accesso a un'origine: Amazon S3 per configurare l'accesso ai tuoi dati in Amazon S3.

Crea un trasferimento di rete privata gestita da Google

Puoi attivare l'opzione di rete privata gestita da Google quando crei un nuovo job di trasferimento o quando aggiorni una specifica di trasferimento Amazon S3 esistente utilizzando la console Google Cloud o l'API REST.

Console

L'opzione di rete privata gestita da Google è attivata con una casella di controllo nel passaggio Scegli impostazioni della creazione di un job di trasferimento.

Per creare un nuovo job utilizzando la rete privata gestita da Google:

  1. Vai alla pagina Storage Transfer Service nella console Google Cloud .

    Vai a Storage Transfer Service

  2. Fai clic su Crea job di trasferimento. Viene visualizzata la pagina Crea un job di trasferimento.

  3. In Tipo di origine, seleziona Amazon S3.

  4. Come Tipo di destinazione, seleziona Google Cloud Storage.

  5. Seleziona la modalità di programmazione. I trasferimenti batch vengono eseguiti una tantum o in base a una pianificazione. Trasferimenti basati su eventi monitorano continuamente l'origine e trasferiscono i dati quando vengono aggiunti o modificati.

    Per configurare un trasferimento basato su eventi, segui le istruzioni riportate in Trasferimenti basati su eventi.

  6. Fai clic su Passaggio successivo.

  7. Nel campo Nome bucket o cartella, inserisci il nome del bucket di origine.

    Il nome del bucket è quello visualizzato nella Console di gestione AWS.

  8. Seleziona il metodo di autenticazione Amazon Web Services (AWS). Per maggiori dettagli, consulta Configurare l'accesso a un'origine: Amazon S3.

    • Risorsa secret: seleziona questa opzione per utilizzare una credenziale Amazon salvata in Secret Manager. Seleziona un secret dall'elenco o inseriscine uno manualmente nel formato projects/PROJECT_NUMBER/secrets/SECRET_NAME.

    • Chiave di accesso: inserisci la chiave di accesso nel campo ID chiave di accesso e il segreto associato alla chiave di accesso nel campo Chiave di accesso segreta.

    • Ruolo AWS IAM per la federazione delle identità: inserisci l'ARN nel campo ARN del ruolo AWS IAM, con la seguente sintassi:

      • Regioni AWS standard:

        arn:aws:iam::AWS_ACCOUNT:role/AWS_ROLE_NAME
      • Regioni AWS GovCloud:

        arn:aws-us-gov:iam::AWS_ACCOUNT:role/AWS_ROLE_NAME

      Sostituisci quanto segue:

      • AWS_ACCOUNT: L'ID account AWS senza trattini.
      • AWS_ROLE_NAME: il nome del ruolo AWS. Se la tua organizzazione utilizza i percorsi per organizzare i ruoli, includi il percorso con il nome del ruolo. Ad esempio, developers/transfer_user.

      Per saperne di più sugli ARN, consulta ARN IAM.

  9. Se si tratta di un trasferimento basato su eventi, inserisci l'ARN della coda Amazon SQS, che ha il seguente formato:

    • Regioni AWS standard:

      arn:aws:sqs:us-east-1:1234567890:event-queue
    • Regioni AWS GovCloud:

      arn:aws-us-gov:sqs:us-gov-east-1:1234567890:event-queue
  10. Se vuoi, scegli di filtrare gli oggetti per prefisso, per data dell'ultima modifica o per classe di archiviazione. Se hai specificato una cartella come posizione di origine, i filtri dei prefissi sono relativi a quella cartella. Ad esempio, se l'origine è my-test-bucket/path/, un filtro di inclusione di file include tutti i file che iniziano con my-test-bucket/path/file.

  11. Fai clic su Passaggio successivo.

  12. Nel campo Bucket o cartella, inserisci il nome del bucket e (facoltativamente) della cartella di destinazione oppure fai clic su Sfoglia per selezionare un bucket da un elenco di bucket esistenti nel progetto corrente. Per creare un nuovo bucket, fai clic su Icona del bucket Crea nuovo bucket.

  13. Fai clic su Passaggio successivo.

  14. Scegli le opzioni di pianificazione:

    Nota: Storage Transfer Service mostra le pianificazioni dei job di trasferimento nel tuo fuso orario locale, ma memorizza gli orari in Coordinated Universal Time (UTC). Se sei interessato dall'ora legale, potresti notare una modifica alla pianificazione dei job di trasferimento all'inizio o alla fine dell'ora legale.

    1. Dall'elenco a discesa Esegui una volta, seleziona una delle seguenti opzioni:

      • Esegui una volta: esegue un singolo trasferimento, a partire da un'ora che selezioni.
      • Esegui ogni giorno: esegue un trasferimento ogni giorno, a partire dall'ora che selezioni.

        Puoi inserire una Data di fine facoltativa o lasciare il campo Data di fine vuoto per eseguire il trasferimento in modo continuo.

      • Esegui ogni settimana: esegue un trasferimento settimanale a partire dall'ora che selezioni.
      • Esegui con frequenza personalizzata: esegue un trasferimento con una frequenza selezionata. Puoi scegliere di ripetere il trasferimento a intervalli regolari di ore, giorni o settimane.

        Puoi inserire una Data di fine facoltativa o lasciare il campo Data di fine vuoto per eseguire il trasferimento in modo continuo.

      • Esegui on demand: non verrà attivata un'esecuzione quando viene creato questo job di trasferimento. Dovrai avviare manualmente il job.
    2. Dall'elenco a discesa A partire da ora, seleziona una delle seguenti opzioni:

      • A partire da ora: avvia il trasferimento dopo che fai clic su Crea.
      • A partire dal: avvia il trasferimento nella data e nell'ora selezionate. Fai clic su Calendario per visualizzare un calendario per selezionare la data di inizio.
  15. Fai clic su Passaggio successivo.

  16. Scegli le impostazioni per il job di trasferimento.

    1. Nel campo Descrizione, inserisci una descrizione del trasferimento. Come best practice, inserisci una descrizione significativa e univoca in modo da poter distinguere i job.

    2. (Facoltativo) Fornisci un manifest per specificare gli oggetti esatti da trasferire.

    3. Nella sezione Opzioni metadati, seleziona la classe di archiviazione e il comportamento dell'ora di creazione che preferisci. Per i dettagli, vedi Conservazione dei metadati.

    4. In Quando sovrascrivere, seleziona una delle seguenti opzioni:

      • Mai: non sovrascrive un file di destinazione se il file di origine ha lo stesso nome. Il file di origine viene ignorato.
      • Se diverso: sovrascrive i file di destinazione se il file di origine con lo stesso nome ha valori di ETag o checksum diversi.
      • Sempre: sovrascrive sempre i file di destinazione quando il file di origine ha lo stesso nome, anche se sono identici.
    5. In Quando eliminare, seleziona una delle seguenti opzioni:

      • Mai: non eliminare mai i file dall'origine o dalla destinazione.
      • Elimina i file dall'origine dopo il trasferimento: elimina i file dall'origine dopo il trasferimento alla destinazione. Se un file di origine non viene trasferito, ad esempio perché esiste già nella destinazione, non viene eliminato.

        Importante: se non hai un backup locale, questa opzione è un'azione irreversibile.

      • Elimina i file dalla destinazione se non sono presenti anche nell'origine: se i file nel bucket Cloud Storage di destinazione non sono presenti anche nell'origine, vengono eliminati dal bucket Cloud Storage.

        Questa opzione garantisce che il bucket Cloud Storage di destinazione corrisponda esattamente all'origine.

    6. Scegli le opzioni di routing di rete:

      • Seleziona Utilizza la rete privata gestita.
    7. In Opzioni di logging, seleziona Abilita il logging in Cloud Logging se vuoi generare un record granulare delle azioni eseguite su ogni file trasferito. Si applicano i costi di Cloud Logging. Per maggiori dettagli, vedi Azioni di trasferimento dei log.

    8. (Facoltativo) Seleziona Ricevi aggiornamenti sullo stato dell'operazione di trasferimento tramite notifiche Cloud Pub/Sub, seleziona l'argomento Pub/Sub e scegli gli eventi che attivano le notifiche. Per maggiori dettagli, consulta Notifiche Pub/Sub.

    9. In Scegli account di servizio account, seleziona l'identità da utilizzare:

      • Service agent Storage Transfer Service: al service agent gestito da Google predefinito viene concesso automaticamente l'accesso ai bucket di origine e di destinazione.
      • Service agent gestito dall'utente: utilizza un service account personalizzato che hai creato. Prima di selezionare questa opzione, assicurati che al tuoaccount di serviziot sia stato concesso l'accesso al bucket di origine, al bucket di destinazione e a Pub/Sub. Vedi Utilizzare un service agent gestito dall'utente.
  17. Fai clic su Crea per creare il job di trasferimento.

gcloud CLI

gcloud CLI non supporta la configurazione dei trasferimenti su una rete privata gestita da Google. Utilizza la console Google Cloud o l'API REST per attivare questa opzione.

Librerie client

Le librerie client di Storage Transfer Service non supportano la configurazione dei trasferimenti su una rete privata gestita da Google. Utilizza la console Google Cloud o l'API REST per abilitare questa opzione.

API REST

Per configurare un trasferimento utilizzando l'API REST, imposta il campo booleano transferSpec.awsS3DataSource.managedPrivateNetwork su true all'interno del payload della richiesta JSON quando chiami transferJobs.create o transferJobs.patch.

Richiesta HTTP

POST https://storagetransfer.googleapis.com/v1/transferJobs

Corpo della richiesta

{
  "description": "S3 to Cloud Storage over Google-managed private network",
  "status": "ENABLED",
  "projectId": "PROJECT_ID",
  "transferSpec": {
    "awsS3DataSource": {
      "bucketName": "AWS_SOURCE_NAME",
      "managedPrivateNetwork": true,
      "awsAccessKey": {
        "accessKeyId": "AWS_ACCESS_KEY_ID",
        "secretAccessKey": "AWS_SECRET_ACCESS_KEY"
      }
    },
    "gcsDataSink": {
      "bucketName": "GCS_SINK_NAME"
    },
    "transferOptions": {
      "overwriteWhen": "DIFFERENT",
      "deleteObjectsFromSourceAfterTransfer": false
    }
  }
}

Questo esempio utilizza le credenziali di accesso AWS per l'autenticazione. Consulta Configurare l'accesso ad Amazon S3 per informazioni dettagliate sull'utilizzo dell'identità federata o delle credenziali in Secret Manager.

Monitoraggio e verifica del routing della rete privata

Dopo aver avviato il job di trasferimento, verifica che i dati vengano inviati tramite la rete privata gestita da Google:

  1. Cloud Logging: quando transfer-logs sono abilitati (--log-actions=COPY,DELETE,FAILED), esamina i log strutturati per la tua operazione di trasferimento. I metadati della connessione nel log delle azioni COPY confermano la replica riuscita sul percorso di rete privata.

  2. Verifica della fatturazione: controlla le dashboard di fatturazione di AWS e Google Cloud. Nella fattura AWS, vedrai addebiti pari a zero per il trasferimento di dati in uscita su internet pubblico (DataTransfer-Out-Bytes) per gli oggetti trasferiti. Al contrario, la tariffa per l'elaborazione dei dati per GiB viene visualizzata nella fattura Google Cloud in Storage Transfer Service.

Opzioni di routing di rete alternative

Se la rete privata gestita da Google non soddisfa i requisiti del tuo workload, Storage Transfer Service supporta diverse altre opzioni di routing di rete per Amazon S3:

  • Routing internet pubblico: trasferimenti di dati tramite link di peering internet pubblici standard tra Amazon S3 e Google Cloud. Tutti i comandi API, le intestazioni di autenticazione e i flussi di dati degli oggetti vengono criptati end-to-end in transito utilizzando HTTPS con Transport Layer Security (TLS 1.3). Si applicano le tariffe standard per il traffico in uscita da internet di AWS. Per maggiori dettagli, consulta Trasferimento da Amazon S3.

  • Rete privata gestita dal cliente: i dati attraversano la tua infrastruttura di connettività ibrida preconfigurata (ad esempio Cloud Interconnect, Cloud VPN o AWS Direct Connect) tramite indirizzi IP privati. Questa opzione ti offre il pieno controllo dell'architettura e una larghezza di banda di rete dedicata e prevedibile. Per maggiori dettagli, vedi Trasferimenti su una rete privata gestita dal cliente.

  • Routing CDN Amazon CloudFront: i dati vengono recuperati tramite una distribuzione Amazon CloudFront davanti al bucket S3. A seconda del livello di prezzo di AWS CloudFront e del volume di dati, questo può ridurre i costi di uscita da internet rispetto ai download S3 pubblici diretti. Per maggiori dettagli, vedi Trasferimento da S3 tramite CloudFront.