Buckets verschieben und umbenennen

Wenn Sie einen Bucket erstellen, sind einige der Attribute, die Sie festlegen, dauerhaft und können nicht geändert werden, einschließlich des Namens des Buckets, seines geografischen Standorts und des Projekts, zu dem er gehört. Sie können Buckets jedoch effektiv verschieben oder umbenennen:

  • Wenn sich in Ihrem alten Bucket keine Daten befinden, löschen Sie den Bucket und erstellen einen weiteren Bucket mit den gewünschten Attributen.

  • Enthält der alte Bucket Daten, erstellen Sie einen neuen Bucket mit den gewünschten Attributen, kopieren die Daten aus dem alten Bucket in den neuen und löschen den alten Bucket und dessen Inhalt. Die Schritte auf dieser Seite beschreiben diesen Vorgang.

    • Wenn der neue Bucket den Namen Ihres alten Buckets übernehmen soll, müssen Sie die Daten vorübergehend in einen Bucket mit einem anderen Namen verschieben. Sie können dann den ursprünglichen Bucket löschen, sodass Sie den Bucket-Namen wiederverwenden können.

    • Das Verschieben von Daten zwischen Standorten verursacht Kosten für die Netzwerknutzung. Außerdem können durch das Verschieben von Daten zusätzliche Kosten anfallen, je nach Speicherklassen der Quelldaten und Standort des Ziel-Buckets. Weitere Informationen finden Sie unter Cloud Storage – Preise.

Erforderliche Berechtigungen

Console

Sie benötigen die entsprechenden IAM-Berechtigungen, um diesen Leitfaden mit der Google Cloud Console abzuschließen. Wenn die sich Buckets, auf die Sie zugreifen möchten, in einem Projekt befinden, das nicht Sie erstellt haben, muss Ihnen der Projektinhaber möglicherweise erst eine Rolle zuweisen, die die erforderlichen Berechtigungen enthält.

Eine Liste der erforderlichen Berechtigungen für bestimmte Aktionen finden Sie unter IAM-Berechtigungen für die Google Cloud Console.

Eine Liste der relevanten Rollen finden Sie unter Cloud Storage-Rollen. Alternativ können Sie eine benutzerdefinierte Rolle erstellen, die spezifische, eingeschränkte Berechtigungen hat.

Befehlszeile

Damit Sie diese Anleitung mit einem Befehlszeilen-Dienstprogramm ausführen können, benötigen Sie die entsprechenden IAM-Berechtigungen. Wenn die sich Buckets, auf die Sie zugreifen möchten, in einem Projekt befinden, das nicht Sie erstellt haben, muss Ihnen der Projektinhaber möglicherweise erst eine Rolle zuweisen, die die erforderlichen Berechtigungen enthält.

Eine Liste der erforderlichen Berechtigungen für bestimmte Aktionen finden Sie unter IAM-Berechtigungen für gcloud storage-Befehle.

Eine Liste der relevanten Rollen finden Sie unter Cloud Storage-Rollen. Alternativ können Sie eine benutzerdefinierte Rolle erstellen, die spezifische, eingeschränkte Berechtigungen hat.

REST APIs

JSON API

Sie benötigen die entsprechenden IAM-Berechtigungen, um diese Anleitung mit der JSON API abzuschließen. Wenn die sich Buckets, auf die Sie zugreifen möchten, in einem Projekt befinden, das nicht Sie erstellt haben, muss Ihnen der Projektinhaber möglicherweise erst eine Rolle zuweisen, die die erforderlichen Berechtigungen enthält.

Eine Liste der für bestimmte Aktionen erforderlichen Berechtigungen finden Sie unter IAM-Berechtigungen für JSON-Methoden.

Eine Liste der relevanten Rollen finden Sie unter Cloud Storage-Rollen. Alternativ können Sie eine benutzerdefinierte Rolle erstellen, die spezifische, eingeschränkte Berechtigungen hat.

Daten zwischen Buckets verschieben

Console

