背景:
sysstat是什么??
Sysstat,一种常用在Linux系统服务器中的软件工具包,可以用来监控服务器的性能。比如可以监控CPU、硬盘、网络等数据,
sysstat提供了Linux性能监控的工具集,包括sar、sadf、mpstat、iostat、pidstat等,这些工具可以监控系统性能和使用情况。
我们可以用来进行分析服务器的性能和资源的使用效率。
所有主机要求纳入it监控中,监控软件sysstat能实现主机基础性能的采集。sar -V检查原版本为9.0.4,不能满足要求升级为11.5.5
一、sysstat安装
通过 #yum install sysstat 安装的版本为9.0.4版本,所以要想pidstat命令的输出中带有%wait列,就要进行源码安装或者使用rpm升级到11.5.5版本。
首先把旧版本进行删除 : # rpm -e --nodeps sysstat
然后安装前需确认系统是否已安装gcc,运行如下命令,redhat5以上版本使用自带的gcc即可
一、源码安装
【注意,高度注意】
在这以前一定要把之前yum 安装的sysstat卸载了
#yum remove sysstat
我这里选用开源中国的源码包
#开源中国下载:https://www.oschina.net/news/82345/sysstat-11-5-5 如下图,我选择的是tar.gz的压缩包。
依次执行以下命令:
#cd /usr/local/src
#rz 上传压缩包
#tar zxvf sysstat-11.5.5.tar.gz
#cd sysstat-11.5.5
#./configure
#make
#make install
然后就可以安装成功啦。
验证:# mpstat -V 可以看到版本号啦
#pidstat 就可以看到%wait了
>>>>>>遇到的问题
问题1、sar命令,直接用不可用;但是其他命令如sar -V却正常
原因:上面如果卸载了旧版本的sysstat,应该不会出现这个问题,这个问题的终极解决办法,就是卸载旧版本。
>>原因: 怀疑是生成sa数据文件的sar和解析sa数据文件的sar命令的版本不同
# which sar
/usr/local/bin/sar # 这个是我读取sa数据文件的命令,版本号 11.5.5
# sar -V
sysstat version 11.5.5
(C) Sebastien Godard (sysstat <at> orange.fr)
>> 如何知道生成sa数据文件使用的是那个版本的sar呢?
一般这些文件都是写在cron里面的,所以grep一下cron的配置文件:(注意: grep sa 不是grep sar)
# grep sa -r /etc/cron*
/etc/cron.d/sysstat:*/10 * * * * root /usr/lib/sa/sa1 1 1
/etc/cron.d/sysstat:53 23 * * * root /usr/lib/sa/sa2 -A
# /usr/lib/sa/sa1 -V
sysstat version 9.0.4
(C) Sebastien Godard
>>为什么会出现这种情况呢?
9.0.4 版本的sar是在 /usr/bin/ 目录下的, 而我的执行环境中的$PATH 变量如下:
# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin
先找到了 /usr/local/bin 下的sar了
>>解决办法: (写sar的全路径呗)
#/usr/bin/sar -q
问题二、打不开 /var/log/sa/sa29文件 如下图
>>>解决办法:
第一次使用的时候会出现这个问题。
# mkdir /var/log/sa 新建这个目录
#cd /var/log/sa
#sar -o 29 生成这个文件
然后就可以使用啦,哈哈,完美解决
问题三:只能./pidstat 在目录下执行该命令,直接执行pidstat 不会出来%wait
配置环境变量 /etc/profile
二、rmp进行升级
【该篇操作总结】
什么方法安装,什么卸载,yum安,yum卸载;rpm安,rpm卸载。