查看容器资源使用情况
查看容器资源使用情况的命令如下:
ecs events id
查看容器资源使用情况命令的参数说明如下:
id
为容器的 ID 号。
查看当前运行的容器范例资源使用情况,可以看到如下程序输出:
[root@sylixos:/root]# ecs events ecs_demo
{
"network": {
"tx": 0,
"rx": 0
},
"block": {
"read": 0,
"write": 0
},
"memory" {
"kheap": {
"limit": 2097152,
"usage": 2097152,
"max": 2097152
},
"memory": {
"limit":2147483648,
"usage":122880,
"max": 2097152
}
},
"disk" {
"limit": 2097152,
"usage": 2097152,
"max": 2097152
},
"kernelObject": {
"thread": {
"limit":10,
"usage":2,
"max": 2
},
"threadPool": {
"limit":10,
"usage":0,
"max": 0
},
"event": {
"limit":10,
"usage":2,
"max": 2
},
"eventSet": {
"limit":10,
"usage":0,
"max": 0
},
"partition": {
"limit":10,
"usage":0,
"max": 0
},
"region": {
"limit":2,
"usage":1,
"max": 1
},
"msgQueue": {
"limit":10,
"usage":2,
"max": 2
},
"timer": {
"limit":10,
"usage":2,
"max": 2
},
"rms": {
"limit":10,
"usage":0,
"max": 0
},
"threadVar": {
"limit":10,
"usage":0,
"max": 0
},
"posixMqueue": {
"limit":10,
"usage":2,
"max": 2
},
"dlopenLibrary": {
"limit":10,
"usage":5,
"max": 5
},
"xsiipc": {
"limit":10,
"usage":2,
"max": 2
},
"socket": {
"limit":10,
"usage":2,
"max": 2
},
"srtp": {
"limit":10,
"usage":1,
"max": 1
},
"device": {
"limit":10,
"usage":2,
"max": 2
}
}
}
资源使用情况的显示分为最大限制资源数量、当前时刻正在使用资源数量、历史峰值资源数量。描述的资源包括:
network
:网络资源tx
容器内网络发送的流量统计(单位:字节);rx
容器内网络接收的流量统计(单位:字节);
block
:块设备 IOread
容器内块设备的读取流量统计(单位:字节);write
容器内块设备的写入流量统计(单位:字节);
memory
:内存资源kheap
为容器内的内核堆占用字节数;memory
为容器内的物理内存占用字节数;
disk
:磁盘 为容器内的磁盘空间占用字节数(单位:字节)。kernelObject
:内核对象thread
为容器内的线程数量;threadPool
为容器内的线程池数量;event
为容器内的事件数量;eventSet
为容器内的事件集数量;partition
为容器内的定长分区数量;region
为容器内的变长分区数量;msgQueue
为容器内的消息队列数量;timer
为容器内的定时器数量;rms
为容器内的 RMS 调度器数量;threadVar
为容器内的线程私有变量数量;posixMqueue
为容器内的 posix 消息队列数量;dlopenLibrary
为容器内的 dlopen 共享库数量;xsiipc
为容器内的 xsiipc 数量;socket
为容器内的 socket 数量;srtp
为容器内的 srtp 进程数量;device
为容器内的全局设备数量,如串口、FIFO 等。
需要注意的是,容器本身会因为系统的原因占用了一部分的配额,所以实际的配额数量应考虑到系统占用的部分。