Copie de données

Cet article explique comment copier des données vers ou depuis une instance Cloud Filestore à l'aide des outils de ligne de commande gsutil ou gcloud.

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

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

Linux

  1. Accédez à la page Instances de VM.
  2. Choisissez une instance de VM cliente sur laquelle le partage de fichiers Cloud Filestore cible est installé, puis cliquez sur SSH pour ouvrir une fenêtre de terminal sur cette instance de VM.
  3. Pour copier les données dans le partage de fichiers Cloud Filestore installé, exécutez la commande ci-dessous en remplaçant [VALUES_IN_BRACKETS] par les valeurs appropriées. Utilisez l'option -r avec la commande gsutil rsync pour inclure les sous-répertoires de l'emplacement spécifié :

      gsutil 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 dans lequel le partage de fichiers Cloud Filestore est installé.

Exemple

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

gsutil rsync -r gs://data /mnt/filer

Windows

  1. Accédez à la page Instances de VM.
  2. Choisissez une instance de VM cliente sur laquelle le partage de fichiers Cloud Filestore cible est mappé avec un lecteur, puis cliquez sur RDP pour établir une connexion Bureau à distance avec cette VM.
  3. Ouvrez une fenêtre de terminal et exécutez la commande suivante pour mapper un lecteur avec le partage de fichiers Cloud Filestore :

    net use [DRIVE_LETTER]: \\[IP_ADDRESS]\[FILESHARE]
    

    Où :

    • [DRIVE_LETTER] est le lecteur que vous souhaitez mapper avec le partage de fichiers Cloud Filestore.
    • [IP_ADDRESS] est l'adresse IP de l'instance Cloud Filestore.
    • [FILESHARE] est le nom du partage de fichiers sur l'instance Cloud Filestore.

    Par exemple : net use Z: \\10.123.45.67\my_share.

  4. Pour copier les données dans le partage de fichiers Cloud Filestore mappé, exécutez la commande ci-dessous en remplaçant [VALUES_IN_BRACKETS] par les valeurs appropriées. Utilisez l'option -r avec la commande gsutil rsync pour inclure les sous-répertoires de l'emplacement spécifié :

      gsutil rsync gs://[BUCKET] [MAPPED_DRIVE]
    

    Où :

    • [BUCKET] est le bucket, le répertoire ou le sous-répertoire Cloud Storage à partir duquel copier les données.
    • [MAPPED_DRIVE] est le lecteur du client avec lequel le partage de fichiers Cloud Filestore est mappé.

Exemple

La commande suivante copie les données du bucket data et de tous ses sous-répertoires sur le lecteur "Z:", qui est mappé avec le partage de fichiers Cloud Filestore.

gsutil rsync -r gs://data Z:\

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

Vous pouvez utiliser la commande gcloud compute scp pour copier des données depuis un ordinateur de votre environnement vers un partage de fichiers Cloud Filestore installé sur une instance de VM Linux Compute Engine. 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 l'outil gcloud est installé en exécutant la commande suivante :

    which gcloud
    

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

  3. Exécutez la commande suivante pour copier les données sur le partage de fichiers Cloud Filestore installé (en remplaçant [VALUES_IN_BRACKETS] par les valeurs appropriées) :

    gcloud compute scp [LOCAL_DATA_PATH] \
        [CLIENT_NAME]:/[MOUNT_DIRECTORY] \
        --project [PROJECT_ID] --zone [LOCATION]
    

    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. Utilisez l'indicateur --recurse après [LOCAL_DATA_PATH] si vous souhaitez copier des données à partir d'autres sous-répertoires.
    • [CLIENT_NAME] est le nom de l'instance de machine virtuelle cliente sur laquelle le partage de fichiers Cloud Filestore est installé.
    • [MOUNT_DIRECTORY] est le répertoire de l'instance de machine virtuelle cliente dans lequel le partage de fichiers Cloud Filestore est installé.
    • [PROJECT_ID] est l'ID du projet GCP contenant l'instance de machine virtuelle cliente. Vous pouvez ignorer cet indicateur et utiliser à la place le projet gcloud par défaut si vous avez défini ce dernier à l'aide de la commande gcloud config set project [PROJECT_NAME].
    • [LOCATION] est la zone GCP dans laquelle se trouve l'instance de machine virtuelle cliente. Vous pouvez ignorer cet indicateur et utiliser à la place l'emplacement gcloud par défaut si vous avez défini ce dernier à l'aide de la commande gcloud config set compute/zone [ZONE].

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 de l'instance de machine virtuelle nfs-client du projet myproject, qui se trouve 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 depuis un partage de fichiers Cloud Filestore vers un bucket Cloud Storage

