在弹性容器实例控制台上,您可以查看ECI实例的监控数据,包括CPU、内存和网络等相关指标。本文介绍ECI实例监控数据的含义和计算方式,方便您了解各项指标的具体作用,以便进行二次计算开发。
监控指标概述
在弹性容器实例控制台上查看ECI实例(即容器组)的监控数据时,您可以筛选时间段查看某一小时的数据,或者查看近5分钟的实时数据,支持查看的监控指标如下:
-
CPU
显示CPU利用率,即实例的CPU使用率,上限为100%。
-
内存
显示内存利用率,即实例的内存使用率,上限为100%。
-
网络
显示发送速率和接收速率,即在对应时间窗内平均发送速率和平均接收速率。
-
磁盘
显示磁盘分区和空间数据。具体如下:
-
磁盘分区数据:包括系统分区和数据分区,其中数据分区为挂载作为数据盘的云盘分区。
-
磁盘空间数据:包括磁盘的总空间、已使用空间、剩余可用空间和使用率。
-
对于ECI实例的监控数据,您可以通过DescribeContainerGroupMetric和DescribeMultiContainerGroupMetric接口进行查询,然后进行二次开发计算。查询监控数据时,系统将同时返回容器组,以及容器组内容器的监控数据:
-
返回结构体的根节点Records中包含容器组整体的监控数据(CPU、内存、网络和磁盘数据)。
-
返回结构体的子节点Containers中包含各个容器的监控数据(CPU和内存数据)。
更多信息,请参见DescribeContainerGroupMetric和DescribeMultiContainerGroupMetric。
CPU指标计算方式
调用OpenAPI接口可以获取的CPU原始数据如下:
|
名称 |
类型 |
示例值 |
描述 |
|
UsageNanoCores |
Long |
0 |
CPU在采样窗口内的使用量(纳秒)。 |
|
UsageCoreNanoSeconds |
Long |
70769883 |
CPU历史使用总量。 |
|
Load |
Long |
0 |
最近10秒的平均负载情况。 |
|
Limit |
Long |
2000 |
CPU使用上限(CPU核数*1000)。 |
CPU相关指标计算方式如下:
-
CPU核数利用率=UsageNanoCores/109
-
CPU利用率=UsageNanoCores/Limit/106
内存指标计算方式
调用openAPI接口可以获取的内存原始数据如下:
|
名称 |
类型 |
示例值 |
描述 |
|
AvailableBytes |
Long |
4289445888 |
可用内存。 |
|
UsageBytes |
Long |
11153408 |
已使用内存。 |
|
Cache |
Long |
7028736 |
缓存。 |
|
WorkingSet |
Long |
5521408 |
当前内存工作集使用量。 |
|
Rss |
Long |
1593344 |
常驻内存集,即实际使用的物理内存。 |
内存利用率=WorkingSet/(WorkingSet + AvailableBytes)
网络指标计算方式
调用openAPI接口可以获取的网络原始数据如下:
|
名称 |
类型 |
示例值 |
描述 |
|
TxBytes |
Long |
1381805699 |
累计发送字节数。 |
|
RxBytes |
Long |
505001954 |
累计接收字节数。 |
|
TxErrors |
Long |
0 |
累计发送错误数。 |
|
RxErrors |
Long |
0 |
累计接收错误数。 |
|
TxPackets |
Long |
5158427 |
累计发送包数量。 |
|
RxPackets |
Long |
4800583 |
累计接收包数量。 |
|
TxDrops |
Long |
0 |
累计发送丢包数。 |
|
RxDrops |
Long |
0 |
累计接收丢包数。 |
|
Name |
String |
eth0 |
网卡名称。 |
网络相关指标计算方式如下:
-
网络带宽速率(每秒发送比特数,单位为bps)
网络带宽速率=(B时刻的累计发送字节数-A时刻的累计发送字节数)/A时刻和B时刻之间的秒数*8
-
网络吞吐率(每秒发送包数量,单位为pps)
网络吞吐率=(B时刻的累计发送包数量-A时刻的累计发送包数量)/A时刻和B时刻之间的秒数