Verwalten von Maschinenintegritätsprüfungen für Arbeitslastcluster

In diesem Thema wird erläutert, wie Sie MachineHealthCheck-Objekte für von Tanzu Kubernetes Grid erstellte Arbeitslastcluster mithilfe der Tanzu-Befehlszeilenschnittstelle (CLI) erstellen, aktualisieren, abrufen und löschen.

Weitere Informationen finden Sie in der Tanzu CLI-Befehlsreferenz unter tanzu cluster machinehealthcheck.

Hinweis

Um Maschinenintegritätsprüfungen sowohl für Kontrollebenen- als auch für Arbeitslastknoten zu unterstützen, ersetzt die Tanzu CLI v1.6 und höher den Befehl tanzu cluster machinehealthcheck set/get/delete durch die Befehle tanzu cluster machinehealthcheck control-plane set/get/delete und tanzu cluster machinehealthcheck node set/get/delete. Die Befehle tanzu cluster machinehealthcheck set/get/delete sind veraltet und werden in einer zukünftigen Version entfernt.

Informationen zu MachineHealthCheck

MachineHealthCheck ist ein Controller, der die Integritätsüberwachung und die automatische Reparatur für Maschinen bereitstellt. Dieser Controller wird für Knoten der Steuerungsebene und Worker-Knoten in allen Verwaltungs- und Arbeitslastclustern automatisch aktiviert. Wenn der Controller bei der Bereitstellung eines Clusters aktiviert wird, erstellt Tanzu Kubernetes Grid zwei MachineHealthCheck-Standardobjekte im Cluster: eines für die Knoten der Steuerungsebene und eines für die Worker-Knoten. Diese Objekte werden im selben Namespace wie der Cluster erstellt.

Wenn Sie den Controller deaktivieren, können Sie ihn mithilfe der in Erstellen oder Aktualisieren eines MachineHealthCheck-Objekts dokumentierten Befehle erneut aktivieren. Mit den Befehlen können Sie auch vorhandene MachineHealthCheck-Objekte aktualisieren.

Erstellen oder Aktualisieren eines MachineHealthCheck-Objekts

So erstellen Sie ein MachineHealthCheck-Standardobjekt:

  • Führen Sie für die Steuerungsebene eines Clusters Folgendes aus:

    tanzu cluster machinehealthcheck control-plane set CLUSTER-NAME --mhc-name MHC-NAME
    
  • Führen Sie für die Worker-Knoten eines Clusters Folgendes aus:

    tanzu cluster machinehealthcheck node set CLUSTER-NAME --mhc-name MHC-NAME
    

Dabei gilt:

  • CLUSTER-NAME ist der Name des Zielclusters.
  • MHC-NAME ist ein Name, den Sie für das MachineHealthCheck-Objekt gewählt haben. Wenn Sie keinen Namen angeben, wird als Name CLUSTER-NAME festgelegt. Wenn Sie beide Befehle ausführen, müssen Sie --mhc-name angeben.

Mit den obigen Befehlen können Sie auch angepasste MachineHealthCheck -Objekte erstellen oder vorhandene MachineHealthCheck-Objekte aktualisieren. Um ein MachineHealthCheck-Objekt anzupassen oder zu aktualisieren, können Sie eines oder mehrere der folgenden Flags angeben:

  • --match-labels: Diese Option filtert Maschinen nach Bezeichnungsschlüsseln und Werten. Sie können eine oder mehrere Einschränkungen für Bezeichnungen angeben. Das MachineHealthCheck-Objekt wird auf alle Maschinen angewendet, die die angegebenen Einschränkungen erfüllen. Geben Sie die Schlüssel-Wert-Paare im folgenden Format an:

    tanzu cluster machinehealthcheck control-plane set CLUSTER-NAME --mhc-name MHC-NAME --match-labels "key1:value1,key2:value2"
    tanzu cluster machinehealthcheck node set CLUSTER-NAME --mhc-name MHC-NAME --match-labels "key1:value1,key2:value2"
    
  • --node-startup-timeout: Diese Option steuert, wie lange der MachineHealthCheck-Controller auf den Beitritt einer Maschine zum Cluster wartet, ehe die Maschine als fehlerhaft eingestuft wird. Beispiel: In den folgenden Befehlen wird als Einstellung für die Option --node-startup-timeout der Wert 21m festgelegt:

    tanzu cluster machinehealthcheck control-plane set my-cluster --mhc-name my-control-plane-mhc --node-startup-timeout 21m
    tanzu cluster machinehealthcheck node set my-cluster --mhc-name my-worker-mhc --node-startup-timeout 21m
    

    Kann eine Maschine nicht innerhalb des angegebenen Zeitraums zum Cluster hinzugefügt werden, erstellt der MachineHealthCheck-Controller die Maschine neu.

  • --unhealthy-conditions: Mit dieser Option können die Bedingungen Ready, MemoryPressure, DiskPressure, PIDPressure und NetworkUnavailable festgelegt werden. Der MachineHealthCheck-Controller verwendet die Bedingungen, die Sie für die Integritätsüberwachung Ihrer Knoten der Steuerungsebene und Ihrer Worker-Knoten festgelegt haben. Den Status einer Bedingung legen Sie mit True, False oder Unknown fest. Beispiel:

    tanzu cluster machinehealthcheck control-plane set my-cluster --mhc-name my-control-plane-mhc --unhealthy-conditions "Ready:False:5m,Ready:Unknown:5m"
    tanzu cluster machinehealthcheck node set my-cluster --mhc-name my-worker-mhc --unhealthy-conditions "Ready:False:5m,Ready:Unknown:5m"
    

    Im obigen Beispiel werden als Einstellung für die Bedingung Ready die Werte False:5m und Unknown:5m festgelegt. Verbleibt eine Maschine länger als 5m im Status Unknown oder False, stuft der MachineHealthCheck-Controller die Maschine als fehlerhaft ein und erstellt sie neu.

Abrufen eines MachineHealthCheck-Objekts

So rufen Sie ein MachineHealthCheck-Objekt ab,

  • Führen Sie für die Steuerungsebene des Zielclusters Folgendes aus:

    tanzu cluster machinehealthcheck control-plane get CLUSTER-NAME --mhc-name MHC-NAME
    

    Sie können das Flag --mhc-name auslassen, wenn das Objekt mit dem Standardnamen erstellt wurde.

  • Führen Sie für die Worker-Knoten des Zielclusters Folgendes aus:

    tanzu cluster machinehealthcheck node get CLUSTER-NAME --mhc-name MHC-NAME
    

    Sie können das Flag --mhc-name auslassen, wenn das Objekt mit dem Standardnamen erstellt wurde.

Löschen eines MachineHealthCheck-Objekts

So löschen Sie ein MachineHealthCheck-Objekt:

  • Führen Sie für die Steuerungsebene des Zielclusters Folgendes aus:

    tanzu cluster machinehealthcheck control-plane delete CLUSTER-NAME --mhc-name MHC-NAME
    

    Sie können das Flag --mhc-name auslassen, wenn das Objekt mit dem Standardnamen erstellt wurde.

  • Führen Sie für die Worker-Knoten des Zielclusters Folgendes aus:

    tanzu cluster machinehealthcheck node delete CLUSTER-NAME --mhc-name MHC-NAME
    

    Sie können das Flag --mhc-name auslassen, wenn das Objekt mit dem Standardnamen erstellt wurde.

check-circle-line exclamation-circle-line close-line
Scroll to top icon