您的位置:首页 > 移动开发 > IOS开发

【转载】nagios_as5_install监控系统的搭建

2012-07-19 09:20 447 查看
nagios_as5_install监控系统的搭建:

一:nagios简介:
Nagios是一款用于系统和网络监控的应用程序。它可以在你设定的条件下对主机和服务进行监控,在状态变差和变好的时候给出告警信息。

Nagios最初被设计为在linux系统之上运行,然而它同样可以在类Unix的系统之上运行。

Nagios更进一步的特征包括:

1.监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);

2.监控主机资源(处理器负荷、磁盘利用率等);
3.简单地插件设计使得用户可以方便地扩展自己服务的检测法;
4.并行服务检查机制;

5.具备定义网络分层结构的能力,用"parent"主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;

6.当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式);

7.具备定义事件句柄功能,它可以在主机或服务的事件发生时获取更多问题定位;
8.自动的日志回滚;

9.可以支持并实现对主机的冗余监控;

10.可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;

Nagios所需要的运行条件是机器必须可以运行Linux(或是Unix变种)并且有C语言编译器。你必须正确地配置TCP/IP协议栈以使大多数的服务检测可以通过网络得以进行。

你需要但并非必须正确地配置Nagios里的CGIs程序,而一旦你要使用CGI程序时,你必须要安装以下这些软件...
二:简单快速安装nagios
2.1 准备软件包
在做安装之前确认要对该机器拥有root权限。

确认你安装好的linux系统上已经安装如下软件包再继续。

Apache

GCC编译器

GD库与开发库

可以用yum命令来安装这些软件包,键入命令:

yum –y install httpd gcc glibc glibc-common gd gd-devel

2.2

操作过程

2.2.1

建立nagios账号

/usr/sbin/useradd nagios && passwd nagios

创建一个用户组名为nagcmd用于从Web接口执行外部命令。将nagios用户和apache用户都加到这个组中。

/usr/sbin/groupadd nagcmd

/usr/sbin/usermod -G nagcmd nagios

/usr/sbin/usermod -G nagcmd apache
2.2.2

下载nagios和插件程序包

cd /usr/local/src

wget http://nchc.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.6.tar.gz

wget http://nchc.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz

2.2.3

编译与安装nagios

cd /usr/local/src

tar zxvf nagios-3.0.6.tar.gz

cd nagios-3.0.6

./configure --with-command-group=nagcmd --prefix=/usr/local/nagios

make all

make install

make install-init

make install-config

make install-commandmode

验证程序是否被正确安装。切换目录到安装路径(这里是/usr/local/nagios),

看是否存在 etc、bin、 sbin、 share、 var这五个目录,如果存在则可以表明程序被正确的安装到系统了。

后表是五个目录功能的简要说明:
bin Nagios执行程序所在目录,nagios文件即为主程序
etc Nagios配置文件位置,初始安装完后,只有几个*.cfg-sample文件,3与2区别 对象配置文件都在etc/objects目录下

sbin Nagios Cgi文件所在目录,也就是执行外部命令所需文件所在的目录

Share Nagios网页文件所在的目录

Var Nagios日志文件、spid 等文件所在的目录

var/archives Empty directory for the archived logs

var/rw Empty directory for the external command file
2.2.4

编译并安装nagios插件 nagios-plugins

cd /usr/local/src

tar zxvf nagios-plugins-1.4.13.tar.gz

cd nagios-plugins-1.4.13

./configure --with-nagios-user=nagios --with-nagios-group=nagios

--perfix=/usr/local/nagios

make && make install

验证:

ls /usr/local/nagios/libexec

会显示安装的插件文件,即所有的插件都安装在libexec这个目录下

2.2.5

配置WEB接口

方法一:直接在安装nagios时 make install-webconf

创建一个nagiosadmin的用户用于Nagios的WEB接口登录。记下你所设置的登录口令,一会儿你会用到它。

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

重启Apache服务以使设置生效。

service httpd restart
2.2.6

启动nagios

把Nagios加入到服务列表中以使之在系统启动时自动启动

chkconfig --add nagios

chkconfig nagios on

验证Nagios的样例配置文件

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

如果没有报错,可以启动Nagios服务

service nagios start
三:监控linux和windows主机
3.1 远程linux客户机的配置:

#useradd nagios

#passwd nagios

#tar -zxvf nagios-plugins-***.tar.gz

#cd nagios-plugins-***

#./configure

#make

#make install

#chown nagios.nagios /usr/local/nagios

#chown -R nagios.nagios /usr/local/nagios/libexec
#tar -zxvf nrpe-2.12.tar.gz

#cd nrpe-2.12

#./configure

#make all

#make install-plugin

#make install-daemon

#make install-daemon-config

#/usr/local/nagios/libexec/check_nrpe -H localhost

#/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
3.2监控机linux服务端的配置:
=================================

由于nrpe外构组件,所以必须在commands.cfg中定义(我这里的nagios版本是3.0.6和2。x的版本有些不一样)

[root@localhost etc]# vi /usr/local/nagios/etc/objects/commands.cfg

最下面添加

#check nrpe

define command{

command_name check_nrpe

command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$

}

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

[root@localhost etc]# vi /usr/local/nagios/etc/nagios.cfg

中间添加

cfg_file=/usr/local/nagios/etc/objects/nagios-client-01.cfg

最后面的 nagios-client-01.cfg你们可以自己改,或者Linux1.cfg也可以!

=================================================
新建nagios-client-01.cfg:
[root@dns objects]# vi /usr/local/nagios/etc/objects/nagios-client-01.cfg
define host{

use linux-server

host_name nagios-client-01

alias nagios-client-01

address 172.21.1.108

}

define service{

use generic-service

host_name nagios-client-01

service_description HTTP

check_command check_http

}

define service{

use generic-service

host_name nagios-client-01

service_description FTP

check_command check_ftp

}

define service{

use generic-service

host_name nagios-client-01

service_description SSH

check_command check_ssh

}

define service{

use generic-service

host_name nagios-client-01

service_description SMTP

check_command check_smtp

}

define service{

use generic-service

host_name nagios-client-01

service_description POP3

check_command check_pop

}
define service{

use generic-service

host_name nagios-client-01

service_description check-swap

check_command check_nrpe!check_swap

}

define service{

use generic-service

host_name nagios-client-01

service_description check-load

check_command check_nrpe!check_load

}

define service{

use generic-service

host_name nagios-client-01

service_description check-disk

check_command check_nrpe!check_hda1

}

define service{

use generic-service

host_name nagios-client-01

service_description zombie_procs

check_command check_nrpe!check_zombie_procs

}

define service{

use generic-service

host_name nagios-client-01

service_description check-users

check_command check_nrpe!check_users

}

define service{

use generic-service

host_name nagios-client-01

service_description total_procs

check_command check_nrpe!check_total_procs

}
保存后,退出即可!
我们来运行

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

检测下是不是都正确!正确的话,那么我们重新启动nagios

那么在web页面里面就会出现!!
同理,windows的也是一样的道理。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: