Transfert via un réseau privé géré par Google

Lorsque vous transférez des données d'Amazon S3 vers Cloud Storage, elles transitent généralement par des liens d'appairage Internet publics, où AWS facture des frais de sortie de données Internet standards. Le service de transfert de stockage propose une option de réseau privé géré par Google pour les transferts depuis Amazon S3, ce qui permet à vos données de transiter via un routage privé sécurisé provisionné automatiquement par Google.

L'utilisation d'un réseau privé géré par Google réduit les coûts de sortie Internet AWS et simplifie la sécurité du réseau en éliminant la nécessité de configurer et de gérer des interconnexions physiques gérées par le client.

Principaux avantages

L'option de réseau privé géré par Google offre les avantages opérationnels et financiers suivants pour les transferts Amazon S3 :

  • Réduction des coûts de sortie Internet : le transfert depuis Amazon S3 via le réseau privé géré par Google contourne les tarifs de sortie Internet AWS standards. Vous ne payez aucun frais de sortie Internet AWS S3. À la place, vous payez un tarif de traitement des données par Gio prévisible à Google Cloud. Pour en savoir plus, consultez la section Tarifs. Les frais de requête d'API AWS standards (tels que les opérations LIST, GET et HEAD d'Amazon S3) s'appliquent toujours conformément à la grille tarifaire AWS.

  • Suppression de l'exposition à l'Internet public : les données transitent directement via une connexion d'interconnexion privée gérée par Google entre AWS et Google Cloud. Comme les paquets ne transitent jamais par les tables de routage Internet publiques, vous éliminez le risque d'interception publique tout en simplifiant le pare-feu et la conformité avec le principe de confiance zéro.

  • Aucune maintenance de l'infrastructure : contrairement à un réseau privé géré par le client, vous n'avez pas besoin de provisionner, de configurer ni de payer de frais de port récurrents pour les interconnexions physiques (telles que Cloud Interconnect ou AWS Direct Connect), les passerelles VPN ni le routage DNS personnalisé. Google gère entièrement la pile de mise en réseau privée de bout en bout.

  • Déploiement instantané sans délai : la configuration de circuits d'interconnexion dédiés peut prendre des semaines. Avec un réseau privé géré par Google, vous pouvez commencer à transférer des données via un routage privé immédiatement, sans installer ni gérer d'agents de transfert.

Points à prendre en compte concernant la bande passante et les performances

Tous les jobs du service de transfert de stockage dans tous les projets qui utilisent le réseau privé géré par Google partagent une capacité réseau groupée commune. Pendant les périodes de pointe d'utilisation mondiale, les vitesses de transfert peuvent être limitées ou la latence peut augmenter.

Les charges de travail composées principalement d'objets volumineux sont plus affectées par une utilisation élevée du pool que celles composées principalement d'objets plus petits. Si votre charge de travail nécessite une bande passante dédiée sans contention de pool partagé, envisagez de configurer un réseau privé géré par le client.

Régions avec lesquelles AWS est compatible

L'option de réseau privé géré par Google est disponible pour les transferts sans agent depuis les régions Amazon S3 suivantes :

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
 

Avant de commencer

Avant de créer votre transfert, vous devez configurer les autorisations IAM et les autorisations sources.

Configurer les autorisations IAM

Suivez les instructions de la section Autorisations de transfert sans agent pour accorder les autorisations Google Cloud requises.

Configurer l'accès à votre bucket S3

Suivez les instructions de la section Configurer l'accès à une source : Amazon S3 pour configurer l'accès à vos données dans Amazon S3.

Créer un transfert de réseau privé géré par Google

Vous pouvez activer l'option de réseau privé géré par Google lorsque vous créez un nouveau job de transfert ou lorsque vous mettez à jour une spécification de transfert Amazon S3 existante à l'aide de la Google Cloud console ou de l'API REST.

Console

