Copier des données depuis ou vers des instances

Cette page vous explique comment copier des données à partir :

  • Buckets Cloud Storage vers partages de fichiers Filestore
  • des ordinateurs de votre environnement vers les partages de fichiers Filestore ;
  • des partages de fichiers Filestore vers des buckets Cloud Storage ;

Nous vous recommandons les options suivantes pour transférer de gros volumes de données:

Avant de commencer

Pour suivre ces instructions, vous devez installer la CLI gcloud.

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

Pour copier des données d'un bucket Cloud Storage vers un partage de fichiers Filestore installé sur une instance de VM Compute Engine, utilisez la commande gcloud storage rsync. Cette commande fonctionne sur les VM Linux et Windows. Pour copier des données sur des instances de VM Linux, vous pouvez également utiliser des commandes standards telles que rsync.

Linux

  1. Dans la console Google Cloud, accédez à la page "Instances de VM".

    Accédez à la page des instances Compute Engine.

  2. Choisissez une instance de machine virtuelle Compute Engine sur laquelle le partage de fichiers Filestore cible est installé, puis cliquez sur SSH pour ouvrir un terminal sur cette instance de machine virtuelle.

  3. Copiez les données sur le partage de fichiers Filestore installé en exécutant la commande suivante. Pour synchroniser de manière récursive les sous-répertoires de l'emplacement spécifié, utilisez l'option --recursive avec la commande gcloud storage rsync.

    gcloud storage rsync gs://bucket mount-directory
    

    où :

    • bucket est le bucket, le répertoire ou le sous-répertoire Cloud Storage à partir duquel copier les données.
    • mount-directory est le répertoire du client sur lequel le partage de fichiers Filestore est installé.

Exemple

La commande suivante copie les données du bucket data et de tous les sous-répertoires dans le répertoire /mnt/filer.

gcloud storage rsync gs://data /mnt/filer --recursive

Windows

  1. Dans la console Google Cloud, accédez à la page "Instances de VM".

    Accédez à la page des instances Compute Engine.

  2. Choisissez une instance de VM Compute Engine dont le partage de fichiers Filestore cible est mappé à un lecteur, puis cliquez sur RDP pour ouvrir une connexion de bureau à distance à cette VM.

  3. Copiez les données sur le partage de fichiers Filestore mappé en exécutant la commande suivante. Pour synchroniser de manière récursive les sous-répertoires de l'emplacement spécifié, utilisez l'option --recursive avec la commande gcloud storage rsync.

    gcloud storage rsync gs://bucket mount-directory
    

    où :

    • bucket est le bucket, le répertoire ou le sous-répertoire Cloud Storage à partir duquel copier les données.
    • mount-directory est le répertoire du client sur lequel le partage de fichiers Filestore est installé.

Exemple

La commande suivante copie les données du bucket data et de tous les sous-répertoires vers le lecteur Z: mappé au partage de fichiers Filestore.

gcloud storage rsync gs://data Z:\ --recursive

Copier des données depuis un ordinateur de votre environnement vers un partage de fichiers Filestore

Pour copier des données d'un ordinateur de votre environnement vers un partage de fichiers Filestore installé sur une instance de VM Linux Compute Engine, utilisez la commande gcloud compute scp . La commande gcloud compute scp ne fonctionne pas sur les instances de VM Windows.

  1. Utilisez SSH pour vous connecter à l'ordinateur contenant les données que vous souhaitez copier.
  2. Vérifiez si la gcloud CLI est installée en exécutant la commande suivante:

     which gcloud
    

    Si la gcloud CLI est installée, la commande renvoie le chemin d'installation. Si aucun chemin d'installation n'est renvoyé, suivez les instructions de la section Installer la CLI gcloud pour effectuer l'installation.

  3. Copiez des données dans le partage de fichiers Filestore installé :

     gcloud compute scp local-data-path client-name:/mount-directory --project=project-id --zone=zone
    

    où :

    • local-data-path est le chemin d'un fichier ou d'un répertoire local contenant les données que vous souhaitez copier sur l'instance. Si vous souhaitez copier les données d'autres sous-répertoires, utilisez l'option --recurse après local-data-path.
    • client-name est le nom de l'instance de VM Compute Engine sur laquelle le partage de fichiers Filestore est installé.
    • mount-directory est le répertoire du client sur lequel le partage de fichiers Filestore est installé.
    • project-id est l'ID du projet contenant l'instance de machine virtuelle cliente. Si vous avez défini le projet par défaut gcloud à l'aide de gcloud config set project project-id, vous pouvez ignorer cette option et utiliser le projet par défaut à la place.
    • zone est la zone dans laquelle se trouve l'instance de VM Compute Engine. Si vous avez défini la zone par défaut gcloud à l'aide de gcloud config set compute/zone zone, vous pouvez ignorer cette option et utiliser la zone par défaut.

