Die ODS (Online Diagnostic System)-Funktion automatisiert das Debugging von NSX zur Laufzeit. ODS wird über in NSX integrierte Runbooks implementiert. Runbooks enthalten Debugging-Prozeduren und besitzen vollständige Beobachtbarkeit für NSX Komponenten. Ein Runbook generiert einen Debugging-Bericht. Außerdem generiert es Laufzeitartefakte eines Problems, z. B. Paketerfassung, Live-Core-Dump des Benutzerprozesses und Ausgabe von Skripts und Tools. Diese Artefakte können später erfasst und für Offline-Analysen und Debugging verwendet werden. Beachten Sie, dass ein vordefiniertes Runbook nicht geändert werden kann.
Sie können APIs verwenden, um die folgenden Runbook-Vorgänge durchzuführen:
- Aufrufen eines Runbooks für Laufzeit-Debugging
- Prüfen des Debugging-Berichts
- Herunterladen der vom aufgerufenen Runbook generierten Artefakte
- Verwalten des Lebenszyklus eines Runbooks
Vordefinierte Runbooks
Ab NSX 4.1.1 wird ODS auch für Unified Appliance (UA) unterstützt. In der folgenden Tabelle sind die Runbooks und auch die Knoten aufgeführt, auf denen Sie sie ausführen können.
Runbook | Beschreibung | Knoten | Version | |
---|---|---|---|---|
PnicPerf | Dieses Runbook kann pNIC TX- und RX-Leistungsprobleme erkennen. In diesem Runbook wird die ID des zu diagnostizierenden logischen Ports als Eingabeargument verwendet. |
ESXi | 4.1 | |
OverlayTunnel | Dieses Runbook kann Overlay-Tunnelausfälle identifizieren, z. B. Gateway-Konfigurationsfehler, fehlender Tunnel, inaktiver Tunnel. Dieses Runbook verwendet die IP-Adresse des Quell-VTEP und die IP-Adresse des Ziel-VTEP als Eingabeargumente. |
ESXi | 4.1 | |
PortBlock | Dieses Runbook kann Ursachen für die Blockierung eines Ports identifizieren, z. B. die Blockierung eines DVPorts aufgrund einer falschen LSP/LS-Konfiguration. | ESXi | 4.1 | |
AdfCollect | Dieses Runbook erfasst Leistungsdaten des ESXi-Datenpfads über den ADF-Collector. Dieses Runbook verwendet die folgenden Eingabeargumente:
|
ESXi | 4.1 | |
ControllerConn | Dieses Runbook kann Controller-Konnektivitätsprobleme identifizieren, die durch Controller-Ausfall, Proxy-Ausfall, Underlay-Netzwerkausfall oder FQDN-Auflösungsfehler verursacht werden. Dieses Runbook verwendet die IP-Adresse des ESXi-Hosts und die IP-Adresse des Controllers als Eingabeargumente. |
ESXi | 4.1 | |
NxgiPlatform | Dieses Runbook dient zur Diagnose von Problemen im NXGI-Plattformdatenpfad, der verschiedene Funktionen unterstützt, darunter Distributed MPS, Endpoint-Schutz, IDFW, IDS und Intelligence. Dieses Runbook verwendet -Funktionalität als Eingabeargument. Dies ist die spezifische abhängige NXGI-Funktionalität (MPS, IDFW, IDS, EPP oder Intelligence, wobei EPP die Standardeinstellung ist), die Überprüfung oder Debugging erfordert. |
ESXi | 4.1.1 | |
VifInfo | Dieses Runbook erhält detaillierte Informationen zu einer virtuellen Schnittstelle, die als Eingabe für andere Runbooks verwendet werden kann. Dieses Runbook verwendet VIF als Eingabeargument. |
ESXi | 4.1.1 | |
EdgeHealth |
Dieses Runbook führt die folgenden Funktionen aus:
Dieses Runbook verfügt über kein Eingabeargument. |
Edge | 4.1.1 | |
MacAddressInfo |
Dieses Runbook diagnostiziert Probleme im Zusammenhang mit einer bestimmten MAC-Adresse und überprüft und behebt Leistungsprobleme auf einem Host-Switch. Es führt die folgenden Funktionen aus:
Dieses Runbook verwendet den Host-Switch-Namen und die MAC-Adresse als Eingabeargumente. |
ESXi | 4.1.1 | |
EdgeDpBfd | Dieses Runbook führt eine Triage von NSX-Edge-BFD-Problemen durch. Dieses Runbook verwendet die Quell-IP und die Ziel-IP der BFD-Sitzung als Eingabeargumente. Die Erfassung wird auch als optionales Argument verwendet, um sicherzustellen, dass nur sitzungsspezifische BFD-Pakete gefiltert und erfasst werden. |
Edge | 4.1.1 | |
DistributedMps | Dieses Runbook überprüft den Systemzustand der Malware-Schutzdienst-Pipeline (MPS) und diagnostiziert alle Probleme mit MPS, wie z. B. eine Fehlfunktion des Schutzes auf einer bestimmten VM oder die Nichtüberprüfung bestimmter Dateien. Das Eingabeargument für dieses Runbook ist die VM-UUID der VM, deren Schutz diagnostiziert werden soll. |
ESXi | 4.1.1 | |
DuplicateVtepDetectorProvider | Dieses Runbook erkennt alle doppelten IP-Adressen oder Bezeichnungen in VTEPs. Dieses Runbook verfügt über kein Eingabeargument. |
UA | 4.1.1 | |
LspStaleInfo | Dieses Runbook ruft die veralteten logischen Ports ab. Dieses Runbook verfügt über kein Eingabeargument. |
UA | ||
BgpNeighborState | Dieses Runbook diagnostiziert verschiedene Flows, die dazu führen können, dass der BGP-Nachbar ausfällt. Das Runbook erfasst auch die folgenden unterstützenden Artefakte für das Offline-Debugging.
Dieses Runbook verwendet die folgenden Eingabeargumente:
|
Edge | 4.1.1 | |
PimMrouteState | Dieses Runbook führt eine Triage des Verlustes von Multicast-Datenverkehr durch, was aus verschiedenen Gründen auftreten kann. Mithilfe einer Quell-IP des Absenders des Multicast-Datenverkehrs und einer Gruppen-IP des Multicast-Datenverkehrs hilft dieses Runbook dabei, die Hauptursache des Problems zu identifizieren und unterstützende Artefakte für das Offline-Debugging zu erfassen. In diesem Runbook dienen die Quell-IP, die Gruppen-IP und die Datenverkehrsrichtung als Eingabeargumente. |
Edge | 4.1.1 | |
OspfNbrState | Dieses Runbook führt eine Triage der Probleme mit dem OSPF-Nachbarstatus durch, indem verschiedene logische Flows diagnostiziert werden. In diesem Runbook dient die IP-Adresse des Nachbarn als Eingabeargument. |
Edge | 4.1.1 | |
IdpsDpStatus | Dieses Runbook überprüft den Status des IDPS/IDS-Moduls (In-Context-Engine) und der IDPS-Engine. Außerdem werden geladene Profile, Regeln, Signaturen und erfasste Ereignisse in sowohl dem IDPS-Modul als auch dem IDPS-Engine-Modul verglichen. Dieses Runbook verfügt über kein Eingabeargument. |
ESXi | 4.1.1 | |
NxgiPlatformUA | Dieses Runbook diagnostiziert Probleme auf der Management Plane für die NXGI-Plattform, welche verschiedene Funktionen wie Distributed MPS, Endpoint Protection, IDFW, IDS und Intelligence unterstützt. Dieses Runbook kann in Verbindung mit dem NxgiPlatform-Runbook verwendet werden, das auf Transportknoten ausgeführt wird. In diesem Runbook wird die Transportknoten-ID als optionales Eingabeargument verwendet. |
UA | 4.1.1 | |
CorfuServer | Dieses Runbook überprüft die Stabilität des Corfu-Serverlayouts, den Infra-Ping- und Festplatten-E/A-Zustand sowie die Integrität des Komprimierers. Um die standardmäßig einbezogenen vergangene Tage oder Stunden von Protokollereignissen zu überschreiben, verwendet dieses Runbook die einbezogenen vergangenen Tage und Stunden als Eingabeargumente. |
UA | 4.1.1 | |
EdgeIDPS | Dieses Runbook überprüft und ruft Statistiken für die in Edge vorhandene IDS/IPS-Signatur ab. Dieses Runbook verwendet die Signatur-ID als Eingabeargument. |
Edge | 4.1.1 | |
EdgeRouting | Dieses Runbook überprüft mehrere Aspekte der Integrität eines bestimmten logischen Routers und stellt eine Liste von Edge-Prozessen bereit, die sich nicht in einem guten Zustand befinden. Das Runbook enthält Anweisungen zur Fehlerbehebung für häufige Probleme beim vertikalen Routing. Das Runbook sammelt verschiedene Informationen und meldet den Status der Routing-Protokolle, Tunnel und Ports. Es führt eine Integritätsprüfung für den Routing-Stack und verschiedene Daemons durch, die vom Routing auf dem Edge verwendet werden. Für die angegebene Ziel-IP werden die RIB-, FIB- und ARP-Tabellen überprüft. Außerdem werden ein Ping und eine Traceroute unter Verwendung der Quell- und Ziel-IP ausgeführt.
Dieses Runbook verwendet die folgenden Eingabeargumente:
|
Edge | 4.1.1 | |
PimConfigCheck |
Dieses Runbook stellt weitere Details dazu bereit, was genau fehlgeschlagen ist, wenn im Edge der Fehler „routing_config_error“ auftritt. Es hilft auch bei der Behebung des Problems. Dieses Runbook verfügt über kein Eingabeargument. |
Edge | 4.1.1 | |
NCPPendingPod | Dieses Runbook debuggt einen Pod, der im Status „Ausstehend“ feststeckt. Dieses Runbook verwendet den Namespace und den Namen des ausstehenden Pods als Eingabeargumente. |
ESXi | 4.1.2 |
Schritte zum Debuggen zur Laufzeit
Führen Sie die folgenden Schritte aus, um das Debugging zur Laufzeit durchzuführen:
- Schritt 1: Rufen Sie eine Liste der vordefinierten Runbooks ab.
-
Führen Sie die folgende API aus, um eine Liste vordefinierter Runbooks abzurufen.
GET https://<nsx-mgr>/policy/api/v1/infra/sha/pre-defined-runbooks
Diese API gibt eine Liste vordefinierter Runbooks zusammen mit den folgenden Informationen zurück:
- Konfigurationsdetails.
- Knotentyp, auf dem das Runbook unterstützt wird.
- Allgemeine Details des Runbook wie ID, Name und Pfad.
- Parameterdetails, sofern zum Zeitpunkt des Aufrufens des Runbooks erforderlich.
Beispielantwort:
{ "results": [ { "version": { "major": 1, "minor": 0 }, "default_config": { "enabled": true, "timeout": 300, "threshold_number": 5, "throttle_cycle": 10 }, "supported_node_types": [ "nsx-esx" ], "parameters": [ { "name": "advanced", "optional": true, "parameter_type": "BOOLEAN", "default_value": "False" }, { "name": "cycle", "optional": false, "parameter_type": "INTEGER", "max": "20", "min": "1" }, { "name": "interval", "optional": true, "parameter_type": "INTEGER", "max": "300", "min": "1" } ], "resource_type": "OdsPredefinedRunbook", "id": "00000000-0000-4164-6643-6f6c6c656374", "display_name": "AdfCollect", "path": "/infra/sha/pre-defined-runbooks/00000000-0000-4164-6643-6f6c6c656374", "relative_path": "00000000-0000-4164-6643-6f6c6c656374", "parent_path": "/infra", "remote_path": "", "unique_id": "069a4c7b-532a-4926-a402-6a7986a306b2", "realization_id": "069a4c7b-532a-4926-a402-6a7986a306b2", "owner_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "origin_site_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "marked_for_delete": false, "overridden": false, "_create_time": 1669600880454, "_create_user": "system", "_last_modified_time": 1669600880454, "_last_modified_user": "system", "_system_owned": false, "_revision": 0 }, { "version": { "major": 1, "minor": 0 }, "default_config": { "enabled": true, "timeout": 60, "threshold_number": 5, "throttle_cycle": 3 }, "supported_node_types": [ "nsx-esx" ], "resource_type": "OdsPredefinedRunbook", "id": "0000436f-6e74-726f-6c6c-6572436f6e6e", "display_name": "ControllerConn", "path": "/infra/sha/pre-defined-runbooks/0000436f-6e74-726f-6c6c-6572436f6e6e", "relative_path": "0000436f-6e74-726f-6c6c-6572436f6e6e", "parent_path": "/infra", "remote_path": "", "unique_id": "3914cbe4-41b4-45f1-9dad-2bd96a2de0d8", "realization_id": "3914cbe4-41b4-45f1-9dad-2bd96a2de0d8", "owner_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "origin_site_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "marked_for_delete": false, "overridden": false, "_create_time": 1669600880493, "_create_user": "system", "_last_modified_time": 1669600880493, "_last_modified_user": "system", "_system_owned": false, "_revision": 0 }, { "version": { "major": 1, "minor": 0 }, "default_config": { "enabled": true, "timeout": 120, "threshold_number": 5, "throttle_cycle": 5 }, "supported_node_types": [ "nsx-esx" ], "parameters": [ { "name": "src", "optional": false, "parameter_type": "COMPOUND" }, { "name": "dst", "optional": false, "parameter_type": "COMPOUND" } ], "resource_type": "OdsPredefinedRunbook", "id": "0000004f-7665-726c-6179-54756e6e656c", "display_name": "OverlayTunnel", "path": "/infra/sha/pre-defined-runbooks/0000004f-7665-726c-6179-54756e6e656c", "relative_path": "0000004f-7665-726c-6179-54756e6e656c", "parent_path": "/infra", "remote_path": "", "unique_id": "3597af28-e670-456e-8347-4d1a53a5cb90", "realization_id": "3597af28-e670-456e-8347-4d1a53a5cb90", "owner_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "origin_site_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "marked_for_delete": false, "overridden": false, "_create_time": 1669600880518, "_create_user": "system", "_last_modified_time": 1669600880518, "_last_modified_user": "system", "_system_owned": false, "_revision": 0 }, { "version": { "major": 1, "minor": 0 }, "default_config": { "enabled": true, "timeout": 120, "threshold_number": 5, "throttle_cycle": 5 }, "supported_node_types": [ "nsx-esx" ], "parameters": [ { "name": "lsp", "optional": false, "parameter_type": "STRING" } ], "resource_type": "OdsPredefinedRunbook", "id": "00000000-0000-0000-506e-696350657266", "display_name": "PnicPerf", "path": "/infra/sha/pre-defined-runbooks/00000000-0000-0000-506e-696350657266", "relative_path": "00000000-0000-0000-506e-696350657266", "parent_path": "/infra", "remote_path": "", "unique_id": "53f29b77-dcf5-4561-85ec-8f35280e3f3a", "realization_id": "53f29b77-dcf5-4561-85ec-8f35280e3f3a", "owner_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "origin_site_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "marked_for_delete": false, "overridden": false, "_create_time": 1669600880553, "_create_user": "system", "_last_modified_time": 1669600880553, "_last_modified_user": "system", "_system_owned": false, "_revision": 0 }, { "version": { "major": 1, "minor": 0 }, "default_config": { "enabled": true, "timeout": 60, "threshold_number": 5, "throttle_cycle": 3 }, "supported_node_types": [ "nsx-esx" ], "parameters": [ { "name": "vif", "optional": false, "parameter_type": "STRING" } ], "resource_type": "OdsPredefinedRunbook", "id": "00000000-0000-0050-6f72-74426c6f636b", "display_name": "PortBlock", "path": "/infra/sha/pre-defined-runbooks/00000000-0000-0050-6f72-74426c6f636b", "relative_path": "00000000-0000-0050-6f72-74426c6f636b", "parent_path": "/infra", "remote_path": "", "unique_id": "6f411a92-30c0-4838-9758-c00220cb5fab", "realization_id": "6f411a92-30c0-4838-9758-c00220cb5fab", "owner_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "origin_site_id": "f2a2a9e1-2578-435d-877d-47e01eb04954", "marked_for_delete": false, "overridden": false, "_create_time": 1669600880572, "_create_user": "system", "_last_modified_time": 1669600880572, "_last_modified_user": "system", "_system_owned": false, "_revision": 0 } ], "result_count": 5, "sort_by": "display_name", "sort_ascending": true }
In der obigen Antwort werden die folgenden vordefinierten Runbooks zurückgegeben.- AdfCollect
- ControllerConn
- OverlayTunnel
- PnicPerf
- PortBlock
Wenn ein Runbook beim Aufruf einen Parameter erfordert, werden die Parameterdetails im Schlüssel parameters angegeben. Das Overlay-Tunnel-Runbook erfordert z. B. zwei Parameter: source und destination, bei denen es sich um lokale und Remote-VTEP-IPs des untersuchten Tunnels handelt.
- Schritt 2: Rufen Sie die Parameterdetails des Runbooks ab.
-
Führen Sie die folgende API aus, um die Parameterdetails eines Runbooks abzurufen, das Sie aufrufen möchten.
- Schritt 3: Rufen Sie das Runbook auf.
-
Führen Sie die folgende API aus, um ein Runbook aufzurufen.
POST https://<nsx-mgr>/policy/api/v1/infra/sha/runbook-invocations/<invoke-name>
Beispielanforderung: Aufrufen des Overlay-Tunnel-Runbooks.
POST https://<nsx-mgr>/policy/api/v1/infra/sha/runbook-invocations/OverlayTunnel { "runbook_path": "/infra/sha/pre-defined-runbooks/0000004f-7665-726c-6179-54756e6e656c", "target_node": "6c7a9374-459d-46b2-9ea6-c63b37c7cc38", "arguments": [ { "key": "src", "value": "192.168.0.11" }, { "key": "dst", "value": "192.168.0.10" } ] }
- Schritt 4: Überprüfen Sie den Bericht des aufgerufenen Runbooks.
-
Führen Sie die folgende API aus, um den Bericht des aufgerufenen Runbook abzurufen.
GET https://<nsx-mgr>/policy/api/v1/infra/sha/runbook-invocations/<invoke-name>/report
Beispielanforderung:
GET https://<nsx-mgr>/policy/api/v1/infra/sha/runbook-invocations/OverlayTunnel/report
Beispielantwort:
{ "invocation_id": "70527fed-1e5e-4fed-a880-28cde04a66b1", "target_node": "6c7a9374-459d-46b2-9ea6-c63b37c7cc38", "timestamp": 1662469099, "sys_info": { "host_name": "sc2-10-185-4-158.eng.vmware.com", "os_name": "VMkernel", "os_version": "7.0.3" }, "result_message": "Tunnel 192.168.0.11 -> 192.168.0.10 is in up state", "recommendation_message": "No changes required as the tunnel is in up state.", "step_details": [ { "step_id": 1, "action_summary": "Check the status of tunnel for the given source/destination VTEPs.", "action_result": "Tunnel 192.168.0.11 -> 192.168.0.10 is in state up" } ], "status": { "request_status": "SUCCESS", "operation_state": "FINISHED" } }
In der Antwort werden einige Metadateninformationen zurückgegeben, z. B. der Zeitstempel und Systemdetails wie Hostname und Betriebssystem. Der Bericht enthält auch das Ergebnis des Debuggings und eventuelle Abhilfemaßnahmen sowie die zur Fehlersuche ausgeführten Schritte mit einer Zusammenfassung der Maßnahmen und dem Ergebnis der einzelnen Schritte. Wenn das Debugging aus irgendeinem Grund unterbrochen wird, enthält das Feld operation_state einen Wert, der den Grund für die Unterbrechung angibt. Wenn der Runbook-Aufruf nicht erfolgreich verläuft, enthält der Bericht Fehlerdetails und zeigt keine Debugging-bezogenen Felder an.
- Schritt 5: Laden Sie Artefakte herunter.
-
- Führen Sie die folgende API aus, um Artefakte zu erfassen.
POST https://{{mgr-ip}}/policy/api/v1/infra/sha/runbook-invocations/{{invocation-name}}
Beispielanforderung:POST https://{{mgr-ip}}/policy/api/v1/infra/sha/runbook-invocations/{{invocation-name}} { "runbook_path": "/infra/sha/pre-defined-runbooks/00000000-0000-4164-6643-6f6c6c656374", "target_node": "{{target-node}}", "arguments": [ { "key": "advanced", "value": "{{advanced-mode}}" }, { "key": "cycle", "value": "{{cycle-count}}" }, { "key": "interval", "value": "{{interval-in-sec}}" } ] }
Wenn der Parameter advanced zum Zeitpunkt des Aufrufs auf „false“ festgelegt ist, erfasst das Runbook Topologieinformationen, Netzwerkstatistiken, NSX-DP-Statistiken und Uplink-Informationen. Wenn der Parameter advanced auf „true“ festgelegt ist, führt das Runbook zusätzlich erweiterte Performance-Tools wie vmkstats (nur auf der physischen Maschine verfügbar) aus.
Der Parameter cycle definiert wie oft der ADF-Collector bei einem Aufruf ausgeführt wird.
Der Parameter interval definiert die Wartezeit zwischen aufeinanderfolgenden ADF-Collector-Ausführungen. Dieser wird nur angewendet, wenn für den Parameter cycle ein Wert größer 1 festgelegt ist.
Beispielantwort:
{ "invocation_id": "80a0037a-52e1-48d7-b28e-c3bfb8475e8c", "target_node": "b794f78f-7eb0-433f-8f11-63e6b3121c28", "timestamp": 1668674073, "sys_info": { "host_name": "sc2-rdops-vm06-dhcp-204-101.eng.vmware.com", "os_name": "VMkernel", "os_version": "7.0.3" }, "result_message": "ADF data collection runbook completes.", "recommendation_message": "No action needs to be taken.", "step_details": [ { "step_id": 1, "action_summary": "Run ADF collector.", "action_result": "ADF data collection is successfully performed in the following time point(s) along with the following artifact(s): [(2022-11-17 08:35:30, a44f0446-0ac3-4e7f-8513-fb1248985d9e.tar)]", "artifacts": [ "a44f0446-0ac3-4e7f-8513-fb1248985d9e" ] } ], "status": { "request_status": "SUCCESS", "operation_state": "FINISHED" } }
- Führen Sie die folgende API aus, um die Artefakte herunterzuladen.
GET https://<nsx-mgr>/policy/api/v1/infra/sha/runbook-invocations/<invoke-name>/artifact
Wenn das Runbook die Artefakte generiert hat, gibt die API eine Paketdatei zurück. Andernfalls wird eine Fehlermeldung zurückgegeben. Speichern Sie die binäre Antwort in einer tar.gz-Datei. Diese Datei enthält einen Runbook-Aufrufbericht (in JSON) sowie eine TAR-Datei für die durchgeführte ADF-Sammlung.
- Führen Sie die folgende API aus, um Artefakte zu erfassen.
Ändern einer Runbook-Konfiguration
Zuerst wird eine Transportknotengruppe (TN) erstellt, an die dann ein Runbook-Profil gebunden wird. Wenn Sie die Konfiguration eines Runbooks ändern, wird diese auf allen Knoten geändert, an die das Runbook-Profil gebunden ist. Sie können konfigurieren, ob ein Runbook aktiviert ist oder nicht, wann eine Zeitüberschreitung beim Debugging auftritt und wie häufig das Runbook mit dem Drosselzyklusmechanismus aufgerufen werden kann. Der Drosselzyklusmechanismus gibt an, wie oft ein Runbook in einer bestimmten Zeit ausgeführt werden kann.
Beachten Sie, dass ein Runbook nur ein Profil besitzen kann, wohingegen ein Knoten möglicherweise mehrere Runbook-Profile besitzt, die auf den TN-Gruppen basieren, denen es angehört. In diesem Fall wird das Profil mit der höchsten Priorität auf den Knoten angewendet.
Um die Runbook-Konfiguration zu ändern, führen Sie die folgenden Schritte aus:
- Schritt 1: Erstellen Sie eine TN-Gruppe von ESXi.
-
Führen Sie die folgende API aus, um eine TN-Gruppe zu erstellen.
PATCH https://<nsx-mgr>/policy/api/v1/infra/domains/default/groups/<group-name>
Beispielanforderung:
PATCH https://<nsx-mgr>/policy/api/v1/infra/domains/default/groups/<group-name> { "expression": [ { "paths": [ "/infra/sites/default/enforcement-points/default/host-transport-nodes/TN1" ], "resource_type": "PathExpression" } ], "extended_expression": [], "reference": false, "group_type": [], "resource_type": "Group" }
- Schritt 2: Ändern Sie die Konfiguration des Runbook-Profils und binden Sie die TN-Gruppe an das Profil.
-
Führen Sie die folgende API aus, um die Konfiguration zu ändern:
PATCH https://<nsx-mgr>/policy/api/v1/infra/sha/runbook-profiles/<profile-name>
Beispielanforderung:
PATCH https://<nsx-mgr>/policy/api/v1/infra/sha/runbook-profiles/<profile-name> { "runbook_path": "/infra/sha/pre-defined-runbooks/0000004f-7665-726c-6179-54756e6e656c", "applied_to_group_path": "/infra/domains/default/groups/tngroup2", "config": { "enabled": true, "timeout": 120, "threshold_number": 2, "throttle_cycle": 6 } }
In diesem Beispiel beläuft sich throttle_cycle auf 6 Minuten und threshold_number auf 2. Das bedeutet, dass das Runbook innerhalb von 6 Minuten maximal zweimal aufgerufen werden kann.
Vollständige Informationen zu ODS-APIs finden Sie im API-Handbuch für NSX Intelligence & NSX Application Platform.