您的位置:首页 > 其它

服务器性能数据收集

2012-07-23 16:26 429 查看
前提条件:

1、记录下设备的负载情况,在出现问题时有据可查。

2、此文仅仅实现数据的收集,不能统计出图。

简单说明:

通过sar命令来实现信息收集的功能,配合计划任务完成任务。

步骤说明:

1、网络配置

确保服务器可联网,可解析域名。相关配置如下:

配置好外网地址、网关、DNS解析;

或者,配置好内网地址、内网网关和DNS,通过内网网关的转发来上网。

2、yum

配置本地或者网络yum安装源,在其他文章里写过,不再复述。

yum安装sysstat

yum install sysstat -y

3、检测sar命令

sar -A 1 5

4、编写收集信息脚本

有两个脚本:

第一个:

[root@ ******~]# cat /root/cront_for_pengcheng/sar_all.sh
#!/bin/sh
HOSTNAME=$(hostname)
LOGPATH=/data/sar_tmp_log
CPULOGFILE=$LOGPATH/cpu_log_${HOSTNAME}_$(date +%Y%m%d%H).log
MEMLOGFILE=$LOGPATH/mem_log_${HOSTNAME}_$(date +%Y%m%d%H).log
SWAPLOGFILE=$LOGPATH/swap_log_${HOSTNAME}_$(date +%Y%m%d%H).log
ETHLOGFILE=$LOGPATH/eth_log_${HOSTNAME}_$(date +%Y%m%d%H).log
ETH1LOGFILE=$LOGPATH/eth1_log_${HOSTNAME}_$(date +%Y%m%d%H).log
IOLOGFILE=$LOGPATH/io_log_${HOSTNAME}_$(date +%Y%m%d%H).log
T=5
H=`date +%H`
M=`date +%M`
M1=`expr $M + 1`
TTIME=$H:59:59
if [ ! -d "$LOGPATH" ]; then
mkdir -p "$LOGPATH"
fi
sar $T 0 -p -e $TTIME >> $CPULOGFILE &
sar $T 0 -r -e $TTIME >> $MEMLOGFILE &
sar $T 0 -R -e $TTIME >> $SWAPLOGFILE &
sar -n DEV 5 0 -e $TTIME >> $ETHLOGFILE &
sar -n EDEV 5 0 -e $TTIME >> $ETH1LOGFILE &
sar 5 0 -b -e $TTIME >> $IOLOGFILE &

第二个:

[root@****** ~]# cat /root/cront_for_pengcheng/sar_tar.sh
#!/bin/bash
SAR_PROSS=`ps -ef | grep sar | grep -v grep | wc -l`
DIR_NUM=`ls /data | grep sar_tmp_log | wc -l`
LOGPATH=/data/sar_tmp_log
DATE=$(date +%Y%m%d)
if ([ $SAR_PROSS -eq 0 ]&&[ $DIR_NUM -ne 0 ]);then
tar -czvf $LOGPATH.$DATE.tar.gz $LOGPATH
rm -rf $LOGPATH
/bin/bash /root/cront_for_pengcheng/sar_all.sh
elif ([ $SAR_PROSS -ne 0 ]&&[ $DIR_NUM -ne 0 ]);then
killall -9 sar
tar -czvf $LOGPATH.$DATE.tar.gz $LOGPATH
rm -rf $LOGPATH
/bin/bash /root/cront_for_pengcheng/sar_all.sh
elif [ $DIR_NUM -eq 0 ];then
/bin/bash /root/cront_for_pengcheng/sar_all.sh
fi

放在任意位置都可以,更改脚本中的目录参数即可。

5、使用脚本,创建计划任务

crontab -e
在最后添加下面两行:

01 * * * * /bin/bash /root/cront_for_pengcheng/sar_all.sh
50 23 * * * /bin/bash /root/cront_for_pengcheng/sar_tar.sh

/etc/init.d/crond restart
/bin/bash /root/cront_for_pengcheng/sar_tar.sh
ls /data/sar_tmp_log/  ##查看log文件是否成功生成

6、测试结果







7、鸣谢

鸣谢提供第一个脚本框架的朋友,不过sorry的是我忘了是从哪里摘的了。
本文出自 “运维之道” 博客,请务必保留此出处http://pesen.blog.51cto.com/4575807/939959
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: