Chinaunix首页 | 论坛 | 博客
  • 博客访问: 312272
  • 博文数量: 32
  • 博客积分: 215
  • 博客等级: 入伍新兵
  • 技术积分: 936
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-25 11:21
个人简介

一个靠社会发展推动我不懈努力的人!

文章分类

全部博文(32)

文章存档

2017年(3)

2016年(4)

2015年(8)

2013年(10)

2012年(7)

分类: 系统运维

2013-05-21 14:20:46

配置nagios时,如果有新的服务器上架,我们需要在服务端的host.cfg和service.cfg里面添加监控机和监控服务项。
如果此时有上千台服务器,把监控项加好后,host.cfg和service.cfg文件会越来越大,修改内容的时候也不方便。
我们考虑一下,是否可以把每台需要监控机器的host.cfg和 service.cfg 都写入到每个ip自己独立的文件?

 步骤如下:(Nagios具体安装步骤省略,google一下一大堆,我的Nagios version )
========================================================================================================
一、修改nagios.cfg配置文件

[root@YooMa-Nagios ~]# cd /usr/local/nagios/etc/ #如果你的环境不同可能路径不一样
[root@YooMa-Nagios etc]# ll
total 88
-rw-rw-r-- 1 nagios nagios 11373  4月  7 11:10 cgi.cfg
drwxr-xr-x 2 nagios nagios  4096  5月 21 11:32 hosts
-rw-r--r-- 1 nagios nagios    21  4月  7 11:07 htpasswd.users
-rw-rw-r-- 1 nagios nagios 43771  5月 21 11:33 nagios.cfg
drwxrwxr-x 2 nagios nagios  4096  5月 21 10:31 objects
-rw-rw---- 1 nagios nagios  1340  4月  7 11:02 resource.cfg

[root@YooMa-Nagios etc]# vi nagios.cfg   #←查找 cfg_dir,找到如下所示的内容:

#cfg_dir=/usr/local/nagios/etc/servers
#cfg_dir=/usr/local/nagios/etc/printers
#cfg_dir=/usr/local/nagios/etc/switches
#cfg_dir=/usr/local/nagios/etc/routers


接着在下面添加如下一行内容:

cfg_dir=/usr/local/nagios/etc/hosts

保存,退出。

====================================================================================================

二、创建 hosts 文件夹 并在hosts文件夹中创建组配置文件group.cfg(我这里只分配了一个组)

[root@YooMa-Nagios etc]# pwd
/usr/local/nagios/etc
[root@YooMa-Nagios etc]# mkdir hosts
[root@YooMa-Nagios etc]# cd hosts
[root@YooMa-Nagios hosts]# vi group.cfg    #←加入如下内容hostgroup_name自己定义
#-----------------------------------------------------------------------------------------------------------------------------------------start
define hostgroup{
        hostgroup_name    linux-server
        alias               Linux Server
        members             Nginx_Web1    #注意这里可以写随便某一台机器的主机名但这个主机一定是真是存在并且在你的hosts文件夹下有这台机器的配置文件才行
        }
#-----------------------------------------------------------------------------------------------------------------------------------------end

OK下面我们就可以创建N多机器的配置文件了,我这里随便举一个配置文件例子。添加其他机器只需要复制这个例子然后更改一下IP和主机名即可,依此类推

[root@YooMa-Nagios hosts]# vi 10.35.1.69.cfg   #←修改service.cfg文件为模板文件
#________________________________________________________________________________start
define host{
        use                     linux-server
        host_name               Nginx_Web1
        alias                   Nginx_web1
        address                 10.35.1.69
        }
define service{
        use                             local-service         ; Name of service template to use
        host_name                       Nginx_Web1
        service_description             PING
        check_command                   check_ping!100.0,20%!500.0,60%
        }
define service{
        use                             local-service         ; Name of service template to use
        host_name                       Nginx_Web1
        service_description             Root Partition
        check_command                   check_local_disk!20%!10%!/
        }
define service{
        use                             local-service         ; Name of service template to use
        host_name                       Nginx_Web1
        service_description             Current Users
        check_command                   check_local_users!20!50
        }
define service{
        use                             local-service         ; Name of service template to use
        host_name                       Nginx_Web1
        service_description             Total Processes
        check_command                   check_local_procs!250!400!RSZDT
        }
define service{
        use                             local-service         ; Name of service template to use
        host_name                       Nginx_Web1
        service_description             Current Load
        check_command                   check_local_load!5.0,4.0,3.0!10.0,6.0,4.0
        }
define service{
        use                             local-service         ; Name of service template to use
        host_name                       Nginx_Web1
        service_description             Swap Usage
        check_command                   check_local_swap!20!10
        }
define service{
        use                             local-service         ; Name of service template to use
        host_name                       Nginx_Web1
        service_description             HTTP
        check_command                   check_http
        notifications_enabled           0
        }
#________________________________________________________________________________end


这是我的hosts文件夹下的内容: (你也可以把ip名称改为你想看到的主机名)
[root@YooMa-Nagios hosts]# ls
10.35.1.233.cfg  10.35.1.29.cfg  10.35.1.66.cfg  10.35.1.69.cfg  10.35.1.72.cfg  10.35.1.78.cfg     
10.35.1.27.cfg   10.35.1.30.cfg  10.35.1.67.cfg  10.35.1.70.cfg  10.35.1.73.cfg  group.cfg
10.35.1.28.cfg   10.35.1.66.bak  10.35.1.68.cfg  10.35.1.71.cfg  10.35.1.74.cfg  
====================================================================================================

[root@YooMa-Nagios hosts]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Total Warnings: 0
Total Errors:   0
[root@YooMa-Nagios hosts]# /usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg

我们在图形界面查看一下:效果如下   注释:当然你要有更多的监控项和监控规则,都可以修改每一个ip配置文件即可。


本文到此结束,如果有问题请多指教!多谢。
 
阅读(6446) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

CU博客助理2013-06-09 15:33:35

嘉宾点评: 这是一篇不想多评的文章,因为不知道该说些什么了,就一个字,好! 很值得借鉴的!(感谢您参与“原创博文评选”获奖结果即将公布)