苍穹性能分析--资源监控指标

1. 概述
主机监控主要从CPU、内存、磁盘、网络等资源的指标进行描述,并描述监控指标来源与性能分析语义。
2. CPU
2.1 PMM指标
• PMM -> OS / CPU Utilization Details-> Overall CPU Utilization

关注:user\system\steal\iowait指标。
• PMM -> OS / Node Summary

关注:Max CPU Core Utilization

关注:Interrupts、Context Switches。
2.2 Linux命令
• top 总体负载,关注%CPU,TIME+
• top -H -p进程号 查看线程CPU负载

• pidstat -u 关注进程的CPU占用。

• docker stats 查看宿主机内存与CPU。

• kubectl top node查看容器宿主机内存与CPU。

• kubectl top pod查看Pod实例内存与CPU。

2.3 gPaaS容器监控
• 金蝶云苍穹云基础平台->监控服务->服务监控->容器监控

关注总CPU利用率。

关注Pod的CPU利用率。持续超过90%,则需要分析占用原因。

关注Pod的实例CPU使用量(核)—上图左,应该持续小于实例CPU总量(核)—上图右。持续接近上限则提示CPU高负载。
2.4 指标解释
• User 用户态CPU利用率, 是主要负载,持续超过70%提示高负载。
• System 内核态CPU利用率,持续超过15%提示系统调用频繁。
• Steal 窃取CPU利用率,指的是一个虚拟 CPU 核心必须等待物理 CPU 的时间百分比,通常发生在共享主机上。持续超过10%则提示共享主机存在CPU资源争夺。
• Iowait,CPU等待队列的线程在等待IO完成的空闲时间百分比,持续超过10%则提示IO瓶颈。
• Max CPU Core Utilization 抽样期间的所有CPU核的最大CPU利用率。
• Interrupts,中断次数,其绝对值无意义,需要关注时间段的增长趋势,持续高企则提示程序执行流被硬件事件、CPU事件中断执行。
• Context Switches,上下文切换次数,其绝对值无意义,需要关注时间段的增长趋势,持续高企则提示CPU忙于切换线程。
• %CPU进程CPU利用率%。正常值<= CPU总核数*100*75%,如果持续超过该阈值则提示该进程高负载。
• Load average,总体负载,应该持续小于CPU核心数,超过CPU核心数则提示高负载。
• TIME+,进程已分配的CPU时间片时间,常用于确定占用CPU最多的Java线程。
3. 内存
3.1 PMM指标
• PMM -> OS / Memory Details-> Memory Usage

关注:total、used。
• PMM -> OS / Memory Details-> Memory Usage Types

关注:辅助帮助分析内存OOM问题,关注内存的主要组成部分。
• PMM -> OS / Memory Details-> Committed Memory

关注:CommitLimit是内存分配上限;
Committed_AS是已经分配的内存大小。
3.2 Linux命令
• top 关注VIRT、RES、SHR、%MEM列。

• free 关注used、free

• pidstat –r 关注minflt/s、majflt/s等缺页指标。

• cat /proc/meminfo 是占用内存的最明细占用。

• docker stats 查看宿主机内存与CPU。

• kubectl top node查看容器宿主机内存与CPU。

• kubectl top pod查看Pod实例内存与CPU。

3.3 gPaaS容器监控
• 金蝶云苍穹云基础平台->监控服务->服务监控->容器监控

关注总内存的占用率。

左图为内存利用率,右图为上限。
3.4 指标解释
• Used 整机全部进程使用的内存总量。
• 数据库服务中,应该<=7
苍穹性能分析--资源监控指标
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



