JavaShuo
栏目
标签
使用w查看系统负载,vmstat 命令,sar命令,nload命令
时间 2019-12-17
标签
使用
查看
系统
负载
vmstat
命令
sar
nload
栏目
负载均衡
繁體版
原文
原文链接
使用w查看系统负载
如图,使用 w 命令能够显示系统负载信息
第一个时间是使用w命令时,系统当前的时间
第二个时间,也就是up后面的时间,是系统运行了多长的时间
这里是 9 days, 22:43 说明系统运行了9天22分钟
2 users 表示有两个用户登陆了系统
load averagge 后面的三列数字表示系统负载的数值
第一列是过去1分钟的平均负载,第二列是过去5分钟的平均负载,第三列是过去15分钟的平均负载
好比每一个cpu有有一个默认负载极限
过去一分钟实际运行的进程比默认的负载极限少
那么 过去一分钟的进程数/极限进程负载数 就会小于 1
若是过去一分钟的进程数等于极限进程负载数
这两个值相除,就等于1
若是1分钟内的进程数大于极限负载数,两个值相除,就会大于1
这个值最好是 小于等于1,若是大于1,说明负载过高
对于多核cpu负载极限也不一样
好比,单核cpu负载极限是1,双核就是2,8核就是8
负载极限是按照逻辑cpu来算的,而不是物理cpu
想查看逻辑cpu数量,能够 cat /proc/cpuinfo
如图,能够看 processor 这一行数据
这里是 0 ,就表示有一个逻辑cpu
这一行数据是从0开始的,实际上 0 就表示1个逻辑cpu
若是这一行数值是7,那就表示有8个逻辑cpu
这一行的数值加 1 就是逻辑cpu的个数
因此 processor 这一行的值+1乘以1就是服务器的极限负载能力值
load average 小于或者等于这个值就说明服务器负载没有问题
大于这个值说明实际负载大于服务器极限负载值
使用 uptime 命令也能够查看系统负载信息,不过通常都使用 w
vmstat 命令
vmstat 能够查看当前系统cpu,磁盘,内存等的使用情况
如图,使用命令 vmstat 能够查看一次当前情况
若是想不断的更新使用情况,可使用 vmstat 1
这样系统每过1秒,就会显示一次当前的系统使用情况
也可使用 vmstat 1 5
这条命令意思是 每秒显示一次信息,总共显示5次
这样就能够看到接下来5秒的系统使用情况
vmstat 显示的信息主要分为几部分,经常使用部分有
procs 表明 cpu
memory 表明内存
swap 表明交换分区
io 表明磁盘
cpu cpu使用时间百分比
procs 下面有 r 跟 b 两列
r 是 run 的意思
意思是cpu在处理的进程数量
通常正在处理和等待处理的进程数量都在 r 显示
b 是 block 的意思
下面是数值也是进程数量
跟r的区别是,因为网络,或者磁盘等缘由卡死等待的进程数量
会显示在这里,好比一个进程须要网络传输数据
可是网络太慢,数据没有传输完成,致使cpu不能处理该进程
这个进程就会进入等待,由于是网络卡致使的等待
会显示在 b 这一列里面
memory下面的 swpd 是交换分区的意思
若是内存不够用了,系统会将内存里面的一部分数据放到交换分区里面
交换分区通常是在磁盘上面
这个分区若是频繁变更
说明内存在不断的与交换分区交换数据
也就表示内存是不够用的
swap 下面的 si,so 跟swpd有关系
si,so就表示交换分区的读写情况,单位是kb
因此 swpd 有变更的话
si,so也必定有数据变化
i表示in,o表示out,目标对象都是内存
因此 si 是数据 in 内存,也就是从swap 读数据进入内存
so 是数据 out 内存,也就是从内存出来,写入swap
si 表示数据从交换分区写入内存
so 表示数据从内存写入交换分区
io下面的 bi,bo 表明磁盘读写
目标对象也是内存
因此 bi 表示 in 内存,从磁盘读取数据写入内存
bo 表示 out 内存,从内存读取数据写入磁盘
bi 数据从磁盘到内存
bo 数据从内存到磁盘
cpu 下面经常使用的是 us,单位是百分比
us 表示用户的进程占用cpu使用时间的百分比
举例说明,cpu 开启了 10秒
有 5秒 都在处理用户的进程
那么 us 就是 50
sy 是系统本身的进程占用的cpu使用时间百分比
id 表示cpu空闲的时间的百分比
cpu从启动开始,通常就是两种状态,空闲 或者处理进程
那么 空闲时间 + 处理进程的时间 = 总的时间
us 就是 处理用户进程的时间 除以 总的时间 的百分比
sy 就是 处理系统进程的时间 除以 总的时间 的百分比
id 就是 空闲时间 除以 总的时间 的百分比
因此 us + sy + id = 100(百分百)
通常 us 超过 50 说明 cpu 可能性能不足以应付当前任务
wa 是进程等待数的百分比,表示在等待状态的进程占总进程数的百分比
top 命令
top 能够查看系统进程使用情况
top 命令每3秒更新一次信息
如图,第一行的信息跟 w 第一行同样
第二行有几列信息,分别是
total,runningg,sleeping,stopped,zombie
total表示总共有几个进程,这里总共有95个进程
running就是正在运行的进程,也就是cpu正在处理的进程
也是 vmstat 中 r 状态的进程
sleeping 表示进程在休眠状态,能够过一段时间才会运行
stopped 表示进程在中止状态的进程数
zombie 意思是主进程由于某种缘由已经终止了
可是留下的子进程并无被终止,这些子进程就没人管了
还在自动运行,可是是没用的,这些子进程就是zombie状态
第三行是cpu的信息
能够在第三行看到 us sy id wa st 的信息
主要要看的也是这几个
其中,st 表明 cpu 被偷走的时间百分比
若是服务器作了虚拟化,就会产生虚拟机
而虚拟机的cpu利用的资源实际来自于服务器的真实cpu
st 也就是 cpu 被虚拟机拿去使用的时间的占比
主要仍是观察 us 的使用状况
尽可能保证 us 占比在 60 一下
由于 cpu 常年满负荷运转的话,会缩短使用寿命
因此通常在60如下比较好
us 和 load average 不必定有关系
由于系统负载跟进程数占用cpu有关
可是占用cpu的进程不必定是 r 状态
若是不是 r 状态,那么 us 就不高
Mem 是内存信息
第一列是总内存大小
第二列是空闲内存大小
第三列是已经使用的内存大小
如图,下面显示的是进程的信息
通常来讲,默认是按照 cpu 的占用率来进行排序
cpu 占用高的进程会在上面
%MEM是内存的占用率
RES 是进程使用的实际内存,单位是kb
RES 除以 上面的total 就能够获得 %MEM 内存占用率
除了按照cpu占用率排序以外
还能够按照内存占用率排序,使用 大写M 就能够按照内存占用率排序
也就是按 大写的M键
若是想切换回来,按照cpu占用率排序,可使用 大写P 键
还能够切换不一样的cpu查看进程,使用按键 1
按 1 就能够在不一样的cpu之间进行切换
使用命令 top -c
如图,c 参数能够在 COMMAND 列 显示详细的命令信息,如这个命令的地址等
还可使用 top -bn1 命令
这样能够一次性把全部的进程信息都列出来,适合在写脚本时使用
若是想kill一个进程,可使用 kill命令 + PID 来杀死一个进程
sar命令
若是系统没有sar命令,就须要安装一个包
yum install -y sysstat 就能够安装sar命令的包
安装完包,直接使用 sar 命令,出现错误
由于在不加参数的状况下使用 sar 命令
sar 会调用 /var/log/sa 目录里面的历史文件
sar 每隔10分钟,会自动保存一个历史文件在这个目录里面
由于如今刚刚安装完包,这个目录里面尚未历史文件,因此调用出现错误
没有历史文件的状况下,想使用sar 就须要加上参数使用
如图,sar -n DEV 1 3 能够查看网卡信息
参数 -n 是网络设备的意思
参数 DEV 是 -n 的参数,指网络设备的统计信息
网络设备有不一样类型的统计信息,DEV是设备基本的统计信息
参数 1 是指 每秒统计一次,参数 3 是指 总共统计三次
也就是 3 秒后sar命令会自动结束
使用命令后,下面出现的信息
第一列是统计信息的时间
第二列是网卡的名字,这里有两个网卡,分别是 lo 和 ens33
第三列 rxpck/s 是每秒接收到的数据包,单位是个
第四列 txpck/s 是每秒发送出去的数据包,单位是个
第五列 rxkB/s 是每秒接收的数据量,单位是kb
第六列 txkB/s 是每秒发送出去的数据量,单位是kb
最后三列不怎么用到,主要看数据包跟数据量的列
接收的数据包,若是是每秒几千个,算是正常的
若是每秒上万个,多是被攻击了
使用这条命令,能够查看 /var/log/sa/ 目录下的历史文件
历史文件生成名称是有规律的,通常是 sa+当天的日期的日
好比,今天是10月01日,那么今天生成的历史文件名称就是 sa01
若是是10月20日生成的历史文件,那么文件名就是 sa20
当天的历史文件,每隔10分钟会更新一次
这个文件夹下面的历史文件最多保留1个月就会自动删除
这条命令里面,使用 -f 参数才能够打开文件,后面接文件地址
目录 /var/log/sa/sa01 这个历史文件是 二进制文件,不能 cat 查看
sa目录下面除了sa01,还会生成 sar01 这个文件
不过 sar01 要到次日才会出现,sar01 是文本文件
直接使用 cat 就能够读取内容
sar -q 1 10 查看每秒的负载,总共看10秒,不过每秒负载意义不大
直接 sar -q 系统自动分为 每10分钟的负载
或者使用 sar -q -f /var/log/sa/sa01 查看当天的负载
这里,ldavg-1就是前1分钟的负载状况
ldavg-5就是前5分钟,ldavg-15就是前15分钟负载
sar -b 1 5 查看磁盘读写状况,每秒统计1次,总共5次
下面的信息就是磁盘的读写状况,能够用 sar -b 查看
nload命令
nload 也能够监控网卡流量
nload 也是须要安装包的
安装 nload 包以前,须要先安装 epel-release 包
安装好以后,再使用 yum install -y nload 安装 nload 包
安装好包以后,输入 nload 回车,就会出现上图界面
能够实时看到网卡的流量信息
Curr 是当前值,Avg是平均值,Min是最小值,Max是最大值
第一行数据,ens33就是网卡名称
后面是 ip 地址,而后(1/2)表示总共有2个网卡,这是其中一个
使用 右方向键,能够切换到第二个网卡,如上图,能够看到第二个网卡的信息
右方向键能够切换网卡,看到不一样网卡的信息
也可使用左方向键向左切换
右方向键能够来回切换,左方向键只能向左切换
按 q 退出该界面
相关文章
1.
使用w查看系统负载 、vmstat、top、sar、nload命令
2.
使用w查看系统负载、vmstat、top、sar、nload命令
3.
11.27 使用w查看系统负载 vmstat top sar nload 命令
4.
w查看负载,vmstat命令,top命令,sar命令,nload命令
5.
LINUX系统学习笔记使用w查看系统负载 ,vmstat命令,top命令, sar命令, nload命令
6.
使用w查看系统负载、vmstat命令、top命令、sar命令、nload命令
7.
使用w查看系统负载 vmstat命令 top命令 sar命令 nload命令
8.
10.1 使用w查看系统负载 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令
9.
28次课(使用w查看系统负载、vmstat命令、top命令、sar命令、nload命令)
10.
使用w查看系统负载, vmstat命令, top命令, sar命令, nload命令
更多相关文章...
•
Docker info 命令
-
Docker命令大全
•
Docker rm 命令
-
Docker命令大全
•
Docker 清理命令
•
Docker容器实战(七) - 容器眼光下的文件系统
相关标签/搜索
命令
命令模式
下命令
命令行CMD
ANSYS命令流
zip命令
命令式
Linux命令
clean deploy命令
Linux 命令
Linux
负载均衡
Docker命令大全
MySQL教程
Redis教程
命令
文件系统
应用
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
No provider available from registry 127.0.0.1:2181 for service com.ddbuy.ser 解决方法
2.
Qt5.7以上调用虚拟键盘(支持中文),以及源码修改(可拖动,水平缩放)
3.
软件测试面试- 购物车功能测试用例设计
4.
ElasticSearch(概念篇):你知道的, 为了搜索…
5.
redux理解
6.
gitee创建第一个项目
7.
支持向量机之硬间隔(一步步推导,通俗易懂)
8.
Mysql 异步复制延迟的原因及解决方案
9.
如何在运行SEPM配置向导时将不可认的复杂数据库密码改为简单密码
10.
windows系统下tftp服务器使用
本站公众号
欢迎关注本站公众号,获取更多信息
相关文章
1.
使用w查看系统负载 、vmstat、top、sar、nload命令
2.
使用w查看系统负载、vmstat、top、sar、nload命令
3.
11.27 使用w查看系统负载 vmstat top sar nload 命令
4.
w查看负载,vmstat命令,top命令,sar命令,nload命令
5.
LINUX系统学习笔记使用w查看系统负载 ,vmstat命令,top命令, sar命令, nload命令
6.
使用w查看系统负载、vmstat命令、top命令、sar命令、nload命令
7.
使用w查看系统负载 vmstat命令 top命令 sar命令 nload命令
8.
10.1 使用w查看系统负载 10.2 vmstat命令 10.3 top命令 10.4 sar命令 10.5 nload命令
9.
28次课(使用w查看系统负载、vmstat命令、top命令、sar命令、nload命令)
10.
使用w查看系统负载, vmstat命令, top命令, sar命令, nload命令
>>更多相关文章<<