Speicheroptionen

Sie erstellen nichtflüchtigen Speicher für Arbeitslasten, die in GKE on Azure mit Kubernetes-Objekten ausgeführt werden.

Speicher der Steuerungsebene

Wenn Sie einen Cluster erstellen, stellt GKE on Azure Premium SSD LRS-Laufwerke für die Steuerungsebene und etcd-Volumes bereit.

Nichtflüchtigen Speicher in GKE on Azure-Arbeitslasten verwenden

In GKE on Azure verwenden Sie die Kubernetes PersistentVolume (PV), PersistentVolumeClaim (PVC) und StorageClass Ressourcen, um nichtflüchtige Datei- und Blockspeicher für Arbeitslasten bereitzustellen. Sie können Snapshots des nichtflüchtigen Speichers mit den VolumeSnapshot und VolumeSnapshotClass erstellen. Snapshots werden in Ihrem Azure-Konto gespeichert.

StorageClass

Cluster haben eine standardmäßige Kubernetes-StorageClass, die zustandsorientierten Speicher für Arbeitslasten auf Azure Disk Storage-Volumes (AzureDisk) dynamisch bereitstellt. Sie können auch eine andere StorageClass verwenden, um andere Volume-Typen bereitzustellen. Diese Optionen werden im folgenden Abschnitt beschrieben.

Azure-Speicherkonten

GKE on Azure erstellt automatisch ein Azure Speicherkonto wenn ein Cluster erstellt wird. Wenn Sie ein bestimmtes Speicherkonto verwenden möchten, erstellen Sie eine benutzerdefinierte Speicherklasse.

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.

Azure Disk Storage (AzureDisk)

GKE on Azure verwaltet Azure Disk Volumes mit dem azuredisk-csi-driver.

Die CSI-Treiberversion ist an eine GKE on Azure-Kubernetes-Version gebunden. Wenn Sie ein Upgrade Ihrer Clusterversion durchführen, aktualisiert GKE on Azure die Treiberversion automatisch. Diese Version ist in der Regel die neueste Treiberversion, die zum Zeitpunkt der Veröffentlichung der GKE on Azure-Version verfügbar ist. Der Legacy-Kubernetes-Volume-Typ kubernetes.io/azure-disk wird nicht unterstützt.

Der mit GKE on Azure vorinstallierte Treiber stellt standardmäßig die folgenden StorageClasses bereit:

  • standard-rwo (Standard): wird für die Bereitstellung von Standard-SSD-Azure-Laufwerken mit LRS verwendet
  • premium-rwo: wird für die Bereitstellung von Premium-SSD-Azure-Laufwerken mit LRS verwendet

Azure Disk-Volumes unterstützen den ReadWriteOnce-Zugriffsmodus von Kubernetes.

Volume-Snapshots

Sie können die VolumeSnapshot verwenden, um Snapshots von Speicher-Volumes zu erstellen. Anschließend können Sie neue nichtflüchtige Volumes aus diesen Snapshots bereitstellen.

Volume-Klonen

Sie können das CSI-Volume-Klonen verwenden, um vorhandene Azure Disk-Volumes zu klonen. Weitere Informationen finden Sie im Beispiel zum Klonen von Volumes.

Anpassung der Volume-Größe

Sie können die Größe nicht angehängter Azure Disk-Volumes anpassen. Weitere Informationen finden Sie im Beispiel zur Größenanpassung von Volumes. Das Anpassen der Größe während des Hinzufügens und Bereitstellens des Volumes wird nicht unterstützt.

Freigegebene Azure-Laufwerke

Für Arbeitslasten, die für die Koordinierung von Schreibvorgängen auf einem freigegebenen Roh blocklaufwerk konzipiert wurden, unterstützt GKE on Azure freigegebene Azure-Laufwerke. Weitere Informationen finden Sie unter Freigegebenes Laufwerk(Multi-Knoten-ReadWrite) in der CSI-Dokumentation für Azure-Laufwerke.

Azure File Storage (AzureFile)

GKE on Azure verwaltet Azure Files Volumes mit dem azurefile-csi-driver

Der CSI-Treiber ist an eine GKE on Azure-Kubernetes-Version gebunden. Wenn Sie ein Upgrade Ihrer Clusterversion durchführen, wird die neue Treiberversion automatisch angewendet. Diese Version ist in der Regel die neueste Treiberversion, die zum Zeitpunkt der Veröffentlichung der GKE on Azure-Version verfügbar ist. Der Legacy-Kubernetes-Volume-Typ kubernetes.io/azure-file wird nicht unterstützt.

Der mit GKE on Azure vorinstallierte Treiber stellt standardmäßig die folgenden StorageClasses bereit:

  • standard-rwx: wird für die Bereitstellung von Standard-SSD Azure-Dateifreigaben mit LRS verwendet
  • premium-rwx: wird für die Bereitstellung von Premium-SSD Azure-Dateifreigaben mit LRS verwendet

Azure-Datei-Volumes verwenden den ReadWriteMany-Zugriffsmodus von Kubernetes.

Volume-Snapshots

Sie können die VolumeSnapshot Ressource verwenden, um Snapshots von Azure File-Volumes zu erstellen. Weitere Informationen finden Sie in der Dokumentation zum Feature Azure File-Snapshot. Zum Wiederherstellen eines Snapshots verwenden Sie das Azure-Portal. Weitere Informationen finden Sie unter Übersicht über Freigabe-Snapshots für Azure-Dateien.

Anpassung der Volume-Größe

Sie können die Größe von Azure File-Volumes anpassen. Weitere Informationen finden Sie im Beispiel zur Größenanpassung von Volumes.

Zusätzliche Speichertreiber

Andere Speichersysteme von Drittanbietern können mit GKE on Azure über Drittanbieter-Containerspeicher-Treiber (CSI) von Drittanbietern (empfohlen) oder in Kubernetes-Volume-Plug-ins verwendet werden.

CSI-Treiber

Das Container Storage Interface (CSI) ist eine API mit offenen Standards, mit der Kubernetes beliebige Speicher systeme an containerisierte Arbeitslasten anhängen kann. Eine nicht umfassende Liste der CSI-Treiber kann in der Kubernetes-CSI-Entwicklerdokumentationgefunden werden. GKE on Azure unterstützt 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.

Azure-spezifische Speichertreiber

Die folgenden Volume-Treiber können mit GKE on Azure verwendet werden:

GKE on Azure verwaltet Azure Blob Storage nicht direkt. Sie können den blob-csi-driver CSI Treiber manuell installieren, aber Google bietet keine Unterstützung dafür.

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