运维监控学习笔记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
相关推荐
大白的编程日记.11 分钟前
【Linux学习笔记】理解一切皆文件实现原理和文件缓冲区
linux·笔记·学习
孞㐑¥12 分钟前
Linux之进程控制
linux·开发语言·c++·经验分享·笔记
愚润求学36 分钟前
【Linux】简单设计libc库
linux·运维·开发语言·c++·笔记
chennalC#c.h.JA Ptho1 小时前
Bodhi linux 系统详解
linux·经验分享·笔记·系统架构·系统安全
monstercl1 小时前
游戏资源传输服务器
运维·服务器·游戏
运维开发王义杰1 小时前
PAC文件:智能代理配置的瑞士军刀
运维
网硕互联的小客服1 小时前
服务器配置错误导致SSL/TLS出现安全漏洞,如何进行排查?
运维·服务器
QX_hao1 小时前
【docker】--镜像管理
运维·docker·容器
敲上瘾1 小时前
MySQL数据库表的约束
linux·数据库·sql·mysql·数据库开发·数据库架构·数据库系统
u0109362652 小时前
Linux电源管理(五),发热管理(thermal),温度控制 (结合设备树 和ACPI Source Language(ASL)分析)
linux