La commande gsutil rsync vous permet de copier des données depuis un partage de fichiers Cloud Filestore installé sur une instance de VM Compute Engine vers un bucket Cloud Storage.

Avant de procéder, assurez-vous que la VM cliente peut accéder en écriture à Cloud Storage.

  1. Accéder à la page Instances de VM
  2. Choisissez une instance de VM cliente sur laquelle le partage de fichiers Cloud 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 cliente ne dispose pas du niveau d'accès en Lecture/Écriture, procédez comme suit :

  1. Cliquez sur Arrêter en haut de la page pour arrêter l'instance.
  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 Cloud Filestore vers un bucket Cloud Storage, procédez comme suit :

Linux

  1. Accédez à la page Instances de VM.
  2. Choisissez une instance de VM cliente sur laquelle le partage de fichiers Cloud Filestore source est installé, puis cliquez sur SSH pour ouvrir une fenêtre de terminal sur cette instance de VM.
  3. Pour copier les données du partage de fichiers Cloud Filestore installé, exécutez la commande ci-dessous en remplaçant [VALUES_IN_BRACKETS] par les valeurs appropriées. Utilisez l'option -r avec la commande gsutil rsync pour inclure les sous-répertoires de l'emplacement spécifié.

     gsutil rsync [MOUNT_DIRECTORY] gs://[BUCKET]
    

    Où :

    • [MOUNT_DIRECTORY] est le répertoire du client dans lequel le partage de fichiers Cloud 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 ses sous-répertoires dans le bucket archive.

gsutil rsync -r /mnt/filer gs://archive

Windows

  1. Accédez à la page Instances de VM.
  2. Choisissez une instance de VM cliente sur laquelle le partage de fichiers Cloud Filestore source est installé, puis cliquez sur RDP pour établir une connexion Bureau à distance avec cette VM.
  3. Ouvrez une fenêtre de terminal et exécutez la commande suivante pour mapper un lecteur avec le partage de fichiers Cloud Filestore :

    net use [DRIVE_LETTER]: \\[IP_ADDRESS]\[FILESHARE]
    

    Où :

    • [DRIVE_LETTER] est le lecteur que vous souhaitez mapper avec le partage de fichiers Cloud Filestore.
    • [IP_ADDRESS] est l'adresse IP de l'instance Cloud Filestore.
    • [FILESHARE] est le nom du partage de fichiers sur l'instance.

    Par exemple : net use Z: \\10.123.45.67\my_share.

  4. Pour copier les données du partage de fichiers Cloud Filestore mappé, exécutez la commande ci-dessous en remplaçant [VALUES_IN_BRACKETS] par les valeurs appropriées. Utilisez l'option -r avec la commande gsutil rsync pour inclure les sous-répertoires de l'emplacement spécifié.

    Pour copier les données du partage de fichiers Cloud Filestore mappé dans un bucket Cloud Storage, exécutez la commande ci-dessous en remplaçant [VALUES_IN_BRACKETS] par les valeurs appropriées :

      gsutil rsync [MAPPED_DRIVE] gs://[BUCKET]
    

    Où :

    • [MAPPED_DRIVE] est le lecteur du client avec lequel le partage de fichiers Cloud 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:\` and all subdirectories to the dans le bucket "archive" :

gsutil rsync -r Z:\ gs://archive