7月10日任务
10.1 使用w查看系统负载
10.2 vmstat命令
10.3 top命令
10.4 sar命令
10.5 nload命令
监控系统状态
(1)w/uptime 查看系统负载
(2)cat /proc/cpuinfo 查看cpu核数
(3)vmstat 监控系统状态
(4)用法 vmstat 1
(5)关键的几列:r ,b , swpd ,si , so ,bi , bo , us , wa
(6) top 查看进程使用资源情况
(7)top -c 显示详细的进程信息
(8)top -bn1 静态显示所有进程
(9)q退出,数字1显示所有cpu,大写字母M按内存使用排序
(10)大写字母P按cpu使用排序
10.1 使用w查看系统负载
该命令显示的信息还是蛮丰富的。第一行从左面开始显示的信息依次为:时间,系统运行时间,登录用户数,平均负载。第二行开始以及下面所有的行,告诉我们的信息是,当前登录的都有哪些用户,以及他们是从哪里登录的等等。其实,在这些信息当中,我们最应该关注的应该是第一行中的 ‘load average:’ 后面的三个数值。
第一个数值表示1分钟内系统的平均负载值;第二个数值表示5分钟内系统的平均负载值;第三个数值表示15分钟系统的平均负载值。这个值的意义是,单位时间段内CPU活动进程数。当然这个值越大就说明服务器压力越大。一般情况下这个值只要不超过服务器的cpu数量就没有关系,如果服务器cpu数量为8,那么这个值若小于8,就说明当前服务器没有压力,否则就要关注一下了。
那么如何查看服务器有几个cpu?
cat /proc/cpuinfo 查看cpu核数
10.2 vmstat命令
通过查看vmstat可以查看瓶颈在哪里,是哪里资源不够用了。
#vmstat 1 表示每一秒显示一次,动态显示
#vmstat 1 5 表示每一秒显示一次,自动显示5行结束
r 是run的简写,表示有多少个进程处于run的状态
b 是block的简写,表示被cpu以外的资源给阻断了,处于一个等待状态,卡死了
swpd 在内存不够的时候,可以把内容放进swap里面去,需要注意,如果swpd里面的数字不变还好,如果这里面的数字在持续的变化,一会多,一会少,说明你的交换分区和内存在频繁的交换数据,这只有一个问题,就是你的内存不够了
si 和 so 与swap有关联的,如果你的swap里面的数字在频繁的改变,那么你的si和so里面的数字也是在变更的。si表示有多少个数据,有多少个块,它的单位是KB,有多少KB从swap进入到内存中,就叫si。si 就是in,so就是out,它们的参照物就是内存,in就是进入到内存里去的,out就是从内存里出来的。
bi 和 bo 和磁盘有关系的,bi就是从磁盘里出来进入到内存里去,也就是读的数据量有多少,bi就是从磁盘里读。 bo是写的数据量,bo是从磁盘里写。那么如果bi和bo里面的数据经常变化,说明你的磁盘在频繁的读写。
us 表示用户级别的。用户占用是多少。这里面的数字不会超过100,因为一共就死100%,如果数据长时间大于50,说明你的资源不够了。
sy 表示系统本身的一些进程或者服务,它占用的cpu的一些百分比。
id 表示空闲。 那么us,sy,id三个里面的数字相加等于100,
wa 等待cpu的百分比,有多少个进程在等待cpu,如果这一列很大,说明你的cpu不够用了。
10.3 top命令
一 top 查看进程使用资源情况,3秒钟显示一次,动态的
经常关注一下us的百分比,如果长时间在60%以上,肯定对你的cpu不行的。cpu长时间高运转,那机器就会在短期换。
(1)top -c 显示详细的进程信息
(2)top -bin1 静态显示所有进程 (这种用法适合在写脚本的时候使用)
(3)q退出,数字1显示多有核cpu,大写字母M按内存使用排序
(4)大写字母P按cpu使用排序
上面的PID ,比如某一个进程想把它杀死,直接 q PID就可以
10.4 sar命令/10.5 nload命令
监控系统状态
一 sar -n DEV 网卡流量
如果sar命令没有,就要先下载包 #yum install -y sysstat
从左向右
第一列:时间
第二列:网卡名字
第三列:每秒接受到的数据包,每秒几千是正常的,如果上万就不正常了
第四列:每秒发送出去的数据包
第五列:发送出去的数据量
二 sar -q 系统负载
三 sar -b 磁盘读写
四 sar -f /var/log/sa/saxx 历史文件
五 nload 命令
六 yum install -y epel-release
七 yum install -y nload