Loading
close

常用表达式

time 更新时间:2024-08-20 19:36:26

这里对云平台的节点、命名空间资源的常用表达式进行举例说明。

节点

概述 表达式 说明
节点CPU使用率 sum by (host_ip, node_name) (avg by(mode,host_ip,node_name)(irate(node_cpu_seconds_total{mode!="idle"}[5m])) * 100) 单位: %
节点内存使用率 (node_memory_MemTotal_bytes - node_memory_MemFree_bytes - node_memory_Buffers_bytes - node_memory_Slab_bytes - node_memory_Cached_bytes) / node_memory_MemTotal_bytes * 100 单位: %
节点磁盘IO使用率 irate(node_disk_io_time_seconds_total{device=~"(sd|vd)[a-z]+|nvme[0-9]+n[0-9]+"}[5m]) * 100 单位: %
节点磁盘IO延迟 (irate(node_disk_read_time_seconds_total{device=~"(sd|vd)[a-z]+|nvme[0-9]+n[0-9]+"}[5m]) + irate(node_disk_write_time_seconds_total[5m])) / (irate(node_disk_reads_completed_total[5m]) + irate(node_disk_writes_completed_total[5m]) > 0) * 1000 * 1000 单位: μs
节点网络带宽 部署网络,控制台网络,管理网络,存储集群管理/业务网络:
- 接收带宽:irate(node_network_receive_bytes_total{device="br-roller"}[5m])
- 发送带宽:irate(node_network_transmit_bytes_total{device="br-roller"}[5m])
私有网络,外部网络,业务心跳网络:
- 接收带宽:ecms_node_network_receive_byte_rate{device="br-vxlan"}
- 发送带宽:ecms_node_network_transmit_byte_rate{device="br-vxlan"}
单位: Bps,device 代表集群中不同的网络类型,可选值如下:
- br-roller,部署网络
- br-pub,控制台网络
- br-mgmt,管理网络
- br-storage,存储集群管理网络
- br-storagepub,存储集群业务网络
- br-vxlan,业务心跳网络
- br-ex,外部网络
- br-prv.*,私有网络,需要将 device 表达式替换成 {device=~”br-prv.*“}
节点网络包速率 部署网络,控制台网络,管理网络,存储集群管理/业务网络:
- 接收速率:irate(node_network_receive_packets_total{device="br-roller"}[5m])
- 发送速率:irate(node_network_transmit_packets_total{device="br-roller"}[5m])
私有网络,外部网络,业务心跳网络:
- 接收带宽:ecms_node_network_receive_packet_rate{device="br-vxlan"}
- 发送带宽:ecms_node_network_transmit_packet_rate{device="br-vxlan"}
单位: pps,device 取值同上
节点负载 过去 1 分钟:sum by (host_ip, node_name) (node_load1)/count by (host_ip, node_name) (node_load1)
过去 5 分钟:sum by (host_ip, node_name) (node_load5)/count by (host_ip, node_name) (node_load5)
过去 15 分钟:sum by (host_ip, node_name) (node_load15)/count by (host_ip, node_name) (node_load15)
-
节点状态 kube_node_status_condition{condition="Ready",status="true"} 1:状态就绪
0:状态未就绪

命名空间

概述 表达式 说明
容器CPU使用量 round(sum by (namespace, pod, container) (irate(container_cpu_usage_seconds_total{container!="", image!="", pod="example-pod", namespace="example", container=~"example-container"}[5m])), 0.001) 单位:无,表示容器 CPU 使用时间的变化速率(即使用量),pod,namespace,container 的值需替换成集群中存在的资源
容器内存使用量 sum by (namespace, pod, container) (container_memory_working_set_bytes{container!="", image!="", pod="example-pod", namespace="example", container=~"example-container"}) 单位:bytes
容器共享网络带宽 接收带宽:irate(container_network_receive_bytes_total{namespace="example", pod="example-pod"}[5m])
发送带宽:irate(container_network_transmit_bytes_total{namespace="example", pod="example-pod"}[5m])
单位:Bps,计算 pod 内所有容器带宽总和
容器共享网络包速率 接收速率:irate(container_network_receive_packets_total{namespace="example", pod="example-pod"}[5m])
发送速率:irate(container_network_transmit_packets_total{namespace="example", pod="example-pod"}[5m])
单位:pps,计算 pod 内所有容器速率总和
容器状态 kube_pod_container_status_ready{namespace="example"} unless on (namespace, pod, container) (kube_pod_container_status_terminated_reason{reason="Completed"} == 1) 0:有容器未就绪
1:容器状态正常
容器重启 (kube_pod_container_status_restarts_total{namespace="example"} - (kube_pod_container_status_restarts_total{namespace="example"} offset 6m)) 大于 0:有容器发生重启
等于 0:没有容器发生重启
容器持久卷使用率 (1 - kubelet_volume_stats_available_bytes{job="kubelet", namespace="example"} / kubelet_volume_stats_capacity_bytes{job="kubelet", namespace="example"}) * 100 单位:%
容器持久卷状态 kube_persistentvolumeclaim_status_phase{phase=~"Lost|Pending",job="kube-state-metrics", namespace="example"} 0:状态正常
1:状态错误
此篇文章对你是否有帮助?
没帮助
locked-file

您暂无权限访问该产品