Transférer de grands ensembles de données de Cloud Storage vers Filestore

Utiliser le service de transfert de stockage pour déplacer de grands ensembles de données de Cloud Storage vers votre Filestore des partages de fichiers.

Workflow montrant des données en cours de déplacement de Cloud Storage vers un Filestore
à l'aide du service de transfert de stockage. L'instance Filestore est installée
sur plusieurs instances Compute Engine.

Service de transfert de stockage permet de transférer rapidement et de façon sécurisée de grands ensembles de données entre object (objet) et de stockage de fichiers, que votre les données sont hébergées dans Cloud Storage, sur site ou par des fournisseurs de services cloud tiers.

Le service de transfert de stockage prend en charge les transferts accélérés d'ensembles de données volumineux, pour traiter des centaines de To de données ou plus. Migrer vos ensembles de données volumineux vers le cloud pour exploiter les opérations d'analyse et de machine learning disponibles les instances Compute Engine sous-jacentes ; l'emplacement d'installation de vos instances Filestore.

Avec le service de transfert de stockage, vous pouvez créer des transferts gérés par Google configurer des transferts auto-hébergés afin de bénéficier d'un contrôle total sur le routage et la l'utilisation de la bande passante.

Transférer des données d'un bucket Cloud Storage vers un partage de fichiers Filestore

Transférer des données de Cloud Storage vers un partage de fichiers Filestore à l'aide de Le service de transfert de stockage nécessite les tâches suivantes:

  1. configurer votre environnement ;
  2. Configurez Filestore.
  3. Configurer le service de transfert de stockage
  4. Créez et lancez le job de transfert.

Les sections suivantes vous expliquent chaque tâche.

Configurer votre environnement

  1. Sélectionnez ou créez un projet.

    Pour les besoins de ce guide, assurez-vous que vos ressources source et de destination se trouvent dans le même projet.

    Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.

    Si vous testez Filestore et que vous ne prévoyez pas de conserver les ressources que vous créez, nous vous recommandons de créer un projet au lieu de sélectionner un projet existant. Une fois les tests terminés, vous pouvez supprimer le projet, en supprimant toutes les ressources associées au projet.

    Accéder au sélecteur de projet

  2. Activez la facturation.

    Vérifiez que la facturation est activée pour votre projet Google Cloud. Découvrez comment vérifier que la facturation est activée pour votre projet.

  3. Activez les API suivantes:

    • API Filestore

    • API Resource Manager

    • API Pub/Sub

    • API Cloud Storage

    • API Storage Transfer

    • API Cloud Logging

    • API Compute Engine

    • API Service Usage

    • API Identity and Access Management

  4. Facultatif: gcloud, un composant majeur de Google Cloud SDK, est installé. sur chaque VM Compute Engine. Si vous effectuez l'une des étapes suivantes à partir de votre ligne de commande locale, configurez le SDK Google Cloud.

    Installez et initialisez le SDK Google Cloud.

    Si vous avez déjà installé le SDK Google Cloud, assurez-vous de disposer de la dernière version disponible en exécutant :

    gcloud components update
    
  5. Créez un compte de service. Dans la section Grant this service account access to project (Autoriser ce compte de service à accéder au projet), attribuez les rôles suivants :

    • Owner

    • Project IAM Admin

    • Role Administrator

    • Pub/Sub Editor

    • Cloud Filestore Editor

    • Storage Object Admin

    • Storage Transfer Admin

    • Storage Transfer Agent

    1. Copiez et enregistrez le nom du compte de service que vous avez créé pour une étape ultérieure.

    2. Créer une clé de compte de service pour le compte que vous venez de créer. Pour les besoins de ce guide, ne créez qu'une seule clé. Téléchargez le fichier de clé et enregistrez-le pour une utilisation ultérieure.

  6. Attribuez des rôles à un compte utilisateur. Sur la page IAM, recherchez votre compte utilisateur et attribuez-lui les rôles suivants :

    • Owner

    • Project IAM Admin

    • Role Administrator

    • Storage Transfer Admin

    • Storage Admin

    Pour en savoir plus, consultez la section Autorisations de l'utilisateur.

