一、工作负载指标

直接截取一个生产环境的rancher的web管理端-工作负载指标模块的图(这里没有汉化,直接英文)如下:

共5个大指标:

  1. CPU使用
  2. 内存使用
  3. 网络包
  4. 网络IO
  5. 磁盘IO

自学入口

1)rancher官网:工作负载指标表达式

2)prometheus表达式描述

二、细节

2.1 CPU使用

2个节点(jdn22、zt4lb),每个节点(4核即4个CPU 4G内存)都有4个CPU指标:

注:1个核心CPU=1000毫核 milli cpu

cfs throttled:cfs 是完全公平调度器(Completely Fair Scheduler)的缩写,是Linux的一种控制CPU资源占用的机制,可以按指定比例分配调度CPU 的使用时间。这个指标指的是该容器服务被限制使用的CPU时间(饱和度).

system seconds:该容器服务累计消耗的系统(system)CPU时间。2 mcpu

user seconds:该容器服务累计消耗的用户(user)CPU时间。14 mCpu

usage:该容器服务累计消耗的总使用CPU时间usage=system+user=14+2=16mCpu  16毫核/4核心*1000毫核=0.4%

官方描述:

注意:我们就看一个表达式:

sum(rate(container_cpu_usage_seconds_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name)

rate(container_cpu_usage_seconds_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m]):   5分钟内,每秒平均CPU使用率。

sum() by (pod_name):每个pod节点分别求和(多核心CPU)

函数参考prometheus文档验证表达式,截图如下:

2.2 内存使用

如上图,2个节点,每个内存都稳定在717MB。

官方描述:

container_memory_working_set_bytes:当前内存工作集(working set)使用量,单位byte。

2.3 网络数据包

如上图,2个pod节点,每个节点有6个指标。以jdn22做数据分析:

接收3个:

