########################
批量建立nagios配置文件:
########################
############################################################
#
# Purpose: 批量建立nagios配置文件
#
# USER YYYY-MM-DD – ACTION
# Oldboy 2010-06-09 – Created
# QQ:31333741 老男孩 mail:31333741@qq.com
# 网站运维专家QQ群欢迎你!群号: 37081784 (进群务必先看公告)
############################################################
好多兄弟们都说nagios配置麻烦,都来问过我如何管理,为了提高解答效率,所以这里统一总结下,供大家参考。呵呵。
这是 以前的一个例子,抛砖引玉下,你可以拓展做成菜单式等更详细的配置,如果你足够努力,可以做到一键 部署几百
台服务器的服务监控,是没有问题的(包括host.cfg,service.cfg等),如果配置支持目录就更简单了。。欢迎随时交流。
1.建立 机器名和IP对应列表
cat >host.list <<EOFoldboy
oldboyVM-001 192.168.1.1
oldboyVM-002 192.168.1.2
oldboyVM-003 192.168.1.3
oldboyVM-004 192.168.1.4
EOFoldboy
#提示:上面列表可以手工编辑或者脚本批量去取
2.批量生成 nagios host配置文件
rm -f new.host
exec <host.list
while read line
do
echo 'define host {' >>new.host
echo ' use linux-server' >>new.host
echo " host_name `echo $line|awk '{print $1}'`" >>new.host
echo " alias `echo $line|awk '{print $1}'` " >>new.host
echo " address `echo $line|awk '{print $2}'` " >>new.host
echo "}" >>new.host
done
3.最终host内容
$ cat new.host
define host {
use linux-server
host_name oldboyVM-001
alias oldboyVM-001
address 192.168.1.1
}
define host {
use linux-server
host_name oldboyVM-002
alias oldboyVM-002
address 192.168.1.2
}
define host {
use linux-server
host_name oldboyVM-003
alias oldboyVM-003
address 192.168.1.3
}
define host {
use linux-server
host_name oldboyVM-004
alias oldboyVM-004
address 192.168.1.4
}