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. Configurer 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 depuis votre ligne de commande locale, configurez Google Cloud SDK.

    Installez et initialisez le SDK Google Cloud.

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

    gcloud components update
    
  5. Créez un compte de service. Dans la section Autoriser ce compte de service à accéder au projet, procédez comme suit : attribuer 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, créer une seule clé. Téléchargez le fichier de clé et enregistrez-le pour une étape ultérieure.

  6. Attribuez des rôles à un compte utilisateur. Dans la stratégie 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 des utilisateurs.

Configurer Filestore

  1. Créer 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 Filestore instance résident tous dans la même région.

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

    3. Facultatif: Pour les 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 compte de service unique fonctionnant pour le compte 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 ayant accès à d'autres aux 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 à l'aide de SSH. Depuis l'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 de la 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 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 copiées précédemment. Exemple :sa-key.json

    6. Toujours à partir de 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 une VM Compute Engine ultérieure instances, 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 du Instance de VM Compute Engine. Exemple :/usr/local/my_dir
    8. Installer 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,intr IP_ADDRESS:/FILE_SHARE MY_DIRECTORY
      

      où :

      • IP_ADDRESS est l'adresse IP de l'instance Filestore. Vous le trouverez dans le 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 que vous avez mappé. à l'étape précédente. Il s'agit d'un répertoire de la VM Compute Engine l'instance sur laquelle vous souhaitez installer l'instance Filestore.

    9. Vérifiez le point d'installation:

      mount -l | grep nfs
      

      Cela renvoie le résultat suivant ou un résultat similaire:

      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
      

      Cela renvoie le résultat suivant ou un résultat similaire:

      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 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. Autoriser l'agent de service pour l'ensemble du service de transfert de stockage caractéristiques.

    1. Saisissez la commande suivante :

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

      où :

      • KEY_FILE est le chemin d'accès local relatif au fichier de clé que vous copiées 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 qu'elles ont été propagées, les rôles suivants sont attribués:

      • Pub/Sub Editor

      • Storage Admin

  3. Installer des agents de transfert

    Chaque agent de service de transfert de stockage nécessite quatre processeurs virtuels 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. La 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 est le 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 le job de transfert

  1. Créer un job de transfert pour déplacer les 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. Exemple : /home/usr/my_dir.

Surveiller l'état des transferts

Console

Surveillez l'état de votre transfert à partir des jobs 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 les éléments suivants ou des éléments similaires:

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