Im Fall einer Konfigurationsänderung sendet NSX Manager in der Regel eine Anfrage an eine andere Komponente, um die Änderung zu implementieren. Wenn Sie die Konfigurationsänderung mithilfe der API durchführen, können Sie für bestimmte Schicht 3-Entitäten den Status der Anfrage verfolgen, um festzustellen, ob die Änderung erfolgreich implementiert wurde.

Die von Ihnen initiierte Konfigurationsänderung wird als gewünschter Zustand bezeichnet. Das Ergebnis der Änderungsimplementierung wird als realisierter Zustand bezeichnet. Wenn NSX Manager die Änderung erfolgreich implementiert, stimmen realisierter und gewünschter Zustand überein. Wenn ein Fehler vorliegt, gibt es keine Übereinstimmung zwischen realisiertem und gewünschtem Zustand.

Wenn Sie eine API zum Durchführen einer Konfigurationsänderung aufrufen, enthält die Antwort für bestimmte Schicht 3-Entitäten den Parameter request_id. Sie können die Parameter request_id und entity_id verwenden, um einen API-Aufruf zum Ermitteln des Anfragestatus durchzuführen.

Diese Funktion unterstützt die folgenden Entitäten und APIs:
EdgeCluster
    POST /edge-clusters
    PUT /edge-clusters/<edge-cluster-id>
    DELETE /edge-clusters/<edge-cluster-id>
    POST /edge-clusters/<edge-cluster-id>?action=replace_transport_node

LogicalRouter
    POST /logical-routers
    PUT /logical-routers/<logical-router-id>
    DELETE /logical-routers/<logical-router-id>
    POST /logical-routers/<logical-router-id>?action=reprocess
    POST /logical-routers/<logical-router-id>?action=reallocate

LogicalRouterPort
    POST /logical-router-ports
    PUT /logical-router-ports/<logical-router-port-id>
    DELETE /logical-router-ports/<logical-router-port-id>

StaticRoute
    POST /logical-routers/<logical-router-id>/routing/static-routes
    PUT /logical-routers/<logical-router-id>/routing/static-routes/<static-route-id>
    DELETE /logical-routers/<logical-router-id>/routing/static-routes/<static-route-id>

BGPConfig
    PUT /logical-routers/<logical-router-id>/routing/bgp

BgpNeighbor
    POST /logical-routers/<logical-router-id>/routing/bgp/neighbors
    PUT /logical-routers/<logical-router-id>/routing/bgp/neighbors/<bgp-neighbor-id>
    DELETE /logical-routers/<logical-router-id>/routing/bgp/neighbors/<bgp-neighbor-id>
    POST /logical-routers/<logical-router-id>/routing/bgp/neighbors/<bgp-neighbor-id>

BGPCommunityList
    POST /logical-routers/<logical-router-id>/routing/bgp/community-lists
    PUT /logical-routers/<logical-router-id>/routing/bgp/community-lists/<community-list-id>
    DELETE /logical-routers/<logical-router-id>/routing/bgp/community-lists/<community-list-id>

AdvertisementConfig
    PUT /logical-routers/<logical-router-id>/routing/advertisement

AdvertiseRouteList
    PUT /logical-routers/<logical-router-id>/routing/advertisement/rules

NatRule
    POST /logical-routers/<logical-router-id>/nat/rules
    PUT /logical-routers/<logical-router-id>/nat/rules/<rule-id>
    DELETE /logical-routers/<logical-router-id>/nat/rules/<rule-id>

DhcpRelayService
    POST /dhcp/relays
    PUT /dhcp/relays/<relay-id>
    DELETE /dhcp/relays/<relay-id>

DhcpRelayProfile
    POST /dhcp/relay-profiles
    PUT /dhcp/relay-profiles/<relay-profile-id>
    DELETE /dhcp/relay-profiles/<relay-profile-id>

StaticHopBfdPeer
    POST /logical-routers/<logical-router-id>/routing/static-routes/bfd-peers
    PUT /logical-routers/<logical-router-id>/routing/static-routes/bfd-peers/<bfd-peers-id>
    DELETE /logical-routers/<logical-router-id>/routing/static-routes/bfd-peers/<bfd-peers-id>

IPPrefixList
    POST /logical-routers/<logical-router-id>/routing/ip-prefix-lists
    PUT /logical-routers/<logical-router-id>/routing/ip-prefix-lists/<ip-prefix-list-id>
    DELETE /logical-routers/<logical-router-id>/routing/ip-prefix-lists/<ip-prefix-list-id>

RouteMap
    POST /logical-routers/<logical-router-id>/routing/route-maps
    PUT /logical-routers/<logical-router-id>/routing/route-maps/<route-map-id>
    DELETE /logical-routers/<logical-router-id>/routing/route-maps/<route-map-id>

RedistributionConfig
    PUT /logical-routers/<logical-router-id>/routing/redistribution
RedistributionRuleList
    PUT /logical-routers/<logical-router-id>/routing/redistribution/rules

BfdConfig
    PUT /logical-routers/<logical-router-id>/routing/bfd-config

MplsConfig
    PUT /logical-routers/<logical-router-id>/routing/mpls

