背景:
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卸載。
