文章目录
- 1.Prometheus基础
- 2.表达式
- 2.1 指定namespace所属容器CPU使用率
- 2.2 磁盘读取速率(单位:字节/秒)
- 2.3 磁盘写入速率(单位:字节/秒)
- 2.4 网络接收速率(单位:字节/秒)
- 2.5 网络发送速率(单位:字节/秒)
- 2.6 指定namespace当前内存使用总量(单位:字节)
1.Prometheus基础
时间序列
是指将同一统计指标的数值按其发生的时间先后顺序
排列而成的数列
表达式 | 描述 |
| 选择正好相等的字符串标签 |
| 选择不相等的字符串标签 |
| 选择匹配正则表达式的标签(或子标签) |
| 选择不匹配正则表达式的标签(或子标签) |
单位 | 描述 |
| seconds(秒) |
| minutes(分) |
| hours(时) |
| days(天) |
| weeks(周) |
| years(年) |
注: [1m]指过的去1分钟内
名称 | 类型 | 单位 | 说明 |
container_cpu_usage_seconds_total | counter | 秒数 | 该容器服务针对每个CPU累计消耗的CPU时间。如果有多个CPU,则总的CPU时间需要把各个CPU耗费的时间相加 |
container_cpu_user_seconds_total | counter | 秒数 | 该容器服务累计消耗的用户(user)CPU时间 |
container_cpu_system_seconds_total | counter | 秒数 | 该容器服务累计消耗的系统(system)CPU时间 |
container_cpu_cfs_throttled_seconds_total | counter | 秒数 | cfs 是完全公平调度器(Completely Fair Scheduler)的缩写,是Linux的一种控制CPU资源占用的机制,可以按指定比例分配调度CPU 的使用时间。这个指标指的是该容器服务被限制使用的CPU时间 |
container_cpu_cfs_throttled_periods_total | counter | 个数 | 文档注释是:“Number of throttled period intervals.”,解释为被限制/节流的CPU时间周期数 |
container_cpu_cfs_periods_total | counter | 个数 | 文档注释是:“Number of elapsed enforcement period intervals。”,应该解释为已经执行的CPU时间周期数 |
container_cpu_load_average_10s | gauge | 文档注释是:“Value of container cpu load average over the last 10 seconds.”应该解释为过去10秒内的CPU负载的平均值 |
2.表达式
2.1 指定namespace所属容器CPU使用率
表达式:namespace:container_cpu_usage_seconds_total:sum_rate{namespace=“default”}含义:namespace下CPU的使⽤率 = (namespace下所有应用⾮空闲状态的CPU使⽤时间总和 )/ (namespace下所有应用状态CPU时间的总和)
2.2 磁盘读取速率(单位:字节/秒)
表达式:sum(rate(container_fs_reads_bytes_total{namespace=“default”}[5m]))含义:获取namespace({namespace=“default”})下所有应用5分钟(5m)内从容器文件系统(磁盘)读取字节平均每秒增量之和比如:(5分钟namespace="default"下所有应用磁盘读取字节增量)/(5*60)
2.3 磁盘写入速率(单位:字节/秒)
表达式:sum(rate(container_fs_writes_bytes_total{namespace=“default”}[5m]))含义:获取namespace({namespace=“default”})下所有应用5分钟(5m)内从容器文件系统(磁盘)写入字节平均每秒增量之和比如:(5分钟namespace="default"下所有应用磁盘写入字节增量)/(5*60)
2.4 网络接收速率(单位:字节/秒)
表达式:sum(irate(container_network_receive_bytes_total{namespace=“default”}[5m]))含义:获取namespace({namespace=“default”})下所有应用5分钟(5m)内接收的累计字节平均每秒增量之和比如:(5分钟namespace="default"下所有应用网络接收字节增量)/(5*60)
2.5 网络发送速率(单位:字节/秒)
表达式:sum(irate(container_network_transmit_bytes_total{namespace=“default”}[5m]))含义:获取namespace({namespace=“default”})下所有应用5分钟(5m)内发送的累计字节平均每秒增量之和比如:(5分钟namespace="default"下所有应用网络发送字节增量)/(5*60)
2.6 指定namespace当前内存使用总量(单位:字节)
表达式:sum(container_memory_usage_bytes{namespace=“default”})含义:获取namespace({namespace=“default”})下所有应用当前内存使用情况,以字节为单位,包括所有内存