RoutingGlobalConfig
    PUT /logical-routers/<logical-router-id>/routing

IPSecVPNIKEProfile
    POST /vpn/ipsec/ike-profiles
    PUT /vpn/ipsec/ike-profiles/<ike-profile-id>
    DELETE /vpn/ipsec/ike-profiles/<ike-profile-id>

IPSecVPNDPDProfile
    POST /vpn/ipsec/dpd-profiles
    PUT /vpn/ipsec/dpd-profiles/<dpd-profile-id>
    DELETE /vpn/ipsec/dpd-profiles/<dpd-profile-id>

IPSecVPNTunnelProfile
    POST /vpn/ipsec/tunnel-profiles
    PUT /vpn/ipsec/tunnel-profiles/<tunnel-profile-id>
    DELETE /vpn/ipsec/tunnel-profiles/<tunnel-profile-id>

IPSecVPNLocalEndpoint
    POST /vpn/ipsec/local-endpoints
    PUT /vpn/ipsec/local-endpoints/<local-endpoint-id>
    DELETE /vpn/ipsec/local-endpoints/<local-endpoint-id>

IPSecVPNPeerEndpoint
    POST /vpn/ipsec/peer-endpoints
    PUT /vpn/ipsec/peer-endpoints/<peer-endpoint-id>
    DELETE /vpn/ipsec/peer-endpoints/<peer-endpoint-id>

IPSecVPNService
    POST /vpn/ipsec/services
    PUT /vpn/ipsec/services/<service-id>
    DELETE /vpn/ipsec/services/<service-id>

IPSecVPNSession
    POST /vpn/ipsec/sessions
    PUT /vpn/ipsec/sessions/<session-id>
    DELETE /vpn/ipsec/sessions/<session-id>

DhcpServer	
    POST /dhcp/servers
    PUT /dhcp/servers/<server-id>
    DELETE /dhcp/servers/<server-id>

DhcpStaticBinding	
    POST /dhcp/servers/static-bindings
    PUT /dhcp/servers/<server-id>/static-bindings/<binding-id>
    DELETE /dhcp/servers/<server-id>/static-bindings/<binding-id>

DhcpIpPool	
    POST /dhcp/servers/ip-pools
    PUT /dhcp/servers/<server-id>/ip-pools/<pool-id>
    DELETE /dhcp/servers/<server-id>/ip-pools/<pool-id>

DnsForwarder	
    POST /dns/forwarders
    PUT /dns/forwarders/<forwarder-id>
    DELETE /dns/forwarders/<forwarder-id>
Sie können die folgenden APIs zum Abrufen der realisierten Zustände aufrufen:
EdgeCluster
Request - GET /edge-clusters/<edge-cluster-id>/state?request_id=<request-id>
Response - An instance of EdgeClusterStateDto which will inherit ConfigurationState. If the edge cluster is deleted then the state will be unknown and it will return the common entity not found error.

LogicalRouter / All L3 Entites - All L3 entities can use this API to get realization state
Request - GET /logical-routers/<logical-router-id>/state?request_id=<request-id>
Response - An instance of LogicalRouterStateDto which will inherit ConfigurationState. Delete operation of any entity other than logical router can be covered by getting the state of logical router but if the logical router itself is deleted then the state will be unknown and it will return the common entity not found error.

LogicalServiceRouterCluster - All L3 entities which are the part of services can use this API to get the realization state
Request - GET /logical-routers/<logical-router-id>/service-cluster/state?request_id=<request-id>
Response - An instance of LogicalServiceRouterClusterState which will inherit ConfigurationState. 

LogicalRouterPort / DhcpRelayService / DhcpRelayProfile
Request - GET /logical-router-ports/<logical-router-port-id>/state?request_id=<request-id>
Response - An instance of LogicalRouterPortStateDto which will inherit ConfigurationState. 

IPSecVPNIKEProfile / IPSecVPNDPDProfile / IPSecVPNTunnelProfile / IPSecVPNLocalEndpoint / IPSecVPNPeerEndpoint / IPSecVPNService / IPSecVPNSession
Request - GET /vpn/ipsec/sessions/<session-id>/state?request_id=<request-id>
Response - An instance of IPSecVPNSessionStateDto which will inherit ConfigurationState. If the session is deleted then the state will be unknown and it will return the common entity not found error. When IPSecVPNService is disabled, IKE itself is down and it does not respond. It will return unknown state in such a case.

DhcpServer
Request - GET /dhcp/servers/<server-id>/state?request_id=<request-id>
Response - An instance of ConfigurationState.

DhcpStaticBinding
Request - GET /dhcp/servers/<server-id>/static-bindings/<binding-id>/state?request_id=<request-id>
Response - An instance of ConfigurationState.

DhcpIpPool
Request - GET /dhcp/servers/<server-id>/ip-pools/<pool-id>/state?request_id=<request-id>
Response - An instance of ConfigurationState.

DnsForwarder
Request - GET /dns/forwarders/<forwarder-id>/state?request_id=<request-id>
Response - An instance of ConfigurationState.

Informationen zu dieser API finden Sie im Handbuch zu NSX-API.