L'option de réseau privé géré par Google est activée à l'aide d'une case à cocher à l'étape Choisir les paramètres de la création d'un job de transfert.

Pour créer un job à l'aide du réseau privé géré par Google :

  1. Accédez à la page Service de transfert de stockage dans la Google Cloud console.

    Accéder au service de transfert de stockage

  2. Cliquez sur Créer un job de transfert. La page Créer un job de transfert s'affiche.

  3. Sous Type de source, sélectionnez Amazon S3.

  4. Comme Type de destination , sélectionnez Google Cloud Storage.

  5. Sélectionnez votre Mode de planification. Les transferts par lots s'exécutent de manière ponctuelle ou planifiée. Les transferts basés sur des événements surveillent en permanence la source et transfèrent les données lorsqu'elles sont ajoutées ou modifiées.

    Pour configurer un transfert basé sur des événements, suivez les instructions de la section Transferts basés sur des événements.

  6. Cliquez sur Étape suivante.

  7. Dans le champ Nom du bucket ou du dossier, saisissez le nom du bucket source.

    Le nom du bucket est celui qui apparaît dans le AWS Management Console.

  8. Sélectionnez votre méthode d'authentification Amazon Web Services (AWS). Pour en savoir plus, consultez la section Configurer l'accès à une source : Amazon S3.

    • Ressource secrète : sélectionnez cette option pour utiliser des identifiants Amazon enregistrés dans Secret Manager. Sélectionnez un secret dans la liste ou saisissez-en un manuellement au format projects/PROJECT_NUMBER/secrets/SECRET_NAME.

    • Clé d'accès : saisissez votre clé d'accès dans le champ ID de clé d'accès et le secret associé à votre clé d'accès dans le champ Clé d'accès secrète.

    • Rôle IAM AWS pour la fédération d'identité : saisissez votre ARN dans le champ ARN du rôle IAM AWS avec la syntaxe suivante :

      • Régions AWS standards :

        arn:aws:iam::AWS_ACCOUNT:role/AWS_ROLE_NAME
      • Régions AWS GovCloud :

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

      Remplacez les éléments suivants :

      • AWS_ACCOUNT : ID du compte AWS sans tirets.
      • AWS_ROLE_NAME : nom du rôle AWS. Si votre organisation utilise des chemins pour organiser les rôles, incluez le chemin avec le nom du rôle. Par exemple, developers/transfer_user.

      Pour en savoir plus sur les ARN, consultez la page ARN d'IAM.

  9. S'il s'agit d'un transfert basé sur des événements, saisissez l'ARN de la file d'attente Amazon SQS, qui se présente au format suivant :

    • Régions AWS standards :

      arn:aws:sqs:us-east-1:1234567890:event-queue
    • Régions AWS GovCloud :

      arn:aws-us-gov:sqs:us-gov-east-1:1234567890:event-queue
  10. Vous pouvez également choisir de filtrer les objets par préfixe ou par date de dernière modification. Si vous avez spécifié un dossier comme emplacement source, les filtres de préfixe sont relatifs à ce dossier. Par exemple, si votre source est my-test-bucket/path/, un filtre d'inclusion de file inclut tous les fichiers commençant par my-test-bucket/path/file.

  11. Cliquez sur Étape suivante.

  12. Dans le champ Bucket ou dossier, saisissez le nom du bucket de destination et (facultativement) le nom du dossier, ou cliquez sur Parcourir pour sélectionner un bucket dans la liste des buckets existants de votre projet actuel. Pour créer un bucket, cliquez sur Icône Bucket Créer un bucket.

  13. Cliquez sur Étape suivante.

  14. Choisissez vos options de planification :

    Remarque : Le service de transfert de stockage affiche les plannings des jobs de transfert dans votre fuseau horaire local, mais il stocke ces heures en temps universel coordonné (UTC). Si vous êtes concerné par l'heure d'été, il est possible que le calendrier soit modifié lors du passage à l'heure d'été ou du retour à l'heure d'hiver.

    1. Dans la liste déroulante Exécuter une fois, sélectionnez l'une des options suivantes :

      • Exécuter une fois : exécute un seul transfert, à partir de l' heure que vous sélectionnez.
      • Exécuter tous les jours : exécute un transfert tous les jours, à l'heure que vous sélectionnez.

        Vous pouvez saisir une Date de fin facultative ou laisser le champ Date de fin vide pour exécuter le transfert en continu.

      • Exécuter toutes les semaines : exécute un transfert toutes les semaines, à partir de l'heure que vous sélectionnez.
      • Exécuter avec une fréquence personnalisée : exécute un transfert à la fréquence que vous sélectionnez. Vous pouvez choisir de répéter le transfert à intervalles réguliers en Heures, en Jours ou en Semaines.

        Vous pouvez saisir une Date de fin facultative ou laisser le champ Date de fin vide pour exécuter le transfert en continu.

      • Exécuter à la demande : ne déclenche pas d'exécution lors de la création de ce job de transfert. Vous devrez démarrer le job manuellement.
    2. Dans la liste déroulante À partir de maintenant, sélectionnez l'une des options suivantes :

      • À partir de maintenant : lance le transfert lorsque vous cliquez sur Créer.
      • À partir de : lance le transfert à la date et à l'heure que vous sélectionnez. Cliquez sur Calendrier pour afficher un calendrier et sélectionner la date de début.
  15. Cliquez sur Étape suivante.

  16. Sélectionnez les paramètres de la tâche de transfert.

    1. Dans le champ Description, saisissez une description du transfert. Nous vous recommandons de saisir une description significative et unique afin de pouvoir distinguer les jobs.

    2. Vous pouvez également fournir un fichier manifeste pour spécifier les objets exacts à transférer.

    3. Sous Options de métadonnées, sélectionnez la classe de stockage et le comportement de l'heure de création souhaités. Pour en savoir plus, consultez la section Conservation des métadonnées.

    4. Sous Écrasement, sélectionnez l'une des options suivantes :

      • Jamais : n'écrase pas un fichier de destination si le fichier source porte le même nom. Le fichier source est ignoré.
      • S'ils sont différents : écrase les fichiers de destination si le fichier source du même nom contient d'autres ETags ou valeurs de somme de contrôle.
      • Toujours : écrase toujours les fichiers de destination lorsque le fichier source porte le même nom, même s'ils sont identiques.
    5. Sous Dans quel contexte effectuer des suppressions, sélectionnez l'une des options suivantes :

      • Jamais : ne supprime jamais les fichiers de la source ni de la destination.
      • Supprimer les fichiers de la source après leur transfert : supprime les fichiers de la source après leur transfert vers la destination. Si un fichier source n'est pas transféré, par exemple parce qu'il existe déjà dans la destination, il n'est pas supprimé.

        Important : Si vous ne disposez pas d'une sauvegarde locale, cette option est une action non réversible.

      • Supprimer les fichiers de la destination s'ils ne sont pas également dans la source : si les fichiers du bucket Cloud Storage de destination ne se trouvent pas également dans la source, supprimez-les du bucket Cloud Storage.

        Cette option garantit que le bucket Cloud Storage de destination correspond exactement à votre source.

    6. Choisir des options de routage réseau :

      • Sélectionnez Utiliser un réseau privé géré.
    7. Sous Options de journalisation, sélectionnez Activer la journalisation dans Cloud Logging si vous souhaitez générer un enregistrement précis des actions effectuées sur chaque fichier transféré. Des frais Cloud Logging s'appliquent. Pour en savoir plus, consultez la section Consigner les actions de transfert .

    8. Vous pouvez également sélectionner Suivre l'état de l'opération de transfert via les notifications Cloud Pub/Sub), sélectionner votre sujet Pub/Sub et choisir les événements qui déclenchent notifications. Pour en savoir plus, consultez la section Notifications Pub/Sub.

    9. Sous Sélectionner un type de compte de service, sélectionnez l'identité à utiliser :

      • Agent de service du service de transfert de stockage : l' agent de service géré par Google par défaut se voit automatiquement accorder l'accès aux buckets source et de destination.
      • Agent de service géré par l'utilisateur : utilisez un compte de service personnalisé que vous avez créé. Avant de sélectionner cette option, assurez que votre compte de service a été autorisé à accéder au bucket source , au bucket de destination et à Pub/Sub. Consultez la section Utiliser un agent de service géré par l'utilisateur.
  17. Cliquez sur Créer pour créer la tâche de transfert.

