Daten kopieren

Auf dieser Seite erfahren Sie, wie Sie Daten aus folgenden Quellen kopieren:

  • Cloud Storage-Buckets für Filestore-Dateifreigaben.
  • Computer in Ihrer Umgebung für Filestore-Dateifreigaben.
  • Filestore-Dateifreigaben für Cloud Storage-Buckets

Zum Ausführen dieser Anleitung benötigen Sie die Befehlszeilentools gsutil und gcloud.

Daten aus einem Cloud Storage-Bucket in eine Filestore-Dateifreigabe kopieren

Mit dem Befehl gsutil rsync können Sie Daten aus einem Cloud Storage-Bucket in eine Filestore-Dateifreigabe kopieren, die auf einer Compute Engine-VM-Instanz bereitgestellt ist. Der Befehl gsutil rsync funktioniert sowohl auf Linux- als auch auf Windows-VMs. Auf Linux-VM-Instanzen können Sie auch Standardbefehle wie rsync zum Kopieren von Daten verwenden.

Linux

  1. Öffnen Sie in der Cloud Console die Seite VM-Instanzen.

    Rufen Sie die Seite "Compute Engine-Instanzen" auf.

  2. Wählen Sie eine Compute Engine-VM-Instanz aus, auf der die Ziel-Filestore-Dateifreigabe bereitgestellt ist, und klicken Sie zum Öffnen eines Terminals auf dieser VM-Instanz auf SSH.

  3. Kopieren Sie mit dem folgenden Befehl Daten in die bereitgestellte Filestore-Dateifreigabe. Sie können die Option -r mit dem Befehl gsutil rsync verwenden, um die Unterverzeichnisse des von Ihnen angegebenen Standorts rekursiv zu durchlaufen.

    gsutil rsync gs://bucket mount-directory
    

    wobei

    • bucket der Cloud Storage-Bucket, das Verzeichnis oder Unterverzeichnis ist, aus dem Daten kopiert werden sollen.
    • mount-directory ist das Verzeichnis auf dem Client, in dem die Filestore-Dateifreigabe bereitgestellt wird.

Beispiel

Mit dem folgenden Befehl werden Daten aus dem Bucket data und allen Unterverzeichnissen in das Verzeichnis /mnt/filer kopiert.

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

Windows

  1. Öffnen Sie in der Cloud Console die Seite VM-Instanzen.

    Rufen Sie die Seite "Compute Engine-Instanzen" auf.

  2. Wählen Sie eine Compute Engine-VM-Instanz aus, deren Dateifreigabe der Zieldatei einem Laufwerk zugeordnet ist, und klicken Sie zum Öffnen einer Remote-Desktop-Verbindung zu dieser VM auf RDP.

  3. Kopieren Sie Daten in den zugeordneten Filestore-Dateifreigaben, indem Sie den folgenden Befehl ausführen. Sie können die Option -r mit dem Befehl gsutil rsync verwenden, um die Unterverzeichnisse des von Ihnen angegebenen Standorts rekursiv zu durchlaufen.

    gsutil rsync gs://bucket mount-directory
    

    wobei

    • bucket der Cloud Storage-Bucket, das Verzeichnis oder Unterverzeichnis ist, aus dem Daten kopiert werden sollen.
    • mount-directory ist das Verzeichnis auf dem Client, in dem die Filestore-Dateifreigabe bereitgestellt wird.

Beispiel

Mit dem folgenden Befehl werden Daten aus dem Bucket data und allen Unterverzeichnissen in das Laufwerk Z: kopiert, das der Filestore-Dateifreigabe zugeordnet ist.

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

Daten von einem Computer in Ihrer Umgebung in eine Filestore-Dateifreigabe kopieren

Mit dem Befehl gcloud compute scp können Sie Daten von einem Computer in Ihrer Umgebung in eine Filestore-Dateifreigabe kopieren, die auf einer Compute Engine Linux-VM-Instanz bereitgestellt wird. Der Befehl gcloud compute scp funktioniert nicht bei Windows-VM-Instanzen.

  1. Stellen Sie über SSH eine Verbindung zu dem Computer her, der die zu kopierenden Daten enthält.
  2. Prüfen Sie mit dem folgenden Befehl, ob das Tool gcloud installiert ist:

     which gcloud
    

    Der Befehl gibt den Installationspfad zurück, wenn das gcloud-Tool installiert ist. Wenn kein Installationspfad zurückgegeben wird, folgen Sie der Anleitung unter Cloud SDK installieren, um das Tool zu installieren.

  3. Kopieren Sie Daten in die bereitgestellte Filestore-Dateifreigabe:

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

    wobei

    • local-data-path der Pfad einer lokalen Datei oder eines lokalen Verzeichnisses ist, das die Daten enthält, die Sie in die Instanz kopieren möchten. Sie können das Flag --recurse nach local-data-path verwenden, wenn Sie Daten aus anderen Unterverzeichnissen kopieren möchten.
    • client-name ist der Name der Compute Engine-VM-Instanz, in der die Filestore-Dateifreigabe bereitgestellt wird.
    • mount-directory ist das Verzeichnis auf dem Client, in dem die Filestore-Dateifreigabe bereitgestellt wird.
    • project-id die ID des GCP-Projekts ist, das die Client-VM-Instanz enthält. Sie können dieses Flag überspringen und stattdessen das Standardprojekt für gcloud verwenden, wenn Sie es mit gcloud config set project project-id festgelegt haben.
    • zone ist die GCP-Zone, in der sich die Compute Engine-VM-Instanz befindet. Sie können dieses Flag überspringen und stattdessen die Standardzone gcloud verwenden, wenn Sie sie mit gcloud config set compute/zone zone festgelegt haben.

