标签归档:nagios

Nagios基本平台搭建

      Nagios的功能是监控服务和主机,但是他自身并不包括这部分功能的代码,所有的监控、检测功能都是有插件来完成的。再说报警功能,如果监控系统发现问题不能报警那就没有意义了,所以报警也是Nagios很重要的功能之一。但是,同样的,nagios自身也没有报警部分的代码,甚至没有插件,而是交给用户或者其他相关开源项目组去完成。类似这样细致的工作,被Nagios的开发人员称为dirty work(脏活)。其实脏活不脏,只是太细致了,对于nagios——一个负责监控工作的老板来说,细致的工作必然是交给他的员工去搞定啦。

      这里只小分享下关于Nagios安装,只是指基本平台,也就是Nagios软件包的安装。它是监控体系的框架,也是所有监控的基础。后续系列文章会再更多的分享

     在Nagios官方的文档,会发现Nagios基本上没有什么依赖包,只要求系统是linux或者其他nagios支持的系统。不过如果你没有安装Apache(http web服务),那么就没办法直观的界面来了解信息,所以apache可以算是一个前提条件。关于apache的安装,网上相关文档多得是,找Google老师~

      官方网站下载最新的nagios软件包,这里使用的是nagios-3.0.4.tar.gz版本下实现的 。建议先阅读官方文档相关帮助信息。

      1、 创建Nagios用户

adduser nagios
mkdir /usr/local/nagios
chown nagios.nagios /usr/local/nagios

     2、 建立Nagios组

grep "^User" /etc/httpd/conf/httpd.conf
/usr/sbin/usermod -G nagcmd apache #apache的用户名
/usr/sbin/usermod -G nagcmd nagios

     3、 解压

tar xzf nagios-3.0.4.tar.gz

     4、 编译

./configure --prefix=prefix --with-nagios-user=someuser  \
--with-nagios-group=somegroup --with-command-group=cmdgroup
#变量prefix 为安装目录,例如/usr/local/nagios
#变量someuser 为nagios的用户,例如nagios
#变量somegruop 为nagios属于的组,例如nagios
#变量cmdgroup 为nagios命令行属组,例如nagcmd

    5、 安装

make all
make install
make install-config
make install-init

     6、 检查

ls /usr/local/nagios/
bin  etc  libexec  sbin  share  var
bin  etc  sbin  share  var
#看到这5个目录就ok了

    7、 生成http用户验证文件,用户名为Nagios

/usr/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagios

    8、 将Nagios的信息加到apache中,打开/etc/apache2/apache2.conf文件,在文件最后添加如下代码:

ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user
Alias /nagios /usr/local/nagios/share
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthType Basic
AuthUserFile /usr/local/nagios/etc/htpasswd.users
Require valid-user
;

      9、 重启apache服务

/etc/init.d/apache2 restart

      10、 测试Nagios基本平台实现:http://localhost/nagios/

Nagios插件安装

      刚刚在Nagios基本平台搭建一文中也提到,对于Nagios的监测主机与服务功能其实是有其附带的插件来实现的,而Nagios系统本身只是一个空壳而已.因此,在安装了nagios平台之后的第一件事情就是将插件安装上去。这里使用的是插件源码包是从Nagios主页上下载了最新的官方插件,用的版本是nagios-plugins-1.4.13.tar.gz

1、解压

tar zxvf nagios-plugins-1.4.13.tar.gz
cd nagios-plugins-1.4.13
       

2、编译安装:

./configure --prefix=/usr/local/nagios
                –with-cgiurl=/usr/local/nagios/cgi-bin
                –enable-ssl
                –enable-command-args
    make
    make install

3、相关配置文件:
        ## 根据具体使用情况,将配置文件的结构做以下规划,为了方便将来的维护和管理:

        ## 配置文件结构如下:
        etc/        |– cgi.cfg
                        |– commands.cfg
                        |– nagios.cfg
                        |– resource.cfg
        (以上为nagios系统主配置文件)

        etc/servers        |– contacts.cfg                管理人员和管理人员组的的默认初始化设定文件
                                |– hostgroups.cfg                服务器组的默认初始化设定文件
                                |– hosts.cfg                        服务器的默认初始化设定文件
                                |– services.cfg                监控服务的默认初始化设定文件
                                |– servicegroups.cfg        监控服务组的默认初始化设定文件
                                |– timeperiod.cfg                时间周期默认初始化设定文件
        (以上为监控服务相关的配置文件,都是由原localhost.cfg文件中拆分出来的,这样方面理解和管理)

        etc/servers/test.com                |– 172.17.0.220.cfg
                                                        |– 172.17.0.255.cfg
        (在etc/servers/下建立监控的域名目录,区分各个被监控的域名,每台监控的主机一个单独的配置文件,包含hosts和services的内容)

        下班啦。。今日分享到此,待续ing。。。。。