gcloud CLI

gcloud CLI ne permet pas de configurer les transferts sur un réseau privé géré par Google. Utilisez la Google Cloud console ou l'API REST pour activer cette option.

Bibliothèques clientes

Les bibliothèques clientes du service de transfert de stockage ne permettent pas de configurer les transferts sur un réseau privé géré par Google. Utilisez la Google Cloud console ou l' API REST pour activer cette option.

API REST

Pour configurer un transfert à l'aide de l'API REST, définissez le champ booléen transferSpec.awsS3DataSource.managedPrivateNetwork sur true dans la charge utile de votre requête JSON lorsque vous appelez transferJobs.create ou transferJobs.patch.

Requête HTTP

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

Corps de la requête

{
  "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
    }
  }
}

Cet exemple utilise des identifiants d'accès AWS pour l'authentification. Pour en savoir plus sur l'utilisation de l'identité fédérée ou des identifiants dans Secret Manager, consultez la section Configurer l'accès à Amazon S3.

Surveiller et vérifier le routage du réseau privé

Une fois votre job de transfert démarré, vérifiez que les données sortent via le réseau privé géré par Google :

  1. Cloud Logging : lorsque transfer-logs est activé (--log-actions=COPY,DELETE,FAILED), inspectez les journaux structurés de votre opération de transfert. Les métadonnées de connexion dans le journal d'action COPY confirment la réussite de la réplication sur le chemin du réseau privé.

  2. Vérification de la facturation : consultez vos tableaux de bord de facturation AWS et Google Cloud. Sur votre facture AWS, vous ne verrez aucun frais de sortie de données Internet publiques (DataTransfer-Out-Bytes) pour les objets transférés. À la place, les frais de traitement des données par Gio apparaissent sur votre facture Google Cloud sous Service de transfert de stockage.