Configurer Filestore

  1. Créez une instance Filestore. Lors de la création de l'instance, appliquez les spécifications suivantes:

    1. Assurez-vous que le bucket Cloud Storage, la VM cliente et l'instance Filestore se trouvent dans la même région.

    2. Sélectionnez un emplacement régional ou enterprise.

    3. Facultatif : Pour des ensembles de données plus volumineux, demandez une augmentation de quota.

    4. Copiez le nom et l'adresse IP de l'instance, puis enregistrez-les pour une étape ultérieure.

  2. Installez une instance Filestore sur une machine cliente.

    Ce guide décrit un transfert qui utilise quatre VM Compute Engine en tant que des machines clientes NFS. Vous allez créer un seul compte de service qui fonctionne au nom des quatre machines clientes. Chaque machine cliente dispose Agents de service de transfert de stockage installés.

    1. Créez une instance de VM Compute Engine avec accès à d'autres services Google Cloud.

      1. Configurer une VM avec les spécifications suivantes:

        1. Lorsque vous spécifiez un emplacement, assurez-vous que le bucket Google Cloud, la VM cliente et l'instance Filestore se trouvent tous dans la même région.

        2. Chaque agent de service de transfert de stockage a besoin de quatre processeurs virtuels et 8 Go de RAM. Pour des performances optimales, exécutez plusieurs agents par VM. Pour les besoins de ce guide, provisionnez un e2-standard-32 Instance de machine virtuelle Compute Engine.

        3. Dans la section Identité et accès à l'API, spécifiez les éléments suivants:

          1. Dans la liste déroulante Comptes de service, sélectionnez le service que vous venez de créer.
    2. Une fois l'instance de VM Compute Engine créée, connectez-vous à la machine à l'aide de SSH. Sur la page Instance de VM Compute Engine, recherchez l'instance que vous avez créée, puis cliquez sur SSH.

    3. Utilisez un éditeur de texte tel que Vim pour créer une copie du fichier de clé du compte de service et l'enregistrer temporairement localement sur la VM. Par exemple, service-account-key.json.

    4. Installez Docker sur la VM.

    5. gcloud est déjà installé sur l'instance de VM Compute Engine. Depuis la commande SSH saisissez la commande suivante pour autoriser le compte de service pour utiliser gcloud:

      gcloud auth activate-service-account ACCOUNT --key-file=KEY_FILE
      

      où :

      • ACCOUNT est l'adresse e-mail du compte de service que vous avez créé. Exemple : my-service-account@my-project.iam.gserviceaccount.com.

      • KEY_FILE est le chemin d'accès local relatif au fichier de clé que vous avez copié précédemment. Exemple :sa-key.json

    6. Toujours depuis la ligne de commande SSH, installez NFS :

      sudo apt-get -y update && sudo apt-get install nfs-common
      
    7. Créez un répertoire local à mapper au partage de fichiers Filestore. Lorsque vous répétez ces étapes pour les instances de VM Compute Engine suivantes, utilisez le même nom et le même chemin d'accès :

      sudo mkdir -p MY_DIRECTORY
      

      où :

      • MY_DIRECTORY est le nom du répertoire POSIX local de l'instance de VM Compute Engine. Exemple :/usr/local/my_dir
    8. Installez le partage de fichiers associé à l'instance Filestore en exécutant la commande mount. Vous pouvez utiliser toutes les options d'installation NFS. Pour des performances optimales, consultez les recommandations d'installation NFS dans Installer un partage de fichiers sur une instance de VM Compute Engine:

      sudo mount -o rw IP_ADDRESS:/FILE_SHARE MY_DIRECTORY
      

      où :

      • IP_ADDRESS est l'adresse IP de l'instance Filestore. Vous pouvez le trouver sur la page Instances Filestore.

      • FILE_SHARE est le nom du partage de fichiers sur l'instance. Exemple :my_fs_instance

      • MY_DIRECTORY est le nom du répertoire auquel vous avez mappé à l'étape précédente. Il s'agit d'un répertoire sur l'instance de VM Compute Engine où vous souhaitez installer l'instance Filestore.

    9. Confirmez le point d'installation :

      mount -l | grep nfs
      

      La réponse est semblable à la suivante :

      10.66.55.194:/my_fs_instance on /home/usr/my_dir type nfs (rw,relatime,vers=3,rsize=262144,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.66.55.194,mountvers=3,mountport=2050,mountproto=udp,local_lock=none,addr=10.66.55.194)
      

      Vous pouvez également utiliser la commande suivante :

      df -h --type=nfs
      

      La réponse est semblable à la suivante :

      Filesystem                       Size  Used Avail Use% Mounted on
      10.66.55.194:/my_fs_instance  1.0T     0  1.0T   0% /home/usr/my_dir
      
    10. Notez le chemin d'accès au répertoire POSIX local et enregistrez-le pour une étape ultérieure.

    11. Répétez les étapes précédentes pour créer trois autres instances de VM Compute Engine et installer la même instance Filestore sur chacune d'elles. Utilisez le même compte de service pour gérer les quatre VM Compute Engine. Enregistrez temporairement une copie locale de la clé du compte de service sur chaque VM.

