Für die Größe der TKG-Dienstclusterknoten geben Sie die VM-Klasse (virtuelle Maschine) an. Die Plattform bietet VM-Standardklassen, aber Sie können auch eigene Klassen erstellen. Zur Verwendung einer VM-Klasse ordnen Sie sie dem Ziel-vSphere-Namespace zu und erstellen einen Verweis auf die Klasse im Clustermanifest.

Informationen zu VM-Klassen

Eine VM-Klasse ist eine Anforderung für Ressourcenreservierungen für die Verarbeitungsleistung auf der virtuellen Maschine (VM), einschließlich CPU und Arbeitsspeicher (RAM). Beispielsweise reserviert der VM-Klassentyp namens „guaranteed-large“ 4 CPUs und 16 GB RAM.
Hinweis: Die Größe der VM-Festplatte wird durch die OVA-Vorlage und nicht durch die Definition der VM-Klasse festgelegt. Für Tanzu Kubernetes-Versionen beträgt die Festplattengröße 16 GB.
Es gibt zwei Reservierungstypen für VM-Klassen: garantiert und bestmöglich. Die garantierte Klasse reserviert ihre konfigurierten Ressourcen vollständig. Dies bedeutet, dass für einen bestimmten Cluster die Spezifikation spec.policies.resources.requests mit der Spezifikation spec.hardware übereinstimmt. Die bestmögliche Klasse lässt eine Überbelegung von Ressourcen zu. Für Produktionsarbeitslasten wird empfohlen, den garantierten VM-Klassentyp zu verwenden.
Warnung: Da der bestmögliche VM-Klassentyp eine Überbelegung von Ressourcen zulässt, ist es möglich, dass keine Ressourcen mehr verfügbar sind, falls Grenzwerte für den vSphere-Namespace festgelegt wurden, in dem Sie den TKG-Cluster bereitstellen. Wenn ein Konflikt auftritt und die Steuerungsebene betroffen ist, wird die Ausführung des Clusters möglicherweise beendet. Verwenden Sie aus diesem Grund den garantierten VM-Klassentyp für Produktionscluster. Wenn Sie den garantierten VM-Klassentyp nicht für alle Produktionsknoten verwenden können, verwenden Sie den garantierten Klassentyp mindestens für die Knoten der Steuerungsebene.

Verwenden von VM-Klassen mit TKG-Dienstclustern

Um eine VM-Klasse mit einem TKG-Dienstcluster zu verwenden, muss die VM-Klasse an den vSphere-Namespace gebunden sein, in dem der Cluster bereitgestellt wird. Dazu ordnen Sie die Klasse dem Ziel-Namespace zu. Weitere Informationen finden Sie unter Konfigurieren eines vSphere-Namespace für TKG-Dienst-Cluster.

Um die im Ziel- vSphere-Namespace verfügbaren VM-Klassen aufzulisten, verwenden Sie den Befehl kubectl get virtualmachineclass.
Hinweis: Bei Problemen mit diesem Befehl finden Sie weitere Informationen unter Beheben von Fehlern bei VM-Klassen.
Definitionen für VM-Klassen sind nicht unveränderlich. Jede VM-Klasse kann bearbeitet werden, einschließlich der Definitionen für Standard-VM-Klassen. Wenn eine VM-Klasse bearbeitet wird, bleiben vorhandene TKG-Clusterknoten davon unberührt. Neue TKG-Cluster verwenden die geänderte Klasse.
Vorsicht: Wenn Sie eine VM-Klasse bearbeiten, die von einem TKG-Cluster verwendet wird, und dann diesen Cluster horizontal skalieren, verwenden die neuen Knoten die bearbeitete Klassendefinition, die vorhandenen Knoten jedoch die ursprüngliche Klassendefinition, was zu einer Diskrepanz zwischen Klassen führt.

VM-Standardklassen

In der Tabelle werden die Standardtypen von VM-Klassen aufgelistet, die als Bereitstellungsgrößen für Tanzu Kubernetes-Clusterknoten verwendet werden.

Damit nicht übermäßig Ressourcen gebunden werden, sollten Produktionsarbeitslasten den garantierten Klassentyp verwenden. Um zu vermeiden, dass Ihnen der Arbeitsspeicher ausgeht, sollten Sie die kleine oder extrakleine Klassengröße nicht für Worker-Knoten verwenden, auf denen Sie Arbeitslasten in einer beliebigen Umgebung (Entwicklung, Test oder Produktion) bereitstellen.

Tabelle 1. VM-Standardklassen
Klasse CPU Arbeitsspeicher (GB) Reservierte CPU und reservierter Arbeitsspeicher
guaranteed-8xlarge 32 128 Ja
best-effort-8xlarge 32 128 Nein
guaranteed-4xlarge 16 128 Ja
best-effort-4xlarge 16 128 Nein
guaranteed-2xlarge 8 64 Ja
best-effort-2xlarge 8 64 Nein
guaranteed-xlarge 4 32 Ja
best-effort-xlarge 4 32 Nein
guaranteed-large 4 16 Ja
best-effort-large 4 16 Nein
guaranteed-medium 2 8 Ja
best-effort-medium 2 8 Nein
guaranteed-small 2 4 Ja
best-effort-small 2 4 Nein
guaranteed-xsmall 2 2 Ja
best-effort-xsmall 2 2 Nein

Benutzerdefinierte VM-Klassen

vSphere IaaS control plane unterstützt benutzerdefinierte VM-Klassen für die Verwendung mit TKG-Clustern. Nachdem Sie eine benutzerdefinierte VM-Klasse definiert haben, müssen Sie sie dem Ziel-vSphere-Namespace verbinden, bevor Sie sie mit einem Cluster verwenden können. Ausführliche Informationen finden Sie in der Dokumentation zu VM-Diensten.