Exemple

La commande suivante copie les données du répertoire local /etc/acme/data et de ses sous-répertoires dans le répertoire /mnt/filer sur l'instance de machine virtuelle nfs-client, dans le projet myproject, dans la zone us-central1-c :

gcloud compute scp /etc/acme/data --recurse nfs-client:/mnt/filer --project myproject --zone us-central1-c

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

Vous pouvez copier des données d'un partage de fichiers Filestore installé sur une instance de VM Compute Engine vers un bucket Cloud Storage à l'aide de la commande gcloud storage rsync.

Avant de continuer, assurez-vous que la VM Compute Engine peut écrire dans Cloud Storage :

  1. Dans la console Google Cloud, accédez à la page "Instances de VM".

    Accédez à la page des instances Compute Engine.

  2. Choisissez une instance de VM Compute Engine sur laquelle le partage de fichiers Filestore source est installé.

  3. Vérifiez que l'instance dispose du niveau d'accès en Lecture/Écriture :

    1. Cliquez sur le nom de l'instance pour ouvrir la page des détails de l'instance de VM.
    2. Développez les niveaux d'accès aux API Cloud et vérifiez si l'option Stockage est associée au niveau d'accès Lecture/Écriture.

Si la VM Compute Engine ne dispose pas du niveau d'accès en Lecture/Écriture, procédez comme suit :

  1. Arrêtez l'instance Compute Engine en cliquant sur Arrêter.
  2. Lorsque l'instance s'est arrêtée, cliquez sur Modifier en haut de la page.
  3. Sous Champs d'application de l'accès, sélectionnez Définir l'accès pour chaque API.
  4. Sous Stockage, sélectionnez Lecture/Écriture, puis cliquez sur Enregistrer.
  5. Une fois l'instance mise à jour, cliquez sur Démarrer en haut de la page.

Pour copier des données d'un partage de fichiers Filestore vers un bucket Cloud Storage, procédez comme suit :

Linux

  1. Dans la console Google Cloud, accédez à la page "Instances de VM".

    Accédez à la page des instances Compute Engine.

  2. Choisissez une instance de VM Compute Engine sur laquelle le partage de fichiers Filestore source est installé, puis cliquez sur SSH pour ouvrir un terminal sur cette instance de VM.

  3. Copiez les données du partage de fichiers Filestore installé en exécutant la commande suivante. Pour synchroniser de manière récursive les sous-répertoires de l'emplacement spécifié, utilisez l'option --recursive avec la commande gcloud storage rsync.

    gcloud storage rsync mount-directory gs://bucket
    

    où :

    • mount-directory est le répertoire du client sur lequel le partage de fichiers Filestore est installé.
    • bucket est le bucket, le répertoire ou le sous-répertoire Cloud Storage dans lequel copier des données.

Exemple

La commande suivante copie les données du répertoire /mnt/filer et de tous les sous-répertoires vers le bucket archive.

gcloud storage rsync /mnt/filer gs://archive --recursive

Windows

  1. Dans la console Google Cloud, accédez à la page "Instances de VM".

    Accédez à la page des instances Compute Engine.

  2. Choisissez une instance de VM Compute Engine sur laquelle le partage de fichiers Filestore source est installé, puis cliquez sur RDP pour ouvrir une connexion de bureau à distance à cette VM.

  3. Copiez les données du partage de fichiers Filestore mappé en exécutant la commande suivante. Pour synchroniser de manière récursive les sous-répertoires de l'emplacement spécifié, utilisez l'option --recursive avec la commande gcloud storage rsync.

    gcloud storage rsync mapped-drive gs://bucket
    

    où :

    • mapped-drive est le lecteur du client avec lequel le partage de fichiers Filestore est mappé.
    • bucket est le bucket, le répertoire ou le sous-répertoire Cloud Storage dans lequel copier des données.

Exemple

La commande suivante copie les données du lecteur mappé Z: et de tous les sous-répertoires dans le bucket archive.

gcloud storage rsync Z:\ gs://archive --recursive

Dépannage

La copie de données de Cloud Storage vers une instance Filestore à l'aide de gcloud CLI peut être lente. Pour en savoir plus sur l'amélioration des performances, consultez Améliorer les performances sur les ressources Google Cloud.