Verwenden Sie den Storage Transfer Service in der Google Cloud Console:

  1. Wenn Sie noch keinen Ziel-Bucket haben, erstellen Sie den Bucket.
  2. Öffnen Sie in der Google Cloud Console die Seite „Übertragen“.

    Öffnen Sie die Seite Übertragung.

  3. Klicken Sie auf Übertragung erstellen.
  4. Führen Sie die folgenden Schritte aus und klicken Sie dabei nach jedem Schritt auf Nächster Schritt:

    • Quelle auswählen: Verwenden Sie Google Cloud Storage-Bucket als Quelltyp und geben Sie entweder direkt den Namen des gewünschten Buckets ein oder klicken Sie auf Durchsuchen, um die Suche zu starten und wählen Sie den gewünschten Bucket aus.

    • Ziel auswählen: Geben Sie entweder den Namen des gewünschten Buckets direkt ein oder klicken Sie auf Durchsuchen, um den gewünschten Bucket zu suchen und auszuwählen.

    • Einstellungen auswählen: Wählen Sie die Option Dateien nach der Übertragung aus der Quelle löschen aus.

    • Planungsoptionen: Diesen Abschnitt können Sie ignorieren.

  5. Nachdem Sie alle Schritte ausgeführt haben, klicken Sie auf Erstellen.

    Damit beginnt das Kopieren der Objekte aus dem alten Bucket in den neuen. Der Vorgang kann einige Zeit in Anspruch nehmen. Nachdem Sie auf Erstellen geklickt haben, können Sie die Google Cloud Console aber verlassen.

    So sehen Sie den Fortschritt der Übertragung:

    Öffnen Sie in der Google Cloud Console die Seite „Übertragen“.

    Zur Seite Datenübertragung

    Unter Fehlerbehebung erfahren Sie, wie Sie detaillierte Fehlerinformationen zu fehlgeschlagenen Cloud Storage-Vorgängen in der Google Cloud Console abrufen.

  6. Sie müssen nichts unternehmen, um die Objekte aus dem alten Bucket zu löschen, sobald die Übertragung abgeschlossen ist. Dazu müssen Sie bei der Einrichtung das Kästchen Quellobjekte nach Übertragung löschen ausgewählt haben. Sie können jedoch auch Ihren alten Bucket löschen, was Sie separat machen müssen.

Befehlszeile

  1. Erstellen Sie einen Ziel-Bucket, falls Sie noch keinen haben.

  2. Verwenden Sie den Befehl gcloud storage cp mit der Option --recursive, um den Inhalt des Quell-Buckets rekursiv in den Ziel-Bucket zu kopieren:

    gcloud storage cp --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

    Wobei:

    • SOURCE_BUCKET ist der Name des ursprünglichen Buckets. Beispiel: old-bucket.

    • DESTINATION_BUCKET ist der Name des Buckets, in den Sie Ihre Daten verschieben. Beispiel: my-bucket.

    Wenn in Ihrem Bucket verwaltete Ordner und ein flacher Namespace verwendet werden, müssen Sie das Flag --include-managed-folders in den Befehl aufnehmen, damit die verwalteten Ordner kopiert werden.

  3. Wenn Sie den Inhalt des Quell-Buckets zusammen mit dem Quell-Bucket selbst rekursiv löschen möchten, verwenden Sie den Befehl gcloud storage rm mit der Option --recursive:

    gcloud storage rm --recursive gs://SOURCE_BUCKET

    Dabei ist SOURCE_BUCKET der Name des ursprünglichen Buckets. Beispiel: old-bucket.

    Wenn Sie den Inhalt aus dem Quell-Bucket löschen möchten, ohne den Quell-Bucket selbst zu löschen, verwenden Sie den Befehl gcloud storage rm mit dem Flag --all-versions und dem Platzhalter **:

    gcloud storage rm --all-versions gs://SOURCE_BUCKET/**

    Dabei ist SOURCE_BUCKET der Name des ursprünglichen Buckets. Beispiel: old-bucket.

REST APIs

JSON API

  1. Wenn Sie noch keinen Ziel-Bucket haben, erstellen Sie den Bucket.

  2. Kopieren Sie alle Objekte aus Ihrem Quell-Bucket in den Ziel-Bucket.

  3. Löschen Sie alle Objekte in Ihrem Quell-Bucket.

  4. Löschen Sie Ihren Quell-Bucket.

XML API

  1. Wenn Sie noch keinen Ziel-Bucket haben, erstellen Sie den Bucket.

  2. Kopieren Sie alle Objekte aus Ihrem Quell-Bucket in den Ziel-Bucket.

  3. Löschen Sie alle Objekte in Ihrem Quell-Bucket.

  4. Löschen Sie Ihren Quell-Bucket.

Nächste Schritte