Auf dieser Seite wird beschrieben, wie Sie nichtflüchtigen Speicher für Containerarbeitslasten in Ihrem souveränen Google Distributed Cloud-Universum (GDC) mit Air Gap erstellen und verwalten. Nichtflüchtiger Speicher bietet Ihrer Anwendung konsistente Identitäten und stabile Hostnamen, unabhängig davon, wo die Arbeitslasten geplant sind.
Diese Seite richtet sich an Entwickler in der Gruppe der Anwendungsoperatoren, die für die Erstellung von Anwendungsarbeitslasten für ihre Organisation verantwortlich sind. Weitere Informationen finden Sie unter Dokumentation zu Zielgruppen für GDC mit Air Gap.
Hinweis
Um die Aufgaben in diesem Dokument auszuführen, müssen Sie die erforderlichen Berechtigungen anfordern und Ihre Umgebung vorbereiten.
IAM-Rollen anfordern
Sie benötigen bestimmte Rollen, um die Berechtigungen zu erhalten, die für den Zugriff auf nichtflüchtigen Speicher erforderlich sind. Die erforderlichen Rollen hängen davon ab, ob Sie in einem freigegebenen Cluster mit Organisationsbereich oder in einem Standardcluster mit Projektbereich arbeiten. Weitere Informationen finden Sie unter Kubernetes-Clusterkonfigurationen.
Rollen für freigegebene Cluster
Wenn Sie nichtflüchtige Volumes in einem freigegebenen Cluster erstellen, löschen, bearbeiten oder ansehen möchten, bitten Sie Ihren Projekt-IAM-Administrator, Ihnen die Rolle Namespace-Administrator (namespace-admin) zuzuweisen. Diese Rolle ist an Ihren Projekt-Namespace gebunden.
Rollen für Standardcluster
Wenn Sie nichtflüchtige Volumes in einem Standardcluster erstellen, löschen, bearbeiten oder ansehen möchten, bitten Sie Ihren Projekt-IAM-Administrator, Ihnen die Rolle Cluster Developer (cluster-developer) zuzuweisen. Diese Rolle ist an Ihren Projekt-Namespace gebunden.
Umgebung vorbereiten
Wenn Sie Befehle für einen Kubernetes-Cluster mit der API ausführen möchten, benötigen Sie die folgenden Ressourcen:
Suchen Sie den Namen des Kubernetes-Clusters oder fragen Sie ein Mitglied der Gruppe der Plattformadministratoren nach dem Clusternamen.
Melden Sie sich an und generieren Sie die kubeconfig-Datei für den Kubernetes-Cluster.
Ersetzen Sie in dieser Anleitung
KUBERNETES_CLUSTER_KUBECONFIGdurch den kubeconfig-Pfad des Kubernetes-Clusters.
Nichtflüchtiges Volume erstellen
In der folgenden Anleitung wird beschrieben, wie Sie ein Volume mit der GDC-StorageClass standard-rwo erstellen. Weitere Informationen
zu den verfügbaren StorageClass Ressourcen in GDC finden Sie unter
Nichtflüchtiger Speicher für Container.
Erstellen Sie eine
PersistentVolumeClaim-Ressource (PVC) und konfigurieren Sie sie mit dem ZugriffsmodusReadWriteOnceund der Speicherklassestandard-rwo:kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: PersistentVolumeClaim metadata: name: PVC_NAME spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi storageClassName: standard-rwo EOFErsetzen Sie Folgendes:
KUBERNETES_CLUSTER_KUBECONFIG: die kubeconfig Datei für den Cluster.NAMESPACE: der Namespace, in dem die PVC erstellt werden soll. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es ein beliebiger Namespace sein.PVC_NAME: der Name desPersistentVolumeClaim-Objekts.
Prüfen Sie, ob das PVC-Objekt verfügbar ist:
kubectl get pvc --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ --namespace NAMESPACEDie Ausgabe sieht etwa so aus:
NAME CAPACITY ACCESS MODES STATUS CLAIM STORAGECLASS AGE pvc-uuid 10Gi RWO Bound pvc-name standard-rwo 60sKonfigurieren Sie Ihre Containerarbeitslasten für die Verwendung der PVC. Das folgende Beispiel zeigt einen
nginx-Pod, der einestandard-rwo-PVC verwendet:kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: Pod metadata: name: web-server-deployment labels: app: nginx spec: containers: - name: nginx image: nginx volumeMounts: - mountPath: /usr/share/nginx/html name: data volumes: - name: data persistentVolumeClaim: claimName: PVC_NAME EOFErsetzen Sie
PVC_NAMEdurch die von Ihnen erstellte PVC.
Volumekapazität erweitern
Wenn Sie die Kapazität eines PersistentVolumeClaim-Objekts erhöhen möchten, aktualisieren Sie das Feld spec.resources.storage auf die neue Kapazität. Die maximal unterstützte Volumegröße beträgt 14,5 TiB.
Aktualisieren Sie das Volume in der Manifestdatei des
PersistentVolumeClaim-Objekts auf eine größere Größe:kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: PersistentVolumeClaim metadata: name: PVC_NAME spec: accessModes: - ReadWriteOnce resources: requests: storage: VOLUME_STORAGE_SIZE EOFErsetzen Sie Folgendes:
KUBERNETES_CLUSTER_KUBECONFIG: die kubeconfig Datei für den Cluster.NAMESPACE: der Namespace, in dem sich die PVC-Ressource befindet. Bei freigegebenen Clustern muss dies ein Projekt-Namespace sein. Bei Standardclustern kann es ein beliebiger Namespace sein.PVC_NAME: der Name der PVC, für die Sie die Speichergröße erhöhen.VOLUME_SNAPSHOT_SIZE: die zu erhöhende Speichergröße, z. B.50Gi.
Prüfen Sie den Status der aktualisierten nichtflüchtigen Volumes in Ihrem Cluster:
kubectl get pv --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG
Nächste Schritte
- Übersicht über Containerarbeitslasten
- Zustandsorientierte Arbeitslasten erstellen
- Volume-Snapshots erstellen