资源描述:
《脚本添加nagios监控主机(带分析)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、脚本添加nagios监控主机(带分析) [背景] 公司要监控的主机很多,估计有近1K台,而且还会增加.....所以,如果让我用手工加的话,妈呀!怕怕....... 就想到了用脚本,也看了sery老师写的那个shell的,是交互性的,感觉不实用,就自己写了,也在这里和sery老师PK下喽(哈哈,开玩笑啦!)!(注:脚本的作用就是帮我解决重复的工作,所以嘛.......就把工作交给它了.) [过程] nagios所监控的对象不就是主机,联系用户,命令,服务这四个对象嘛,我们来分析下,联系用户应该算是工作量很
2、小的工作,不需要重复得劳动的,定义命令和服务这两个差不多,都不是很累人的活.....这么说来,就是主机的定义了......分析hosts.cfgdefinehost{host_name bogus-routeralias BogusRouter#1address 192.168.1.254parents server-backbonecheck_mand check-host-alivecheck_interval 5retry_interval 1max_check_attempts 5check_per
3、iod 24x7process_perf_data 0retain_nonstatus_information0contact_groups router-adminsnotification_interval 30notification_period 24x7notification_options d,u,r} 我从参考文档的ExampleDefinition拷过来的...... 在这里,我们能看到host_name,alias,address应该与下一个定义主机不同的,其他的可以一样...哈哈.那就可
4、以借用use这个选项了. 哈哈,那我将我的hosts.cfg分开.... 原内容:definehost{ host_name ax_check_attempts 5 notification_interval 10 notification_period 24x7 notification_options d,u,r} 划分后definehosts.cfgdefinehost{ name inithost #切记这个不是host_name...
5、.. contact_groups sagroup check_mand check-host-alive max_check_attempts 5 notification_interval 10 notification_period 24x7 notification_options d,u,r register 0 #切记这个一定要加不然会报错的....}hosts.cfgdefinehost{ use
6、 inithost host_name e 192.168.1.3 alias KT_TEL_1 address 192.168.1.3}............................ 大家应该看到变的是IP吧....我们只要收集好IP列表,写个这样的脚本应该不成问题吧!addhost.pl#!/usr/bin/perlopen(IP,iplist.txt);open(FH,>>hosts.cfg);
7、e $ip; printFHtalias KT_TEL12下一页....,。_1n; printFHtaddress $ip; printFH}n; }closeFH;closeIP;执行后....[rootstudysoft]#morehosts.cfgdefinehost{use inithosthost_name 192.168.1.2alias KT_TEL_1address 192.168.1.2}definehos
8、t{use inithosthost_name 192.168.1.3alias KT_TEL_1address 192.168.1.3} 哈哈.... 还差一步,就是分组喽!把这个iplist.txt里的IP都划分到一个组里,这是我们需要的. _name KT_TEL_1n; printFHtalias KT_TEL_1n; pr