• Rancher监控指标一文干到底(workload metrics)


    一、工作负载指标

    直接截取一个生产环境的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

    官方描述:

    ------------------个人能力有限,大家多交流,一起壮哉我大JAVA!------------------

    如果你觉得本文对你有点帮助的话,记得在右下角点个“推荐”哦,博主在此感谢!

  • 相关阅读:
    字符数组(判断字符串大小)
    http请求文件流
    webservice接口调用
    面试基础-线程(一)
    面试基础-redis(二)
    面试基础-redis(一)
    面试基础--JVM
    【转】支付系统
    springcloud搭建高可用注册中心的时候注册中心在unavailable-replicas中的问题
    springboot+javafx所有依赖一起打包
  • 原文地址:https://www.cnblogs.com/dennyzhangdd/p/15093498.html
Copyright © 2020-2023  润新知