运维监控学习笔记4

系统监控:

CPU:

内存:

IO INPUT/OUTPUT(网络、磁盘)

CPU三个重要概念:

上下文切换:CPU调度器实施的进程的切换过程,称为上下文切换。CPU寄存器的作用。

上下文切换越频繁,对CPU消耗越大。

运行队列(负载):uptime,或者top命令,可以看到1分钟、5分钟、15分钟的负载。

维持一个运行队列,队列中的进程越多,说明CPU负载越高。

CPU使用率:

用户态和内核态:

us:用户态的CPU使用率:

sy:内核态的CPU使用率:

ni:CPU进程优先级切换,进程优先级为负的百分比:

id:空闲;

wa:IO等待的百分比;

hi:CPU硬中断的百分比;

si:CPU软中断的百分比;

st:虚拟CPU等待实际CPU的百分比;

时间片:执行多个进程成为可能,某个时刻只有一个进程正在运行。

配置进程的优先级:

确定服务类型:

IO密集型:数据库

CPU密集型:web服务、mail服务等

确定性能的基准线:

运行队列:1-3个线程 **1个CPU,4核的,负载不超过12。**经验值。

CPU使用率:65%-70% 用户态的利用率,30%-35%内核态的利用率,内核态不要超过30%,超过30%说明是有问题的。0%-%5 空闲。

执行到某个代码,CPU使用率就上去了,那说明代码是有问题。

上下文切换:根据业务进行设计。经验值。

CPU的监控工具:

1)top命令:

大写的P:按CPU使用率排序。

大写的M:按内存的使用率排序。

)sysstat工具:

bash 复制代码
yum install -y sysstat


[root@vm1 snmp]# vmstat --help

Usage:
 vmstat [options] [delay [count]]

Options:
 -a, --active           active/inactive memory
 -f, --forks            number of forks since boot
 -m, --slabs            slabinfo
 -n, --one-header       do not redisplay header
 -s, --stats            event counter statistics
 -d, --disk             disk statistics
 -D, --disk-sum         summarize disk statistics
 -p, --partition <dev>  partition specific statistics
 -S, --unit <char>      define display unit
 -w, --wide             wide output
 -t, --timestamp        show timestamp

 -h, --help     display this help and exit
 -V, --version  output version information and exit

For more details see vmstat(8).
[root@vm1 snmp]# vmstat 1 10
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 1  0      0 1237608   2080 445400    0    0     5     1   13   17  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   63   84  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   55   78  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   46   69  0  1 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   49   72  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   44   69  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   42   62  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   46   69  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   41   62  0  0 100  0  0
 0  0      0 1237608   2080 445400    0    0     0     0   39   62  0  0 100  0  0
[root@vm1 snmp]#

2)mpstat:

bash 复制代码
[root@vm1 ~]# mpstat
Linux 3.10.0-1160.92.1.el7.x86_64 (vm1)         08/13/2023      _x86_64_        (2 CPU)

03:22:53 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
03:22:53 PM  all    0.87    0.00    3.18    0.10    0.00    0.04    0.00    0.00    0.00   95.81
相关推荐
狂奔蜗牛飙车3 分钟前
大数据赛项(中职组)-VMware+CentOS 7环境安装
linux·运维·centos·大数据应用与服务·大数据入门指南·中职组大数据应用及服务赛项·vmware中装centos7
Joseph Cooper14 分钟前
STM32MP157 Linux驱动学习笔记(五):子系统与工程边界(V4L2/IIO/devmem/UIO)
linux·stm32·学习
蚰蜒螟17 分钟前
深度剖析:从 clone3 到 start_routine —— Linux 新线程的“破茧成蝶”之旅
java·linux·运维
雕刻刀20 分钟前
linux中复制conda环境
linux·python·conda
空中海26 分钟前
Nginx 知识体系 · 下篇:高级与实战
运维·nginx·spring
小五传输35 分钟前
内外网文件交换系统产品推荐:安全高效一体化,破解内外网传输难题
大数据·运维·安全
佳xuan41 分钟前
linux运维
linux·运维·服务器
如果'\'真能转义说1 小时前
《数据不丢失!本地挂载的 Docker 一键启动PS1脚本》
运维·docker·容器
C咖咖1 小时前
Linux 下使用 GDB 调试 C++ 的全面总结
linux·gdb·调试
笨笨饿1 小时前
66_C语言与微控制器底层开发
linux·c语言·网络·数据结构·算法·机器人·个人开发