监控项

2022年2月23日大约 7 分钟

监控项

宿主机的监控项列表

分类key描述类型单位
host.gpuCountGPU数量unsigned int
host.gpuUsed已使用的GPU个数unsigned int
GPUhost.gpu.0.name第一块GPU的名称,中间的数字是编号,从0开始,下同string
host.gpu.0.busIdGPU的总线IDstring
host.gpu.0.memTotalGPU显存大小unsigned long longB
host.gpu.0.memFreeGPU显存空闲大小unsigned long longB
host.gpu.0.memUsedGPU显存已占用大小unsigned long longB
host.gpu.0.gpuUtilizationGPU利用率:在过去的采样周期中,一个或多个内核在 GPU 上执行的时间百分比unsigned int
host.gpu.0.memUtilization显存利用率:在过去的采样周期中读取或写入全局(设备)内存的时间百分比unsigned int
host.gpu.0.powerUsageGPU使用功率unsigned intmilliwatt 毫瓦(特)
host.gpu.0.powerCapGPU最大功率unsigned intmilliwatt 毫瓦(特)
host.gpu.0.temperatureGPU当前温度unsigned intdegrees C
虚拟机host.vmCount虚拟机数量unsigned int
host.vmRunning正在运行的虚拟机个数unsigned int
CPUhost.cpuUsageCPU使用率float%
内存host.memTotal总内存unsigned long longKB
host.memFree空闲内存unsigned long longKB
host.memUsage内存使用率float%
流量host.rxFlow接收总流量long longB
host.txFlow发送总流量long longB
数据盘host.diskTotal硬盘容量unsigned long longKB
host.diskFree硬盘空闲容量unsigned long longKB
host.diskUsage硬盘使用率float%
host.diskMountStatus挂载状态,"lost"或者"normal"string
平均负载host.loadAverage.1过去的1分钟内的平均负载float
host.loadAverage.5过去的5分钟内的平均负载float
host.loadAverage.15过去的15分钟内的平均负载float
host.dbcVersionDBC版本号string

虚拟机的监控项列表

分类key描述类型单位
虚拟机监控基本信息dom.state虚拟机状态,例如runningstring
dom.maxMem虚拟机允许的最大内存unsigned intKB
dom.memory虚拟机已使用的内存大小unsigned intKB
dom.nrVirtCpu虚拟机的vCPU个数unsigned int
dom.cpuTime虚拟机的CPU时间unsigned long long
dom.cpuUsage虚拟机的CPU平均使用率float%
内存信息memory.total内存totalunsigned long longKB
memory.unused内存实时unusedunsigned long longKB
memory.available内存实时avaliableunsigned long longKB
memory.usage内存实时使用率float%
磁盘信息disk.0.name第一块磁盘的名称,中间的数字是编号,从0开始,下同string
disk.0.capacity磁盘逻辑大小unsigned long longKB
disk.0.allocation磁盘存储大小,类似'du'命令unsigned long longKB
disk.0.physical磁盘物理大小,类似'ls'命令unsigned long longKB
disk.0.rd_reqnumber of read requestslong long
disk.0.rd_bytesnumber of read byteslong longB
disk.0.wr_reqnumber of write requestslong long
disk.0.wr_bytesnumber of written byteslong longB
disk.0.errsIn Xen this returns the mysterious 'oo_req'long long
disk.0.rd_speed磁盘平均读取速度floatB/s
disk.0.wr_speed磁盘平均写入速度floatB/s
网络信息net.0.name第一块网卡的名称,中间的数字是编号,从0开始,下同string
net.0.rx_bytes接收的字节数long longB
net.0.rx_packets接收的包long long
net.0.rx_errslong long
net.0.rx_droplong long
net.0.tx_bytes发送的字节数long longB
net.0.tx_packets发送的包long long
net.0.tx_errslong long
net.0.tx_droplong long
net.0.rx_speed平均接收速度floatB/s
net.0.tx_speed平均发送速度floatB/s
GPUgpu.graphicsDriverVersion图形驱动程序版本号string
gpu.nvmlVersionNVML库版本号string
gpu.cudaVersioncuda驱动版本号string
gpu.0.name第一块GPU的名称,中间的数字是编号,从0开始,下同string
gpu.0.busIdGPU的总线IDstring
gpu.0.memTotalGPU显存大小unsigned long longB
gpu.0.memFreeGPU显存空闲大小unsigned long longB
gpu.0.memUsedGPU显存已占用大小unsigned long longB
gpu.0.gpuUtilizationGPU利用率:在过去的采样周期中,一个或多个内核在 GPU 上执行的时间百分比unsigned int
gpu.0.memUtilization显存利用率:在过去的采样周期中读取或写入全局(设备)内存的时间百分比unsigned int
gpu.0.powerUsageGPU使用功率unsigned intmilliwatt 毫瓦(特)
gpu.0.powerCapGPU最大功率unsigned intmilliwatt 毫瓦(特)
gpu.0.temperatureGPU当前温度unsigned intdegrees C
协议versiondbc的版本号string

显卡监控必读

因为宿主机上对显卡设备的隔离,导致 dbc 无法直接获取显卡的具体信息。因此我们在 qemu guest agent 的基础上,集成了 NVIDIA Management Library 的功能,实现了一套独立的服务,即 dbc guest agent,通过与虚拟机的通信,来获取虚拟机里面的显卡详细信息。

对于自定义的镜像,想要监控显卡信息,请在虚拟机内部安装 dbc guest agent 服务。

  • Ubuntu 虚拟机安装脚本:http://119.6.235.169:9000/dbc_guest_agent/install.sh
  • Windows 64 位虚拟机安装程序:http://119.6.235.169:9000/dbc_guest_agent/qemu-ga-x86_64.msi

注意!

  1. 显卡监控暂时只支持 NVIDIA 显卡。

  2. 显卡监控只能看到已被虚拟机使用的显卡设备。

使用率和速度的计算

  • CPU 使用率 = (cpuTime2 - cpuTime1) / (实际时间 2 - 实际时间 1) / CPU 个数
  • 内存使用率 = (total - unused) / total
  • 磁盘平均读取速度 = (rd_bytes2 - rd_bytes1) / (实际时间 2 - 实际时间 1)
  • 平均接收速度 = (rx_bytes2 - rx_bytes1) / (实际时间 2 - 实际时间 1)

注意!

当两次采集数据间隔时间很长,比如每分钟采集一次,则磁盘读写速度和网络传输速度只能代表平均速度,无法表示实时速度。

Loading...