Beispiel

Der folgende Befehl kopiert Daten aus dem lokalen Verzeichnis /etc/acme/data und seinen Unterverzeichnissen in das Verzeichnis /mnt/filer auf der VM-Instanz nfs-client im Projekt myproject in Zone us-central1-c:

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

Daten aus einer Filestore-Dateifreigabe in einen Cloud Storage-Bucket kopieren

Mit dem Befehl gsutil rsync können Sie Daten aus einer Filestore-Dateifreigabe, die auf einer Compute Engine-VM-Instanz bereitgestellt ist, in einen Cloud Storage-Bucket kopieren.

Prüfen Sie zuerst, ob die Compute Engine-VM in Cloud Storage schreiben kann:

  1. Öffnen Sie in der Cloud Console die Seite VM-Instanzen.

    Rufen Sie die Seite "Compute Engine-Instanzen" auf.

  2. Wählen Sie eine Compute Engine-VM-Instanz aus, auf der die Dateifreigabe der Quelldatei gespeichert ist.

  3. Prüfen Sie, ob die Instanz den Bereich Lesen und Schreiben hat:

    1. Klicken Sie auf den Instanznamen, um die Seite mit den Instanzdetails zu öffnen.
    2. Erweitern Sie die Cloud-API-Zugriffsbereiche und prüfen Sie, ob Speicher den Bereich Lesen und Schreiben hat.

Wenn die Compute Engine-VM nicht über den Bereich Lesen/Schreiben verfügt, führen Sie die folgenden Schritte aus:

  1. Klicken Sie oben auf der Seite auf Stopp, um die Instanz anzuhalten.
  2. Wenn die Instanz angehalten wurde, klicken Sie oben auf der Seite auf Bearbeiten.
  3. Wählen Sie unter Zugriffsbereiche die Option Zugriff für jede API festlegen aus.
  4. Wählen Sie unter Speicher Lesen und Schreiben aus und klicken Sie auf Speichern.
  5. Wenn die Aktualisierung der Instanz abgeschlossen ist, klicken Sie oben auf der Seite auf Start.

Führen Sie die folgenden Schritte aus, um Daten aus einer Filestore-Dateifreigabe in einen Cloud Storage-Bucket zu kopieren:

Linux

  1. Öffnen Sie in der Cloud Console die Seite VM-Instanzen.

    Rufen Sie die Seite "Compute Engine-Instanzen" auf.

  2. Wählen Sie eine Compute Engine-VM-Instanz aus, auf der die Quell-Filestore-Dateifreigabe bereitgestellt ist, und klicken Sie zum Öffnen eines Terminals auf dieser VM-Instanz auf SSH.

  3. Kopieren Sie mit dem folgenden Befehl Daten aus der bereitgestellten Filestore-Dateifreigabe. Sie können die Option -r mit dem Befehl gsutil rsync verwenden, um die Unterverzeichnisse des von Ihnen angegebenen Standorts rekursiv zu durchlaufen.

    gsutil rsync mount-directory gs://bucket
    

    wobei

    • mount-directory ist das Verzeichnis auf dem Client, in dem die Filestore-Dateifreigabe bereitgestellt wird.
    • bucket der Cloud Storage-Bucket, das Verzeichnis oder Unterverzeichnis ist, in das Daten kopiert werden sollen.

Beispiel

Mit dem folgenden Befehl werden Daten aus dem Verzeichnis /mnt/filer und allen Unterverzeichnissen in den Bucket archive kopiert.

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

Windows

  1. Öffnen Sie in der Cloud Console die Seite VM-Instanzen.

    Rufen Sie die Seite "Compute Engine-Instanzen" auf.

  2. Wählen Sie eine Compute Engine-VM-Instanz aus, auf der die Dateifreigabe der Quell-Filestore bereitgestellt ist, und klicken Sie dann zum Öffnen einer Remote-Desktop-Verbindung zu dieser VM auf RDP.

  3. Kopieren Sie mit dem folgenden Befehl Daten aus dem zugeordneten Filestore-Dateifreigaben. Sie können die Option -r mit dem Befehl gsutil rsync verwenden, um die Unterverzeichnisse des von Ihnen angegebenen Standorts rekursiv zu durchlaufen.

    gsutil rsync mapped-drive gs://bucket
    

    wobei

    • mapped-drive ist das Laufwerk auf dem Client, dem die Filestore-Dateifreigabe zugeordnet ist.
    • bucket der Cloud Storage-Bucket, das Verzeichnis oder Unterverzeichnis ist, in das Daten kopiert werden sollen.

Beispiel

Mit dem folgenden Befehl werden Daten vom zugeordneten Laufwerk Z: und allen Unterverzeichnissen in den Bucket archive kopiert.

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