一、工作负载指标

直接截取一个生产环境的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. 精尽Spring Boot源码分析 - 支持外部 Tomcat 容器的实现

    该系列文章是笔者在学习 Spring Boot 过程中总结下来的,里面涉及到相关源码,可能对读者不太友好,请结合我的源码注释 Spring Boot 源码分析 GitHub 地址 进行阅读 Sprin ...

  2. (Element UI 组件 Table)去除单元格底部的横线

    Element UI 组件 Table 有一个属性 border,添加它可以增加纵向边框,但是无法控制横线边框,因此即使是最简单的 el-table,也会包含一个底部横线. 这个底部横线其实是一个 b ...

  3. Redis之Sentinel

    Redis的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,同时还要通知应用方更新主节点地址,对于很多应用场景这种故障处理的方式是无法接受的.可喜的是Redis从 2.8 ...

  4. redis字典快速映射+hash釜底抽薪+渐进式rehash | redis为什么那么快

    前言 相信你一定使用过新华字典吧!小时候不会读的字都是通过字典去查找的.在Redis中也存在相同功能叫做字典又称为符号表!是一种保存键值对的抽象数据结构 本篇仍然定位在[redis前传]系列中,因为本 ...

  5. 【译】在运行时编辑代码的 .NET 热重载

    今天,我们很高兴向你介绍 Visual Studio 2019 中 16.11(预览版1)中的 .NET 热重载(通过 .NET 6(预览版4)中的 dotnet watch 命令行工具).在这篇文章 ...

  6. Retrofit使用Kotlin协程发送请求

    Retrofit2.6开始增加了对Kotlin协程的支持,可以通过suspend函数进行异步调用.本文简单介绍一下Retrofit中协程的使用 导入依赖 app的build文件中加入: impleme ...

  7. Docker:docker部署Tomcat运行web项目

    查找Docker Hub上的tomcat镜像 docker search tomcat 拉取官方的镜像 docker pull tomcat 启动Tomcat服务 方式1: 通过dockerfile生 ...

  8. C语言:获取汉字的编码

    #include <stdio.h> #include <locale.h> #include <wchar.h> int main() { setlocale(L ...

  9. C语言:Unicode字符集

    Unicode 也称为统一码.万国码:看名字就知道,Unicode 希望统一所有国家的字符编码.Unicode 于 1994 年正式公布第一个版本,现在的规模可以容纳 100 多万个符号,是一个很大的 ...

  10. Java基础00-集合基础15

    1. 集合基础 1.1 集合概述 1.2 ArrayList构造方法和添加方法 代码示例: 想通过指定索引添加到最后一个位置的话就填写,现有索引的+1,比如3个索引就是4.如果在指定索引的位置添加没有 ...