Configurer le service de transfert de stockage

  1. Créez un pool d'agents.

  2. Autorisez l'agent de service pour toutes les fonctionnalités du service de transfert de stockage.

    1. Saisissez la commande suivante :

      gcloud transfer authorize --add-missing --creds-file=KEY_FILE
      

      où :

      • KEY_FILE correspond au chemin d'accès local relatif au fichier de clé que vous avez copié précédemment. Exemple :sa-key.json

      Notez la notification renvoyée concernant l'agent de service, puis enregistrez le associée à l'étape suivante.

    2. Après quelques minutes, l'agent de service doit apparaître dans IAM. Une fois la propagation effectuée, vérifiez que les rôles suivants sont attribués :

      • Pub/Sub Editor

      • Storage Admin

  3. Installer des agents de transfert

    Chaque agent du service de transfert de stockage nécessite 4 vCPU et 8 Go de RAM.

    1. Nous vous recommandons d'installer plusieurs agents pour maximiser la tolérance aux pannes et le scaling dynamique du service de transfert de stockage. L'exemple suivant montre comment installer trois agents sur une machine cliente. À partir de la ligne de commande SSH, exécutez la commande suivante :

      gcloud transfer agents install --pool=MY_AGENT_POOL --count=3 \
      --creds-file=MY_SERVICE_ACCOUNT_KEY_FILE
      

      où :

      • MY_AGENT_POOL correspond au nom du pool d'agents que vous avez précédemment créé. Exemple :my-agent-pool

      • MY_SERVICE_ACCOUNT_KEY_FILE est le chemin d'accès relatif clé de compte de service. Exemple : /relative/path/to/service-account-key.json.

    2. Répétez ces étapes pour chaque machine cliente.

Créer et lancer la tâche de transfert

  1. Créez une tâche de transfert pour déplacer des données de votre bucket Cloud Storage vers votre instance Filestore. Référencez le répertoire POSIX local que vous avez enregistré précédemment pour spécifier le chemin de destination. Par exemple, /home/usr/my_dir.

Surveiller l'état des transferts

Console

Surveillez l'état de votre transfert depuis la page Tâches de transfert de la console Google Cloud.

Ligne de commande

Vous pouvez surveiller l'état à l'aide de la ligne de commande :

gcloud transfer jobs monitor JOB_NAME

où :

  • JOB_NAME est le nom de votre tâche de transfert. Exemple : transferJobs/OPI6300379522015192941.

La réponse affiche ce qui suit ou quelque chose de semblable :

Polling for latest operation name...done.
Operation name: my-sts-project_transferJobs/OPI6300379522015192941_0000000001660692377
Parent job: OPI6300379522015192941
Start time: 2022-08-16T23:26:17.600981Z
SUCCESS | 100% (731.9MiB of 731.9MiB) | Skipped: 129.8kiB | Errors: 0
End time: 2022-08-16T23:27:23.429472Z

Pour en savoir plus, consultez Surveiller l'activité de l'agent. ou Détails du transfert depuis un système de fichiers.

Étape suivante