监控平台 · 2015年1月9日 0

Nagios主程序安装

Nagios的所有软件包可以从其官方网站获得http://www.nagios.org/download/。这里无论是基本软件包还是插件我都使用的最新版本。因为我使用的操作系统是Centos6.5,原则上对于较新的操作系统版本通常我们都选择配合最新版本的第三方软件以避免兼容性问题。
首先在监测主机上安装Nagios的基本软件包,在安装Nagios之前首先需要保证系统中有下面这些软件包:Apache,gcc,gd,gd-devel,glibc,glibc-devel, php。可以用rpm –qa | grep的方式去逐一检查。
如果确认上面这些包都安装之后需要先建立Nagios的用户和nagcmd组:

# useradd -m nagios [ Enter ]
# passwd nagios [ Enter ]
并将nagios以及apache用户加入到nagcmd组中
# groupadd nagcmd [ Enter ]
# usermod -G nagcmd nagios [ Enter ]
# usermod -G nagcmd apache [ Enter ]
完成之后将下载的nagios压缩包拷贝到/usr/local目录中,并且执行下面的步骤进行编译和安装:

# tar -zxf nagios-4.0.8.tar.gz [ Enter ]
# cd nagios-4.0.8 [ Enter ]
首先初始化和建立编译的环境

# ./configure –with-command-group=nagcmd [ Enter ]
如果能看到下面的基本配置信息则说明初始的环境已经成功配置完成:

*** Configuration summary for nagios 4.0.8 06-25-2008 ***:

General Options:
————————-
Nagios executable: nagios
Nagios user/group: nagios,nagios
Command user/group: nagios,nagcmd
Embedded Perl: no
Event Broker: yes
Install ${prefix}: /usr/local/nagios
Lock file: ${prefix}/var/nagios.lock
Check result directory: ${prefix}/var/spool/checkresults
Init directory: /etc/rc.d/init.d
Apache conf.d directory: /etc/httpd/conf.d
Mail program: /bin/mail
Host OS: linux-gnu

Web Interface Options:
————————
HTML URL: http://localhost/nagios/
CGI URL: http://localhost/nagios/cgi-bin/
Traceroute (used by WAP): /bin/traceroute

Review the options above for accuracy. If they look okay,
type ‘make all’ to compile the main program and CGIs.
之后按照提示执行命令来进行编译:

# make all [ Enter ]
如果编译过程顺利完成,则需要执行下面的命令:

# make install [ Enter ]
# make install-init [ Enter ]
# make install-config [ Enter ]
# make install-commandmode [ Enter ]
分别用于安装二进制文件、初始化脚本、示例配置文件和设置目录权限。

# ls /usr/local/nagios [ Enter ]
安装完成之后,在/usr/local/nagios目录下如果能够看到这些目录:bin etc sbin share var就表示Naigos安装成功了。

不过在完成之后还不能启动Nagios,因为还有一些操作需要执行。

Nagios的样例配置文件默认安装在/usr/local/nagios/etc目录下,这些样例文件可以配置Nagios使之正常运行,只需要做一个简单的修改。用你擅长的编辑器软件来编辑这个/usr/local/nagios/etc/objects/contacts.cfg配置文件,更改email部分,在nagiosadmin的联系人定义信息中的EMail信息为你的EMail信息以接收报警内容。

# vi /usr/local/nagios/etc/objects/contacts.cfg [ Enter ]
之后执行下面的命令来安装Nagios的WEB配置文件到Apache的conf.d目录下:

# make install-webconf [ Enter ]
在Apache中使用基本认证的方式创建一个nagiosadmin的用户用于Nagios的WEB界面登录。记下你所设置的登录口令。该用户登录口令和账号信息会存储到/usr/local/nagios/etc/passwd.users文件中:

# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin [ Enter ]
在Nagios主程序安装之后会自动将相关apache配置文件放到/etc/http/conf.d目录下,文件名是nagios.conf。文件内容如下:

# cat /etc/httpd/conf.d/nagios.conf [ Enter ]
ScriptAlias /nagios/cgi-bin “/usr/local/nagios/sbin”

<Directory “/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
</Directory>

Alias /nagios “/usr/local/nagios/share”

<Directory “/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
这就意味着只有通过认证用户才可以通过http访问/usr/loca/nagios/share以及/usr/local/nagios/sbin目录下内容。而这个能够通过认证的用户也就是nagiosadmin,之后可以重启apache来应用配置:
# service httpd restart [ Enter ]
# chkconfig –level 345 httpd on [ Enter ]
刚才已经提到Nagios主程序只是一个控制中心,而能够起到服务监测和系统监测等功能的是众多Nagios的插件,没有插件的Nagios系统其实只是一个空壳。因此在安装了Nagios平台之后我们还需要安装插件。
Nagios插件同样是在其官方网站下载,目前版本是2.0.3。我将下载的源码包放到/usr/local目录下,按照下面的步骤进行解压,编译和安装:
# tar -zxf nagios-plugins-2.0.3.tar.gz [ Enter ]
# cd nagios-plugins-2.0.3 [ Enter ]
# ./configure –with-nagios-user=nagios –with-nagios-group=nagios [ Enter ]
# make [ Enter ]
# make install [ Enter ]
然后把Nagios加入到服务列表中以使之在系统启动时自动启动:

# chkconfig –add nagios [ Enter ]
# chkconfig nagios on [ Enter ]
执行下面的命令来验证Nagios的样例配置文件:

# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg [ Enter ]
如果最后的结果类似下面而没有报错,可以启动Nagios服务:

Total Warnings: 0
Total Errors: 0

Things look okay – No serious problems were detected during the pre-flight check
# service nagios start
之后可以在浏览器上访问链接http://ip/nagios,如果能够正常看到页面,证明主程序和插件都安装和配置成功如图

nagios

至此nagios主框架搭建完成。