Outlines settings for API's in NSX-T and logging details
VMware NSX
By default the rate limits for API calls to NSX-T manager are defined in the API guide:
In general they are split into 3 categories:
To confirm the API limits set on your environment, we can use the REST API or Cli (Command line).
Per node:
GET /api/v1/cluster/{cluster-node-id}/node/services/http
For the cluster (VIP)
GET /api/v1/cluster/{cluster-node-id}/node/services/http
To update values:
PUT /api/v1/cluster/{cluster-node-id}/node/services/http
PUT /api/v1/node/services/http
To restart the service:
POST /api/v1/cluster/{cluster-node-id}/node/services/http?action=start
POST /api/v1/node/services/http?action=start
As admin user on each manager type get service http:
Client API rate limit: 100 requests/sec
Client API concurrency limit: 40 connections
Global API concurrency limit: 199 connections
Note: these values should not be changed, unless requested by support and it is usually only a temporary measure. If the values are changed, the https service should be restarted for the new values to take affect restart service http/ui-service. The command used is set service http <rate to be changed>
The UI http timeout session can be altered here also, using set service http session-timeout <timeout-value-in-seconds>
Then restarting the service restart service ui-service
More more details on using the command line , please refer to NSX CLI Guide
In NSX-T 4.0.1, the tomcat reverse-proxy was changed to envoy reverse-proxy. All API's flowing to the NSX-T manager and Global manager will pass through the reverse-proxy, before being forwarded to the backend services.
These logs can be found on the manager appliance under:
Pre 4.0.1
localhost_access_log.txt
2024-10-08T10:32:31.507Z 192.168.1.100 - "GET /api/v1/transport-nodes/########-43f1-4d61-914c-############/network/interfaces/vmnic2/stats HTTP/1.1" 200 196 2891 2891
Post 4.0.1
envoy_access_log.txt
[2024-10-08T10:32:31.507Z] 192.168.1.100 172.16.1.100 "GET" "/api/v1/transport-nodes/########-43f1-4d61-914c-############/network/interfaces/vmnic2/stats" "HTTP/1.1" 200 - 0 541 7 6 "192.168.1.100" "Apache-HttpClient/4.5.9 (Java/11.0.16)" "########-259c-4c8c-a747-###########" "172.16.1.100:443" "127.0.0.1:7440"
From both log entries above, much of the information is the same, from them we can decipher the following information: