Kurzanleitung: Auf Cloud Storage-Buckets mit dem FUSE-CSI-Treiber zugreifen
In dieser Kurzanleitung erfahren Sie, wie Sie von einer Google Kubernetes Engine-Anwendung (GKE) aus auf Cloud Storage-Buckets zugreifen können, als wären sie lokale Dateisysteme. In dieser Kurzanleitung finden Sie ein Beispiel für ein Kubernetes-Manifest zum Erstellen eines Pods, in dem der Bucket bereitgestellt wird. Außerdem wird gezeigt, wie Sie über das Dateisystem des Pods auf den Inhalt des Buckets zugreifen.
Diese Seite richtet sich an Entwickler, Speicherexperten und alle anderen, die Cloud-Ressourcen bereitstellen und verwalten und Arbeitslasten bereitstellen möchten. Weitere Informationen zu gängigen Rollen finden Sie unter Häufig verwendete GKE-Nutzerrollen und -Aufgaben.
Machen Sie sich vor dem Lesen dieser Seite mit Kubernetes und dem CSI-Treiber für Cloud Storage FUSE vertraut.
In dieser Kurzanleitung wird der GKE Autopilot-Modus verwendet. Wenn Sie den Standardmodus verwenden möchten, lesen Sie den Abschnitt CSI-Treiber für Cloud Storage FUSE für GKE einrichten.
Hinweis
-
In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Cloud de Confiance project.
Enable the GKE and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
Achten Sie darauf, dass Sie die folgenden Rollen für das Projekt haben: Kubernetes Engine-Administrator, Storage-Administrator, Dienstkontonutzer
Rollen prüfen
-
Rufen Sie in der Cloud de Confiance Console die Seite IAM auf.
IAM aufrufen - Wählen Sie das Projekt aus.
-
Suchen Sie in der Spalte Hauptkonto nach allen Zeilen, in denen Sie oder eine Gruppe, zu der Sie gehören, angegeben sind. Fragen Sie Ihren Administrator, zu welchen Gruppen Sie gehören.
- Prüfen Sie in allen Zeilen, in denen Sie angegeben oder enthalten sind, die Spalte Rolle, um zu sehen, ob die Liste der Rollen die erforderlichen Rollen enthält.
Rollen zuweisen
-
Rufen Sie in der Cloud de Confiance Console die Seite IAM auf.
IAM aufrufen - Wählen Sie das Projekt aus.
- Klicken Sie auf Zugriffsrechte erteilen.
-
Geben Sie im Feld Neue Hauptkonten Ihre Nutzer-ID ein. Bei einem Nutzer in einem Mitarbeiteridentitätspool ist dies in der Regel dessen Kennung. Weitere Informationen erhalten Sie unter Mitarbeiteridentitätspool-Nutzer in IAM-Richtlinien darstellen oder von Ihrem Administrator.
- Klicken Sie auf Rolle auswählen und suchen Sie nach der Rolle.
- Klicken Sie auf Weitere Rolle hinzufügen, wenn Sie weitere Rollen zuweisen möchten.
- Klicken Sie auf Speichern.
-
Erstellen Sie einen GKE Autopilot-Cluster
Rufen Sie in der Cloud de Confiance Console die Seite Autopilot-Cluster erstellen auf.
Führen Sie unter Clustergrundlagen die folgenden Schritte aus:
Geben Sie im Feld Name einen Namen für den Cluster ein.
Übernehmen Sie für die übrigen Einstellungen jeweils die Standardeinstellung.
Klicken Sie auf Erstellen, um den Cluster zu erstellen.
Cloud Storage-Bucket erstellen
- Wechseln Sie in der Cloud de Confiance Console unter „Cloud Storage“ zur Seite Buckets.
Klicken Sie auf Erstellen.
Führen Sie auf der Seite Bucket erstellen im Abschnitt Einstieg die folgenden Schritte aus:
Geben Sie einen global eindeutigen Namen für den Bucket ein, der den Anforderungen für Bucket-Namen entspricht.
Übernehmen Sie für die übrigen Einstellungen jeweils die Standardeinstellung.
Klicken Sie auf Erstellen, um den Bucket zu erstellen.
Objekte in den Cloud Storage-Bucket hochladen
- Wechseln Sie in der Cloud de Confiance Console unter „Cloud Storage“ zur Seite Buckets.
Klicken Sie in der Liste der Buckets auf den Namen des Buckets, den Sie gerade erstellt haben.
Führen Sie im Tab Objekte für den Bucket einen der folgenden Schritte aus:
Ziehen Sie Dateien von Ihrem Desktop oder Dateimanager in den Hauptbereich der Cloud de Confiance Console.
Klicken Sie auf die Schaltfläche Upload Files (Dateien hochladen). Wählen Sie im angezeigten Dialogfeld die Dateien aus, die Sie hochladen möchten, und klicken Sie auf Öffnen.
Zugriff auf Ihren Cloud Storage-Bucket konfigurieren
Folgen Sie der Anleitung unter Zugriff auf Cloud Storage-Buckets konfigurieren, um sicherzustellen, dass Ihr GKE-Cluster auf Ihren Cloud Storage-Bucket zugreifen kann.
Cloud Shell einrichten
Aktivieren Sie Cloud Shell in der Cloud de Confiance Console.
Eine Cloud Shell-Sitzung wird gestartet und eine Eingabeaufforderung wird angezeigt. Das Initialisieren der Sitzung kann einige Sekunden dauern.
Pod bereitstellen, um mit FUSE auf Ihren Cloud Storage-Bucket zuzugreifen
Legen Sie das Standardprojekt fest, in dem Sie das Pod bereitstellen möchten:
gcloud config set project PROJECT_IDErsetzen Sie
PROJECT_IDdurch Ihre Projekt-ID.Erstellen Sie das Pod-Manifest mit dem folgenden Inhalt und wenden Sie es an:
cat << EOF | kubectl apply -f - apiVersion: v1 kind: Pod metadata: name: gcsfuse-test namespace: default annotations: gke-gcsfuse/volumes: "true" spec: terminationGracePeriodSeconds: 60 containers: - image: busybox name: busybox command: ["sleep"] args: ["infinity"] volumeMounts: - name: gcsfuse-test mountPath: /data readOnly: true serviceAccountName: default volumes: - name: gcsfuse-test csi: driver: gcsfuse.csi.storage.gke.io volumeAttributes: bucketName: BUCKET_NAME mountOptions: "implicit-dirs" EOF- Ersetzen Sie
BUCKET_NAMEdurch den Namen des Cloud Storage-Buckets. - Wenn Sie einen anderen Namespace oder ein anderes Dienstkonto verwenden, ersetzen Sie die Felder
namespaceundserviceAccountNameentsprechend.
Der Inhalt dieses Manifests startet einen Pod mit dem Namen
gcsfuse-test, der den Bucket auf seinem Pfad/databereitstellt.- Ersetzen Sie
Prüfen Sie, ob der Pod ausgeführt wird:
kubectl get pod gcsfuse-testDie Ausgabe sieht etwa so aus:
NAME READY STATUS RESTARTS AGE gcsfuse-test 2/2 Running 0 12sDer Cloud Storage FUSE-CSI-Treiber hängt einen Sidecar-Container an Ihren Pod an, um die Interaktionen mit Cloud Storage zu verwalten.
Wenn der Pod nicht ausgeführt wird, können Sie die Ereignislogs abrufen, um das Problem zu diagnostizieren. Führen Sie dazu den Befehl
kubectl describe pod gcsfuse-testaus. Weitere Informationen finden Sie auf GitHub unter Fehlerbehebung.Nachdem der Pod ausgeführt wird, können Sie sein Dateisystem untersuchen:
kubectl exec -it gcsfuse-test -- find /data
Bereinigen
Wenn Sie vermeiden möchten, dass Ihrem Cloud de Confiance by S3NS Konto die in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden, löschen Sie den Pod:
kubectl delete pod gcsfuse-test
Nächste Schritte
- Informationen zur Funktionsweise des CSI-Treibers für Cloud Storage FUSE für GKE
- Weitere Informationen zu den Funktionen von Cloud Storage FUSE
- Fehlerbehebung bei Cloud Storage FUSE
- Leistung mit Cloud Storage FUSE-Profilen automatisch optimieren
- Cloud Storage FUSE manuell für die Leistung optimieren