Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Gesundheits-Check

ZUSAMMENFASSUNG In Cloud-Native Contrail Networking (CN2) Version 22.3 wird ein neues benutzerdefiniertes Ressourcenobjekt für die Zustandsprüfung eingeführt, das die Schnittstelle für virtuelle Maschinen (VMI) mit dem Pod-Erstellungs- und Update-Workflow verknüpft. Bei der Integritätsprüfungsressource handelt es sich um eine Ressource mit Namespacebereich.

Übersicht über die Integritätsprüfung

Die Funktion zur Zustandsprüfung wird vom Contrail vRouter-Agenten bereitgestellt. Sie können eine Ping- oder HTTP-Zustandsprüfung mit einer Schnittstelle verknüpfen. Wenn die Zustandsprüfung fehlschlägt, wird die Schnittstelle basierend auf den im Zustandsprüfungsobjekt konfigurierten Timern und Intervallen als administrativ inaktiv festgelegt und die zugehörigen Routen werden zurückgezogen. Der Datenverkehr der Integritätsprüfung wird weiterhin in einem administrativ inaktiven Zustand übertragen, damit eine Schnittstelle wiederhergestellt werden kann.

Erstellen eines Zustandsprüfungsobjekts

Gehen Sie wie folgt vor, um ein Integritätsprüfungsobjekt zu erstellen.

  1. Verwenden Sie in den Bereitstellungsmanifesten auf der Download-Seite von Contrail Networking die Datei (siehe unten) für die hc.yaml YML-Definition für Zustandsprüfungsobjekte. Derselbe Ordner enthält auch die hc_pod.yaml YML-Definition, um das Zustandsprüfungsobjekt mithilfe von Pod-Definitionen mit VMI zu verknüpfen.

    Beispieldatei hc.yaml :

  2. Füllen Sie die Parameter aus, um die Zustandsprüfung zu definieren. Tabelle 1 listet die Parameter auf und erläutert sie.
    Tabelle 1: Konfigurierbare Parameter für die Zustandsprüfung
    Feldbeschreibung
    Delay Die Verzögerung in Sekunden, um die Zustandsprüfung zu wiederholen.
    DelayUsecs Zeit in Mikrosekunden, nach der die Zustandsprüfung wiederholt wird.
    Enabled Gibt an, dass die Integritätsprüfung aktiviert ist. Der Standardwert ist False.
    ExpectedCodes Wenn das Monitorprotokoll HTTP ist, der erwartete Rückgabecode für HTTP-Vorgänge. Muss im Bereich von 200-299 liegen.
    HealthCheckType Gibt den Typ der Integritätsprüfung an: link-local, end-to-end, segment, vn-ip-list, und end2end. Der Standardwert ist link-local.

    In beiden link-local end-to-end Modi wird die Zustandsprüfung für den Pod auf dem vRouter ausgeführt, auf dem die VMI ausgeführt wird.

    HttpMethod Wenn das Monitorprotokoll HTTP ist, wird als HTTP-Methode GET verwendet.
    MaxRetries Die Anzahl der versuchten Wiederholungen, bevor der Zustand einer Instanz als inaktiv deklariert wird.
    MonitorType Der zu verwendende Protokolltyp: PING, BFD oder TCP.
    Timeout Die Anzahl der Sekunden, die auf eine Antwort gewartet werden soll.
    TimeoutUsecs Zeit in Mikrosekunden, um auf eine Antwort zu warten.
    UrlPath Es muss sich um eine gültige URL handeln. Beispiel: Die IP-Adresse kann ein Platzhalter sein, http://172.16.0.1/<path>der durch die lokale IP-Adresse des Pods oder die Metadaten-IP-Adresse ersetzt wird.

    Im Folgenden finden Sie ein abstraktes Golang-Schema für die Integritätsprüfungsressource.

    Die YML-Darstellung für das Golang-Schema lautet:

  3. Verknüpfen Sie das Health-Check-Objekt mit dem VMI über den Referenzwert core.juniper.net/health-checkfür die Pod-Annotation . Standardmäßig wird die Zustandsprüfung der primären Schnittstelle zugeordnet.
  4. (Optional) Um die Zustandsprüfung mit mehreren Schnittstellen (die an verschiedene NADs oder VNs angehängt sind) zu verknüpfen, können Sie auf das Zustandsprüfungsobjekt innerhalb des cni-args Abschnitts verweisen. Im Folgenden finden Sie ein Beispiel für die Konfiguration cni-args in Anmerkungen.

    Vorhandene VMI-Objekte verfügen über ein neues Feld, um auf das HealthCheck Objekt zu verweisen.

    Für die PING- oder HTTP-überwachungsbasierte Zustandsprüfung beträgt 1seconddas Mindestintervall . Wenn Sie eine Zustandsprüfung unter einer Sekunde für kritische Anwendungen benötigen, können Sie sich für den BFD-basierten Überwachungstyp entscheiden.

Prozess der Integritätsprüfung

Der Contrail vRouter-Agent ist für die Bereitstellung des Zustandsprüfungsdienstes verantwortlich. Der Agent erzeugt einen Testprozess für die Zustandsprüfung, um den Status eines Dienstes zu überwachen, der auf demselben Computeknoten gehostet wird, und der Prozess aktualisiert den Status für den vRouter-Agenten.

Der vRouter-Agent reagiert auf den vom Skript bereitgestellten Status, um die exportierten Schnittstellenrouten zurückzuziehen oder wiederherzustellen. Der Agent ist auch für die Bereitstellung einer Link-Local-Metadaten-IP-Adresse verantwortlich, damit das Skript mithilfe geeigneter NAT-Übersetzungen mit der Ziel-IP-Adresse aus dem Underlay-Netzwerk kommunizieren kann. In einem laufenden System werden diese Informationen in der vRouter-Agenten-Selbstbeobachtung unter folgendem Link angezeigt: