サーバのリソースを確認するためにある程度の情報はグラフ化しておくべきであろう。
だからといって、なにからなにまでグラフ表示させるのは大げさすぎる。
しかしながら、サーバにボトルネックが発生した場合には、
過去にさかのぼってシステムの状態をトレースし、原因をつきとめなければならない。
そのために、グラフ化させるまではないが、
サーバ内では定期的に細かい情報は取得しておくべきである。
自宅でのlinuxサーバでは何を取得しているかを参考までに記録しておく。
#!/bin/shサーバ内のリソースの確認ポイントはここを参照のこと。
LANG=C
TIME=`date +"%Y%m%d %H%M%S"`
DIR="/var/tmp/resource/"
HOSTNAME=`hostname`
PATH=$PATH:/usr/sbin
for CMD in "top -n 1 -b" "lsof -n" "uptime" "mpstat -P ALL 10 1" "iostat -x 10 2" "vmstat 10 2" "free" "df -P" "ps auxww -L" "netstat -an" "netstat -s" "ipcs" "w"
do
NAME=`echo $CMD | cut -d ' ' -f 1`
FILE=${DIR}/${HOSTNAME}_${TIME}_${NAME}.log
$CMD >> $FILE
done
また、sysstatの情報もディフォルト10分から毎分に変更しておいた方がいいだろう。
# vim /etc/cron.d/sysstat
* * * * * root /usr/lib64/sa/sa1 -S DISK 1 1