Für Tanzu Kubernetes Grid-Cluster ist – wie auch für einige andere Komponenten und Arbeitslasten, die in Supervisor-Namespaces ausgeführt werden – persistenter Speicher erforderlich.

Speicherrichtlinien für Tanzu Kubernetes Grid-Cluster

Um persistente Speicherressourcen für die Tanzu Kubernetes Grid-Cluster bereitzustellen, konfiguriert ein vSphere-Administrator Speicherrichtlinien, die unterschiedliche Speicheranforderungen beschreiben. Der Administrator fügt die Speicherrichtlinien dann dem Namespace hinzu, in dem der Tanzu Kubernetes Grid-Cluster bereitgestellt wird. Mit den für den Namespace sichtbaren Speicherrichtlinien wird festgelegt, auf welche Datenspeicher der Namespace zugreifen und welche Datenspeicher er für persistenten Speicher verwenden kann. Die Richtlinien bestimmen, wie die Clusterknoten und Arbeitslasten in der vSphere-Speicherumgebung platziert werden.

Basierend auf den für den Namespace zugewiesenen Speicherrichtlinien erstellt vSphere IaaS control plane passende Kubernetes-Speicherklassen, die automatisch im Namespace angezeigt werden. Sie werden auch an den Tanzu Kubernetes Grid-Cluster in diesem Namespace weitergegeben.

Im Tanzu Kubernetes Grid-Cluster werden die Speicherklassen in zwei Editionen angezeigt: eine mit dem Immediate- und eine mit dem WaitForFirstConsumer-Bindungsmodus. Die vom DevOps-Team ausgewählte Edition hängt von den jeweiligen Anforderungen ab.

Weitere Informationen zu Speicherklassen in Tanzu Kubernetes Grid-Clustern finden Sie unter Verwenden von Speicherklassen für persistente Volumes.

Integrieren von Tanzu Kubernetes Grid-Clustern in vSphere-Speicher

Für die Integration in den Supervisor und in vSphere-Speicher verwenden Tanzu Kubernetes Grid-Cluster paravirtuelle CSI (pvCSI).

pvCSI ist die für Tanzu Kubernetes Grid-Cluster geänderte Version des vSphere CNS-CSI-Treibers. Die pvCSI-Komponente befindet sich im Tanzu Kubernetes Grid-Cluster und ist für alle aus dem Tanzu Kubernetes Grid-Cluster stammenden, speicherbezogenen Anforderungen zuständig. Die Anforderungen werden an CNS-CSI übermittelt und von dort an CNS in vCenter Server weitergeleitet. Dies führt dazu, dass pvCSI nicht direkt mit der CNS-Komponente kommuniziert, sondern bei allen Speicherbereitstellungsvorgängen auf CNS-CSI angewiesen ist. Im Gegensatz zu CNS-CSI benötigt pvCSI keine Anmeldedaten für die Infrastruktur. pvCSI ist mit einem Dienstkonto im Namespace konfiguriert.

pvCSI ist eine Komponente von TKG-Clustern, CNS-CSI ist eine Supervisor-Komponente, und CNS ist eine vCenter Server-Komponente.

Weitere Informationen zu Supervisor-Komponenten für die Integration in vSphere-Speicher finden Sie unter Persistenter Speicher für Arbeitslasten.

Erstellen eines persistenten Volumes

Im Folgenden ist dargestellt, wie unterschiedliche Komponenten miteinander interagieren, wenn ein DevOps-Ingenieur einen speicherbezogenen Vorgang im Tanzu Kubernetes Grid-Cluster durchführt und z. B. eine Beanspruchung eines dauerhaften Volumes (Persistent Volume Claim, PVC) erstellt.

Der DevOps-Ingenieur erstellt ein PVC über die Befehlszeile im Tanzu Kubernetes Grid-Cluster. Durch diese Aktion wird ein übereinstimmendes PVC auf dem Supervisor generiert. Außerdem wird CNS-CSI ausgelöst. CNS-CSI ruft die CNS-API zum Erstellen von Volumes auf.

Zur Erstellung eines dauerhaften Volumes tragen drei Komponenten bei.

Nach erfolgreicher Erstellung eines Volumes wird der Vorgang über den Supervisor wieder an den Tanzu Kubernetes Grid-Cluster zurückgegeben. Infolge dieser Weitergabe können die Benutzer das persistente Volume und die Anforderung des persistenten Volumes im gebundenen Zustand im Supervisor sehen. Außerdem wird ihnen beides im gebundenen Zustand auch im Tanzu Kubernetes Grid-Cluster angezeigt.

Von pvCSI unterstützte Funktionen

Die im Tanzu Kubernetes Grid-Cluster ausgeführte pvCSI-Komponente unterstützt eine Reihe von vSphere- und Kubernetes-Speicherfunktionen.

Unterstützte Funktionen pvCSI mit Tanzu Kubernetes Grid-Cluster
CNS-Unterstützung in vSphere Client Ja
Verbesserte Objektintegrität in vSphere Client Ja (nur vSAN)
Dynamisches dauerhaftes Volume für Blöcke (ReadWriteOnce-Zugriffsmodus) Ja
Dynamisches dauerhaftes Volume für Dateien (ReadWriteMany-Zugriffsmodus) Ja (mit vSAN-Dateidiensten)
vSphere-Datenspeicher VMFS/NFS/vSAN/vVols
Statisches dauerhaftes Volume Ja
Verschlüsselung Nein
Offline-Volume-Erweiterung Ja
Online-Volume-Erweiterung Ja
Volume-Topologie und -Zonen Ja
Mehrere Steuerungsebenen-Instanzen in Kubernetes Ja
WaitForFirstConsumer Ja
VolumeHealth Ja
Storage vMotion mit dauerhaften Volumes Nein