Speicher

Sie erstellen nichtflüchtigen Speicher für Arbeitslasten, die in Anthos-Clustern in AWS (GKE on AWS) mit Kubernetes-Objekten ausgeführt werden.

Nichtflüchtigen Speicher in Anthos-Clustern in AWS-Arbeitslasten verwenden

In Anthos-Clustern in AWS verwenden Sie die Kubernetes-Ressourcen PersistentVolume (PV), PersistentVolumeClaim (PVC) und StorageClass, um nichtflüchtige Datei- und Blockspeicher für Arbeitslasten bereitzustellen. Für Nutzercluster der Version 1.17 und höher können Sie mit den Ressourcen VolumeSnapshot und VolumeSnapshotClass Snapshots von nichtflüchtigem Speicher erstellen. Snapshots werden in Ihrem AWS-Konto gespeichert.

StorageClass

Nutzercluster verwenden eine standardmäßig Kubernetes StorageClass, die zustandsorientierten Speicher für Arbeitslasten in AWS Elastic Block Storage-Volumes (EBS) bereitstellt. Sie können auch eine andere StorageClass verwenden, um andere Volume-Typen bereitzustellen. Diese Optionen werden im folgenden Abschnitt beschrieben.

VolumeSnapshotClass

Nutzercluster verwenden eine standardmäßige Kubernetes VolumeSnapshotClass, mit der Snapshots von zustandsorientiertem Speicher auf AWS Elastic Block Storage-Volumes (EBS) erstellt werden.

Clusterspeicher konfigurieren

Wenn Sie Speicher-Volumes mit einer nicht standardmäßigen StorageClass bereitstellen möchten, können Sie eine neue StorageClass in einem Cluster erstellen, die verschiedene Parameter oder einen anderen Speichertreiber verwendet. Anschließend können Sie die StorageClass als Standard für den Cluster festlegen oder Ihre Arbeitslasten für die Verwendung der StorageClass konfigurieren. Sie können beispielsweise ein StatefulSet verwenden, um einen bestimmten StorageClass-Namen festzulegen.

Volume-Snapshots verwenden

In Kubernetes Version 1.17+ und höher können Sie mit der Ressource VolumeSnapshot Snapshots von Speicher-Volumes erstellen. Anschließend können Sie neue nichtflüchtige Volumes aus diesen Snapshots bereitstellen.

Elastic Block Storage (EBS)

Anthos-Cluster in AWS verwalten AWS EBS-Volumes mit dem aws-ebs-csi-driver.

Die EBS CSI-Treiberversion ist an die Anthos-Cluster der AWS-Kubernetes-Version gebunden. Wenn Sie ein Upgrade Ihrer Nutzerclusterversion durchführen, wird die neue Treiberversion automatisch angewendet. Diese Version ist normalerweise der neueste Treiber, der bei der Veröffentlichung der Anthos-Cluster in AWS-Version verfügbar war.

Der mit Anthos-Clustern in AWS vorinstallierte Treiber stellt standardmäßig die folgenden StorageClasses bereit:

  • standard-rwo (Standard): wird für die Bereitstellung von EBS-gp2-Volumes verwendet
  • premium-rwo: wird für die Bereitstellung von EBS-io1-Volumes verwendet

EBS-Volumes unterstützen den ReadWriteOnce-Zugriffsmodus von Kubernetes.

Bereits vorhandene EBS-Volumes

Sie können vorhandene EBS-Volumes in Anthos-Clustern auf AWS-Arbeitslasten bereitstellen. Beispiele zur Verwendung von EBS-Volumes in Anthos-Clustern in AWS finden Sie unter Vorhandenes EBS-Volume importieren.

Elastic File System (EFS)

Anthos-Cluster in AWS 1.6 und höher unterstützen die Bereitstellung bereits vorhandener AWS EFS-Dateisysteme und -Zugangspunkte. Weitere Informationen finden Sie unter EFS verwenden.

Zusätzliche Speicheroptionen

Andere Speichersysteme von Drittanbietern können mit Anthos-Clustern in AWS über Containerspeicher-Treiber (CSI) von Drittanbietern (empfohlen) oder integrierte Kubernetes-Volume-Plug-ins verwendet werden.

CSI-Treiber

Das Container Storage Interface (CSI) ist eine API mit offenen Standards, mit der Kubernetes beliebige Speichersysteme an containerisierte Arbeitslasten anhängen kann. Eine nicht umfassende Liste der CSI-Treiber finden Sie in der Kubernetes-CSI-Entwicklerdokumentation. Anthos-Cluster in AWS unterstützen CSI v1.x.

Wenn Sie einen CSI-Treiber in Ihrem Cluster verwenden möchten, müssen Sie den CSI-Treiber installieren, der von Ihrem Speicheranbieter bereitgestellt wird. Anschließend können Sie Arbeitslasten für die Verwendung der StorageClass des Treibers konfigurieren oder als standardmäßige StorageClass festlegen.

AWS-spezifische Speichertreiber

Die folgenden Volume-Treiber können für Anthos-Cluster in AWS verwendet werden.

FSx for Lustre (FSX)

Anthos-Cluster in AWS verwalten FSx-Volumes nicht direkt. Sie können den aws-fsx-csi-driver manuell installieren, aber Google bietet keinen Support an.

Integrierte Kubernetes-Volume-Plug-ins

Kubernetes wird mit integrierten integrierten Plug-ins geliefert. Zu den unterstützten Treibern gehören:

  • configMap
  • emptyDir
  • hostPath
  • nfs
  • projected
  • secrets

Nächste Schritte