您可以使用 NSX Advanced Load Balancer API 访问虚拟服务的吞吐量数据和其他衡量指标。

/API/analytics/metrics 的 API 调用可用于获取所有衡量指标相关的数据。以下示例显示了对虚拟服务 24 小时内吞吐量的查询:

https://<Controller VIP>/api/analytics/metrics/virtualservice/virtualservice-<VS UUID>?metric_id=l4_client.avg_bandwidth &step=86400&limit=7&start=2015-11-17T00:00:00.000Z
  • Controller VIP:替换为您的 NSX Advanced Load Balancer 控制器 的 IP 地址或分配给冗余控制器集群的集群 IP 地址。

  • VS UUID:虚拟服务的通用唯一 ID (Universal Unique ID, UUID)。由于虚拟服务名称在多个租户中可能不是唯一的,因此,建议在 API 查询中包含虚拟服务的 UUID。

查找虚拟服务的 UUID 的一种快速方法是在控制器 Web 界面中查看虚拟服务,并从浏览器 URI 捕获 UUID。要查找虚拟服务 UUID,请参见VMware NSX Advanced Load Balancer 配置指南》中的“查找虚拟服务 UUID”主题。

step

采样周期,以秒为单位。对于 24 小时,使用采样时间 86400。

limit

将返回的最大数据点数(以天为单位)。在此示例中,将返回 7 个数据点。每个数据点都是当天客户端到虚拟服务网络吞吐量的平均值。

start

查询的开始时间。在此示例中,查询从 10 月 17 日开始,在 7 天后,即 10 月 23 日结束。同样,如果起始点设置为 2,则仅返回两个数据点,2 天每天各返回一个数据点。

metric_id

要查询的衡量指标。以下是一些经常查询的衡量指标的衡量指标 ID:

l4_client.avg_total_rtt

l4_server.avg_total_rtt

l4_client.avg_bandwidth

l4_client.max_open_conns

l4_client.avg_complete_conns

l4_client.avg_lossy_connections

l4_client.avg_errored_connections

l4_client.pct_connection_errors

l7_client.avg_complete_responses

l7_server.avg_resp_4xx_errors

l7_server.avg_resp_5xx_errors

l7_client.avg_resp_4xx_avi_errors

l7_client.avg_resp_5xx_avi_errors

l7_client.pct_response_errors

l7_server.avg_application_response_time

l7_client.avg_client_data_transfer_time

以下是 NSX Advanced Load Balancer Controller 在 l4_client.avg_bandwidth 的 API 查询响应中返回的数据示例。

{
"entity_uuid": "virtualservice-9062c630-a835-4c22-8596-dfa625b9697d", 
"limit": 365, 
"metric_entity": "VSERVER_METRICS_ENTITY", 
"metric_id": "l4_client.avg_bandwidth", 
"series": [
{
"data": [
{
"timestamp": "2015-11-17T00:00:00+00:00", 
"value": 511500369.582942
}, 
{
"timestamp": "2015-11-18T00:00:00+00:00", 
"value": 641335291.443974
}, 
{
"timestamp": "2015-11-19T00:00:00+00:00", 
"value": 642964876.307424
}, 
{
"timestamp": "2015-11-20T00:00:00+00:00", 
"value": 652721668.799788
}, 
{
"timestamp": "2015-11-21T00:00:00+00:00", 
"value": 833373106.654519
}, 
{
"timestamp": "2015-11-22T00:00:00+00:00", 
"value": 670429050.977858
}, 
{
"timestamp": "2015-11-23T00:00:00+00:00", 
"value": 671784391.196803
}, 
], 
"header": {
"derivation_data": {
"derivation_fn": "SUM_BW_GAUGE", 
"metric_ids": "avg_rx_bytes, avg_tx_bytes"
}, 
"entity_uuid": "virtualservice-9062c630-a835-4c22-8596-dfa625b9697d", 
"metric_description": "Average transmit and receive network bandwidth between client and virtual service.", 
"metrics_min_scale": 1000000.0, 
"metrics_sum_agg_invalid": false, 
"name": "l4_client.avg_bandwidth", 
"obj_id_type": "METRICS_OBJ_ID_TYPE_VIRTUALSERVICE", 
"priority": true, 
"statistics": {
"max": 833373106.654519, 
"max_ts": "2015-11-21T00:00:00+00:00", 
"mean": 663407846.526, 
"min": 511500369.582942, 
"min_ts": "2015-11-17T00:00:00+00:00", 
"num_samples": 7, 
"trend": -0.029
}, 
"tenant_uuid": "admin", 
"units": "BITS_PER_SECOND"
}
}
], 
"start": "2015-11-17T00:00:00.000Z", 
"step": 86400, 
"stop": "2015-11-23T00:00:00+00:00"
}