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.gz4、 编译
./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/