receive dropped(饱和度)sum(rate(container_network_receive_packets_dropped_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name) :指定pod, 容器网络每秒接收丢包总数 0.03 Pactets Per Second (简称pps)

receive errorssum(rate(container_network_receive_errors_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name):指定pod, 容器网络每秒接收失败包总数 0 pps

receive packetssum(rate(container_network_receive_packets_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name) : 指定pod, 容器网络每秒接收包总数 3 pps

发送3个:

Transmit droped(饱和度):指定pod, 容器网络,每秒传输丢包总数 0 pps

Transmit errors:指定pod, 容器网络,每秒传输包失败总数 0 pps

Transmit packets:指定pod, 容器网络,每秒传输包总数 5 pps

官方描述:

2.4  网络IO

如上图,2个pod节点,以jdn22做数据分析:

Recive: sum(rate(container_network_receive_bytes_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name):指定pod,容器网络每秒接收字节总数:0.72kb per-second(简称kbps)

transmit:sum(rate(container_network_transmit_bytes_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name): 指定pod,容器网络每秒传输字节总数:1.27 kbps

官方描述:

2.5 磁盘IO

如上图,2个pod节点,以jdn22做数据分析:

Read:sum(rate(container_fs_reads_bytes_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name) 指定pod,容器磁盘每秒读字节总数:0 kbps

Write:sum(rate(container_fs_writes_bytes_total{namespace="$namespace",pod_name=~"$podName",container_name!=""}[5m])) by (pod_name)指定pod,容器磁盘每秒写字节总数:0 kbps

官方描述:

Rancher监控指标一文干到底的更多相关文章

  1. Hadoop记录-Hadoop集群重要监控指标

    通用监控指标 对于每个RPC服务应该监控 RpcProcessingTimeAvgTime(PRC处理的平均时间) 通常hdfs在异常任务突发大量访问时,这个参数会突然变得很大,导致其他用户访问hdf ...

  2. Wiki版产品需求---产品需求文档到底是谁的?产品到底是谁的?

    在听了测试的一通唠叨之后,"内部实现一堆逻辑,只有一句话的需求文档","文档那么简单,我们怎么测试啊",心中突然想起来自己曾经干的一件当时觉得还不错的事情,但是 ...

  3. MySQL 监控指标

    为了排查问题,对数据库的监控是必不可少的,在此介绍下 MySQL 中的常用监控指标. 简介 MySQL 有多个分支版本,常见的有 MySQL.Percona.MariaDB,各个版本所对应的监控项也会 ...

  4. Elasticsearch 监控指标解析

    1.集群监控 集群监控主要包括两个方面的内容,分别是集群健康情况和集群的运行状态. 集群健康状态可以通过以下api获取: http://ip:9200/_cluster/health?pretty 关 ...

  5. 【0.2】【MySQL】常用监控指标及监控方法(转)

    [MySQL]常用监控指标及监控方法 转自:https://www.cnblogs.com/wwcom123/p/10759494.html  对之前生产中使用过的MySQL数据库监控指标做个小结. ...

  6. 如何进行TIDB优化之Grafana(TiDB 3.0)关注监控指标

    前言 在对数据库进行优化前,我们先要思考一下数据库系统可能存在的瓶颈所在之外.数据库服务是运行在不同的硬件设备上的,优化即通过参数配置(不考虑应用客户端程序的情况下),而实现硬件资源的最大利用化.那么 ...

  7. es相关监控指标梳理

    ###################ElasticSearch监控指标梳理########################### #author:lugh1 # #date:2021-09-26 # ...

  8. 【转载】apache kafka系列之-监控指标

    原文地址:http://blog.csdn.net/lizhitao/article/details/24581907 1.监控目标 1.当系统可能或处于亚健康状态时及时提醒,预防故障发生 2.报警提 ...

  9. apache kafka系列之-监控指标

    apache kafka中国社区QQ群:162272557 1.监控目标 1.当系统可能或处于亚健康状态时及时提醒,预防故障发生 2.报警提示 a.短信方式 b.邮件 2.监控内容 2.1 机器监控 ...

随机推荐

  1. Linux命令大全之搜索命令

    文件搜索命令(只能搜索文件) locate 文件名 在后台数据库中按文件名搜索,搜索速度快      /var/lib/mlocate(locate文件数据库)    这个数据库默认一天更新一次,强制 ...

  2. Gym 101334D 记忆化dp

    大致题意: 给你9堆扑克牌,每堆牌有4张,大小从A~K.每次从9堆牌牌顶抽走两张大小相同的牌,且抽走每一对相同的牌的概率都相等.问可以全部抽完的概率. 分析: 这是一道概率dp题.剩余的牌数作为状态, ...

  3. webpack(4)webpack.config.js配置和package.json配置

    前言 上一篇文章我们使用webpack打包成功了,但是每次都要自己手动输入打包的文件地址和打包到哪里去的地址,非常麻烦,所以这里介绍使用配置文件进行打包 webpack.config.js 首先我们创 ...

  4. DRF之权限和频率限制

    一.权限 权限可以限制用户对视图的访问和对具体数据对象的访问. 在执行视图的dispatch方法前,会先进行视图访问权限的判断 在通过get_object获取对象时,会进行模型对象访问权限的判断 源码 ...

  5. Spring中的<context:annotation-config/>配置

    当我们需要使用BeanPostProcessor时,直接在Spring配置文件中定义这些Bean显得比较笨拙,例如: 使用@Autowired注解,必须事先在Spring容器中声明AutowiredA ...

  6. Nginx配置中的log_format用法梳理 (转)

      nginx服务器日志相关指令主要有两条,一条是log_format,用来设置日志格式,另外一条是access_log,用来指定日志文件的存放路径.格式和缓存大小,一般在nginx的配置文件中日记配 ...

  7. ROS2学习之旅(2)——配置ROS2环境

    目录 1.source一下setup文件 2.自动source 3.自动进入工作区(不常用) 4.检查环境变量是否设置成功 5.总结 ROS2依赖于使用shell(终端)环境组合工作空间的概念.工作空 ...

  8. sscanf功能详解(转)

    #include <stdio.h> #include <stdlib.h> #include <string.h> static void sscanf_test ...

  9. STM32笔记二

    1.STM32编程通常有两种方法:一种是寄存器编程,另外一种是固件库编程.寄存器编程是基础,而固件库是寄存器编程的基础上升级而来的编程方法,是需要重点掌握的编程方法. 2.STM32F103采用的是C ...

  10. Java | 标识符 & 关键字

    标识符是什么? 标识符 标识符是指在程序中,我们自己定义的内容.比如类的名字.方法的名字和变量的名字等等,都是标识符.在我们写的第一个程序当中,我们给类起名叫做Hello 也叫做标识符. 命名规则 标 ...