Autres options de routage réseau

Si le réseau privé géré par Google ne répond pas aux exigences de votre charge de travail, le service de transfert de stockage est compatible avec plusieurs autres options de routage réseau pour Amazon S3 :

  • Routage Internet public : transferts de données via des liens d'appairage Internet publics standards entre Amazon S3 et Google Cloud. Toutes les commandes d'API, les en-têtes d'authentification et les flux de données d'objet sont chiffrés de bout en bout en transit à l'aide du protocole HTTPS avec Transport Layer Security (TLS 1.3). Les tarifs de sortie de données Internet AWS standards s'appliquent. Pour en savoir plus, consultez la section Transférer depuis Amazon S3.

  • Réseau privé géré par le client : les données transitent par votre propre infrastructure de connectivité hybride préconfigurée (telle que Cloud Interconnect, Cloud VPN ou AWS Direct Connect) via des adresses IP privées. Cette option vous offre un contrôle architectural total et une bande passante réseau dédiée et prévisible. Pour en savoir plus, consultez la section Transferts via un réseau privé géré par le client.

  • Routage CDN Amazon CloudFront : les données sont récupérées via une distribution Amazon CloudFront devant votre bucket S3. En fonction de votre niveau tarifaire AWS CloudFront et du volume de données, cela peut réduire les frais de sortie Internet par rapport aux téléchargements S3 publics directs. Pour en savoir plus, consultez la section Transférer depuis S3 via CloudFront.