shell监控脚本-准备工作

1 准备监控机
linux 系统,普通服务器即可,要求:
安装ssh 客户端,如果要发送手机短信,还需准备短信猫并且安装 gnokii或者 gammu

2 编辑ssh_config 配置文件
/etc/ssh/ssh_config 配置文件,设置"GSSAPIAuthentication no"

3 使用密匙登录linux 主机

4 建立sh 目录,用于存放shell 脚本
mkdir -p /root/sh/crontab/log
sh 目录存放shell 脚本
crontab/log 目录存放错误信息

5 准备配置文件

   
   
   
   
  1. cat /root/sh/CONFIG

  2. MOBILES="13xxxxxxxxx 18xxxxxxxxx 13xxxxxxxxx"

  3. MAILS="[email protected] [email protected]"

  4. ESXI_HOSTS="192.168.57.91 192.168.57.93"

  5. PHYSICAL_HOSTS="192.168.57.112 192.168.0.1 192.168.57.99"

  6. LINUX_WEB_HOSTS="192.168.57.82 192.168.57.70 10.0.100.72 10.0.100.73 10.0.100.75 10.0.100.76 10.0.100.77 10.0.100.78"

  7. WIN_WEB_HOSTS="10.0.100.81 10.0.100.83"

  8. DB_SLAVE_HOSTS="10.0.100.82"

  9. ALLHOSTS="$ESXI_HOSTS $PHYSICAL_HOSTS $LINUX_WEB_HOSTS $WIN_WEB_HOSTS $DB_SLAVE_HOSTS"

注意:此配置文件用于定义全局变量,包括ip 地址,邮件地址,电话号码等等.

6 crontab任务计划

   
   
   
   
  1. crontab -l

  2. #ping

  3. */1 * * * * /root/sh/chk_ping.sh >> /root/sh/cron.log 2>&1

  4. #df

  5. * * * * * /root/sh/chk_df.sh >> /root/sh/cron.log 2>&1

  6. #load

  7. */1 * * * * /root/sh/chk_load.sh >> /root/sh/cron.log 2>&1

  8. #mysql_replicate

  9. */1 * * * * /root/sh/chk_mysql_replicate.sh >> /root/sh/cron.log 2>&1

  10. #web

  11. */1 * * * * /root/sh/chk_web.sh >> /root/sh/cron.log 2>&1

  12. #xxxx

  13. #......................................

注意:脚本执行时间]需按照脚本实际功能来制定,例如 chk_df 监控服务器磁盘空间,每小时执行一次就可以了,所有监控脚本在 rhel5/centos5 下测试正常其它linux 系统请自行测试

结束
更多请:  
linux 系统运维  37275208  
vmware 虚拟化  166682360