Debuggen von NCP zur LaufzeitLast Updated January 23, 2025
Die ODS (Online Diagnostic System)-Funktion automatisiert das Debugging von NCP zur Laufzeit. ODS wird über Runbooks implementiert, die in NCP integriert sind.
Runbooks enthalten Debugging-Prozeduren. Ein Runbook generiert einen Debugging-Bericht. Beachten Sie, dass ein vordefiniertes Runbook nicht geändert werden kann.
Sie können CLI-Befehle ausführen, um die folgenden Runbook-Vorgänge durchzuführen:
- Aufrufen eines Runbooks für Laufzeit-Debugging
- Überprüfen des Runbook-Status
- Abrufen des Debugging-Berichts
Ab NCP 4.1.2 ist das Runbook
NCPPendingPod
verfügbar. Dieses Runbook kann zum Debuggen von Pods verwendet werden, die in einem ausstehenden Status hängen bleiben. Es überprüft nsx-node-agent/ncp/hyperbus
, um die Hauptursachenermittlung dieses Problems zu unterstützen.Schritte zum Debuggen zur Laufzeit
Schritt 1: Starten des sha-agent-Containers im NCP-Pod
Standardmäßig gibt es nur einen NCP-Container im NCP-Pod. Wenn Sie das Laufzeit-Debugging ausführen müssen, müssen Sie zuerst den sha-agent-Container im NCP-Pod starten. Die YAML-Datei enthält den geheimen Schlüssel und die Konfigurationszuordnung, die zum Starten des SHA-Agent-Containers erforderlich sind. Der SHA-Agent-Container wird dem NCP-Pod hinzugefügt. Stellen Sie nach dem Anwenden der YAML sicher, dass die beiden Container (NCP und sha-agent) ausgeführt werden.
ncp-ods.yaml:
Schritt 2: Starten des Runbook-Aufrufs und Abrufen des Ergebnisses
In NCP verwenden wir die sha-agent-CLI, um zugehörige Runbook-Vorgänge auszuführen. Dazu werden CLI-Befehle im sha-agent-Container ausgeführt. Im sha-agent-Container ist
sha-appctl
für die Ausführung von Runbook-Befehlen verantwortlich. Wenn das Problem mit einem ausstehenden Status für einen Pod vorliegt, müssen Sie zuerst den Namen und den Namespace des Pods abrufen. Starten Sie zudem einen Runbook-Aufruf mit dem folgenden Befehl:Der Befehl gibt eine Aufruf-ID aus, um den Aufrufstatus nachzuverfolgen. Sie können die ID verwenden, um das Aufrufergebnis mit dem folgenden Befehl abzurufen:
Sie können das Runbook-Ergebnis im JSON-Format in der Befehlsausgabe abrufen, um das Debugging-Ergebnis anzuzeigen.