CPU监控
top
top 程序提供了运行系统的动态实时视图。它可以显示系统摘要信息以及当前由 Linux 内核管理的进程或线程列表。显示的系统摘要信息的类型以及进程显示得信息的类型、顺序和大小都是用户可配置的,并且该配置可以在重新启动时持久化。
该程序还提供了一个有限的交互界面,方便用户操作。
关于 load average 项一共有三个数,分别表示1/5/15分钟CPU平均负载,分别为 8%、7%,2%。
zombie表示系统中僵尸进程的数量。
%Cpu(s) : [us 表示用户进程占用CPU 1.5%的时间,sy 表示系统进程占用CPU 1.7% 的时间,ni表示改变过优先级的进程占用的CPU时间,id(idle) 表示空间的进程占用的 CPU时间,wa表示 io wait 占用的CPU时间,hi(hardware interrupt)硬件中断,si(software interrupt)软件中断,st(steal)等待被主机调用的时间(虚拟机才有,物理机为0,如果这个参数过高。表示云服务器提供商超卖严重)]。
MiB Mem :[ 总共有 3736.7 MB 的内存,空闲内存为 174.7MB,已经使用了1046.6MB,将2515.4MB作为buff/cache 来使用 ]
MiB Swap : [总共有 0 MB的Swap 分区,空闲swap分区为 0MB,已经使用了 0MB,虚拟内存总量为2405.6MB]
[进程ID] [进程所有者用户名] [任务优先级] [NICE值]
[进程使用的虚拟内存总量][进程使用的物理内存总量][进程使用的共享内存大小]
[进程状态]S-睡眠;R-运行;D-不可中断的睡眠;T-停止;Z-僵尸进程;
[CPU利用率][内存利用率][总CPU占用时间][命令行]
top指令常用参数
powershell
top -H -p [PID] 查看特定 PID 的信息
top -n [PID] 输出[NUM]次 top 信息(默认永不停止)
top -d [Second] 以 [Second] 秒为周期输出
top 指令交互参数
powershell
P - 按照CPU利用率从高到低排序 [ P - CPU ]
M - 按照Memory利用率从高到底排序 [ M - Memory ]
T - 按照累计时间进行排序 [ T - TIME ]
f/F - 添加/删除进程相关信息 [ f - Fields ]
m - 切换内存显示方式 [ m - memory ]
t - 切换进程和CPU状态显示方式 [ t -task ]
b - 打开/关闭高亮显示运行时的进程 [ b -bold ]
1 - 查看所有逻辑CPU的信息
q - 退出程序 [ q - quit ]
内存监控
Free
free 程序用于显示当前系统内存使用情况(默认单位是KByte)。其数据取自/proc/meminfo 文件。
Mem : [总内存容量]已使用的内存量[空闲内存量][内向内存量][缓冲/缓存内存][可用内存量]
total = used + free + buff/cache
Swap :[总Swap分区大小]已使用的Swap分区大小[空闲Swap分区大小]
total = used + free
free 指令常用参数
powershell
free -h 以人类可读的方式进行显示
Swap分区
中文译为交换分区。其是计算机物理RAM的扩展,位于计算机硬盘上。当计算机耗尽它的可用RAM,它将在RAM和swap space之间交换数据。
● 可以通过 swapoff -a 指令关闭 Swap 分区,关闭后其中的内容将回写至内存中。
● 可以解决一些 OOM 问题
参考资料:Swap Memory: What It Is, How It Works, and How to Manage It
磁盘监控
sar
sar 是一个系统监控工具,可用于CPU、内存、磁盘、网络等硬件资源的指标监控。
安装指令 yum install sysstat -y
sar 指令常用命令
powershell
sar -n DEV 2 以两秒为间隔,显示所有网口的流速
sar -d 2 3 -p 以两秒为间隔执行三次显示所有磁盘的读写速度
解释:[磁盘(DEV)][磁盘传输次数][读取千字节数][写入千字节数][平均读写千字节数][平均队列深度][平均操作等待时延ms][平均执行时间耗时ms][使用率]