系統狀態檢視工具Sysstat

tonykorn97發表於2006-04-24

系統狀態檢視工具Sysstat

1、關於 Sysstat;


Sysstat 是一個軟體包,包含監測系統效能及效率的一組工具,這些工具對於我們收集系統效能資料,比如CPU使用率、硬碟和網路吞吐資料,這些資料的收集和分析,有利於我們判斷系統是否正常執行,是提高系統執行效率、安全執行伺服器的得力助手;


Sysstat 軟體包整合如下工具:

* iostat 工具提供CPU使用率及硬碟吞吐效率的資料;
* mpstat 工具提供單個處理器或多個處理器相關資料;
* sar 工具負責收集、報告並儲存系統活躍的資訊;
* sa1 工具負責收集並儲存每天系統動態資訊到一個二進位制的檔案中。它是透過計劃任務工具cron來執行,
是為sadc所設計的程式前端程式;
* sa2 工具負責把每天的系統活躍性息寫入總結性的報告中。它是為sar所設計的前端 ,要透過cron來呼叫
* sadc 是系統動態資料收集工具,收集的資料被寫一個二進位制的檔案中,它被用作sar工具的後端;
* sadf 顯示被sar透過多種格式收集的資料;


2、安裝 Sysstat和執行;


對於大多數系統,都有這個軟體包,軟體名以sysstat開頭。我們可以透過網路安裝它;


2.1 對於Debian或deb軟體包為基礎的系統;

[root@localhost ~]# apt-get install sysstat


2.2 Fedora 系統或以RPM包管理的系統;

[root@localhost ~]# yum install sysstat

如果是RPM包,請用下面的命令來安裝;


[root@localhost ~]#rpm -ivh sysstat*.rpm

如果您想了解yum 和rpm 軟體包管理工具,請參考:《Fedora / Redhat 軟體包管理指南》


2.3 Slackware 系統,對於Slackware系統;

[root@localhost ~]# installpkg sysstat*.pkg


2.4 透過原始碼包編譯安裝;


如果您是透過原始碼包安裝,請到官方下源原始碼包 ,目前最新版本是 sysstat-6.1.2;

如果您想了想一下什麼是原始碼包,請參考:《如何編譯安裝原始碼包軟體》


[root@localhost ~]# tar zxvf sysstat-6.1.2.tar.gz
[beinan@localhost ~]$ cd sysstat-6.1.2
[beinan@localhost sysstat-6.1.2]#
[beinan@localhost sysstat-6.1.2]# make config
[beinan@localhost sysstat-6.1.2]# make
[beinan@localhost sysstat-6.1.2]# make install


2.5 關於 Sysstat 計劃任務;


如果您想得到Sysstat工具集所收集的系統資訊自動存為某個檔案中,你必須透過cron 為 sa1 和sa2 做計劃任務。我們可以透過修改使用者的crontab。在預設的情況下,Sysstat歷史資訊將被存放在/var/log/sa檔案中。如果想定義自己的計劃任務,請參考:《計劃任務工具 cron 的配置和說明》

在root使用者,透過 crontab -e 來新增下面的一段;


# 8am-7pm activity reports every 10 minutes during weekdays
0 8-18 * * 1-5 /usr/lib/sa/sa1 600 6 &
# 7pm-8am activity reports every hour during weekdays
0 19-7 * * 1-5 /usr/lib/sa/sa1 &
# Activity reports every hour on Saturday and Sunday
0 * * * 0,6 /usr/lib/sa/sa1 &
# Daily summary prepared at 19:05 5 19 * * * /usr/lib/sa/sa2 -A &

建立Sysstat的啟動指令碼;


[root@localhost ~]# touch /etc/rc.d/init.d/sysstat
[root@localhost ~]# vi /etc/rc.d/init.d/sysstat


#!/bin/sh
# Begin $rc_base/init.d/sysstat
# Based on sysklogd script from LFS-3.1 and earlier.
# Rewritten by Gerard Beekmans -

. /etc/sysconfig/rc
. $rc_functions
case "$1" in
start)
echo "Calling the system activity data collector (sadc)..."
/usr/lib/sa/sadc -F -L -
evaluate_retval
;;
*)
echo "Usage: $0 start"
exit 1
;;
esac
# End $rc_base/init.d/sysstat


[root@localhost ~]# chmod 755 /etc/rc.d/init.d/sysstat
[root@localhost ~]# ln -sf /etc/rc.d/init.d/sysstat /etc/init.d/sysstat

有了Sysstat的守護程式,這樣我們開機後,Sysstat的守護程式,就時時刻刻的為我們服務了。sa 、sa1或sa2自動把資訊存在 /var/log/sa目錄的二進位制檔案中,我們可以透過sar工具來提取這些系統資訊的歷史;

當然我們也可以透過手動的方法來開啟Sysstat的守護程式,也就是我們前面所製作的sysstat;


[root@localhost ~]# /etc/rc.d/init.d/sysstat start
下面的方法也行;
[root@localhost ~]# /usr/lib/sa/sa1
[root@localhost ~]# /usr/lib/sa/sa2

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/312079/viewspace-245318/,如需轉載,請註明出處,否則將追究法律責任。

相關文章