Cloud Storage-Bucket mit Cloud Storage FUSE bereitstellen

Informationen dazu, wie Sie einen Cloud Storage-Bucket als lokales Dateisystem mit Cloud Storage FUSE bereitstellen, damit Sie mit der Standardsemantik des Dateisystems mit Ihren Objekten interagieren können.

In dieser Kurzanleitung führen Sie die folgenden Aufgaben aus:

  • Cloud Storage FUSE unter Debian oder Ubuntu installieren

  • Bucket als Ordner auf dem Computer bereitstellen

  • Objekt in den Bucket hochladen

Sie verwenden die Google Cloud CLI, um das Objekt in Ihrem Storage-Bucket zu erstellen und zu verwalten, und Sie verwenden die gcsfuse CLI, um Ihren Bucket auf Ihrem Computer bereitzustellen.

Hinweis

So richten Sie ein Projekt ein:

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, click Create project to begin creating a new Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Make sure that you have the following role or roles on the project: Storage Admin (roles/storage.admin), Storage Bucket Viewer (roles/storage.bucketViewer)

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Zu IAM
    2. Wählen Sie das Projekt aus.
    3. Klicken Sie auf Zugriff erlauben.
    4. Geben Sie im Feld Neue Hauptkonten Ihre Nutzer-ID ein. Dies ist in der Regel die E-Mail-Adresse eines Google-Kontos.

    5. Wählen Sie in der Liste Rolle auswählen eine Rolle aus.
    6. Wenn Sie weitere Rollen hinzufügen möchten, klicken Sie auf Weitere Rolle hinzufügen und fügen Sie weitere Rollen hinzu.
    7. Klicken Sie auf Speichern.
  5. Install the Google Cloud CLI.

  6. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  7. To initialize the gcloud CLI, run the following command:

    gcloud init
  8. In the Google Cloud console, on the project selector page, click Create project to begin creating a new Google Cloud project.

    Go to project selector

  9. Make sure that billing is enabled for your Google Cloud project.

  10. Make sure that you have the following role or roles on the project: Storage Admin (roles/storage.admin), Storage Bucket Viewer (roles/storage.bucketViewer)

    Check for the roles

    1. In the Google Cloud console, go to the IAM page.

      Go to IAM
    2. Select the project.
    3. In the Principal column, find all rows that identify you or a group that you're included in. To learn which groups you're included in, contact your administrator.

    4. For all rows that specify or include you, check the Role column to see whether the list of roles includes the required roles.

    Grant the roles

    1. In the Google Cloud console, go to the IAM page.

      Zu IAM
    2. Wählen Sie das Projekt aus.
    3. Klicken Sie auf Zugriff erlauben.
    4. Geben Sie im Feld Neue Hauptkonten Ihre Nutzer-ID ein. Dies ist in der Regel die E-Mail-Adresse eines Google-Kontos.

    5. Wählen Sie in der Liste Rolle auswählen eine Rolle aus.
    6. Wenn Sie weitere Rollen hinzufügen möchten, klicken Sie auf Weitere Rolle hinzufügen und fügen Sie weitere Rollen hinzu.
    7. Klicken Sie auf Speichern.
  11. Install the Google Cloud CLI.

  12. If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

  13. To initialize the gcloud CLI, run the following command:

    gcloud init
  14. Sie benötigen einen Cloud Storage-Bucket, den Sie bereitstellen möchten. Wenn noch nicht geschehen, erstellen Sie einen neuen Bucket.
  15. Cloud Storage FUSE installieren

    Führen Sie die folgenden Schritte aus, um Cloud Storage FUSE über Ihre lokale Shell unter Debian oder Ubuntu zu installieren:

    1. Fügen Sie die URL der Cloud Storage FUSE-Distribution als Paketquelle hinzu:

      export GCSFUSE_REPO=gcsfuse-`lsb_release -c -s`
      echo "deb https://packages.cloud.google.com/apt $GCSFUSE_REPO main" | sudo tee /etc/apt/sources.list.d/gcsfuse.list
    2. Importieren Sie den öffentlichen Schlüssel des Google Cloud APT-Repositorys:

      curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
    3. Aktualisieren Sie die Liste der verfügbaren Pakete:

      sudo apt-get update
    4. Installieren Sie Cloud Storage FUSE und die zugehörige Abhängigkeit FUSE:

      sudo apt-get install fuse gcsfuse
    5. Drücken Sie bei Aufforderung die Eingabetaste, um die Aktion zu bestätigen.

    6. Prüfen Sie, ob Cloud Storage FUSE installiert wurde:

      gcsfuse -v

      Wenn der Prozess erfolgreich war, sollte die Ausgabe in etwa so aussehen:

      gcsfuse version 0.41.12 (Go version go1.18.4)

    Bucket bereitstellen

    Führen Sie die folgenden Schritte aus, um den Bucket in Ihrem lokalen Dateisystem bereitzustellen:

    1. Generieren Sie Standardanmeldedaten für Anwendungen mit dem Befehl gcloud auth application-default login:

      gcloud auth application-default login

      Cloud Storage FUSE lädt die Anmeldedaten automatisch.

    2. Erstellen Sie ein Verzeichnis, in dem der Storage-Bucket bereitgestellt werden soll:

      mkdir "$HOME/mount-folder"
    3. Stellen Sie Ihren Storage-Bucket mit dem Befehl gcsfuse bereit:

      gcsfuse BUCKET_NAME "$HOME/mount-folder"

      Ersetzen Sie BUCKET_NAME durch den Namen des Buckets, den Sie bereitstellen möchten.

      Wenn der Vorgang erfolgreich war, sollte die Ausgabe in etwa so aussehen:

      File system has been successfully mounted.

    Objekt in den Bucket hochladen

    Führen Sie die folgenden Schritte aus, um ein Beispielobjekt herunterzuladen und in den bereitgestellten Bucket hochzuladen:

    Das Bild eines Kätzchens

    1. Klicken Sie mit der rechten Maustaste auf das Bild und speichern Sie es auf Ihrem Computer, z. B. auf dem Desktop.

      Sie können das Bild auch mit dem cURL-Befehl curl -O https://cloud.google.com/storage/images/kitten.png herunterladen.

    2. Kopieren Sie das Bild aus seinem gespeicherten Speicherort in den Ordner, in dem der Bucket bereitgestellt wird. Verwenden Sie dazu den Befehl cp:

      cp kitten.png "$HOME/mount-folder/kitten.png"
    3. Prüfen Sie anhand der folgenden Schritte, ob das Bild in Ihr lokales Dateisystem kopiert und erfolgreich in den Bucket hochgeladen wurde:

      1. Führen Sie ls für den Ordner aus, in dem Ihr Bucket bereitgestellt ist, um zu prüfen, ob kitten.png in Ihr lokales Dateisystem kopiert wurde:

        ls "$HOME/mount-folder"

        Wenn der Kopiervorgang erfolgreich war, wird kitten.png in der Ausgabe zurückgegeben.

      2. Verwenden Sie den Befehl gcloud storage ls, um den Inhalt Ihres Buckets aufzulisten:

        gcloud storage ls gs://BUCKET_NAME

        Ersetzen Sie BUCKET_NAME durch den Namen Ihres Buckets:

        Wenn das Image erfolgreich in Ihren Bucket hochgeladen wurde, wird kitten.png in der Ausgabe zurückgegeben.

    Bereinigen

    Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud -Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden:

    1. Heben Sie die Bereitstellung des Storage-Buckets auf Ihrem Linux-Computer mit dem Tool fusermount auf:

      fusermount -u "$HOME/mount-folder"
    2. Verwenden Sie zum Löschen des Buckets und seines Inhalts den Befehl gcloud storage rm mit dem Flag --recursive:

      gcloud storage rm gs://BUCKET_NAME --recursive

      Ersetzen Sie BUCKET_NAME durch den Namen Ihres Buckets:

      Wenn der Prozess erfolgreich war, sollte die Ausgabe in etwa so aussehen:

      Removing gs://my-bucket/kitten.png#1676488739323620...
       Removing gs://my-bucket/...

    Nächste Schritte