建站服务器
nagios监控系统
1:ngios工作原理
1.Nagios的功能是监控服务和主机,但是他自身并不包括这部分功能,所有的监控、检测功能都是通过各种插件来完成的。
启动Nagios后,它会周期性的自动调用插件去检测服务器状态,同时Nagios会维持一个队列,所有插件返回来的状态信息都进入队列,Nagios每次都从队首开始读取信息,并进行处理后,把状态结果通过web显示出来。
Nagios提供了许多插件,利用这些插件可以方便的监控很多服务状态。安装完成后,在nagios主目录下的/libexec里放有nagios自带的可以使用的所有插件,如,check_disk是检查磁盘空间的插件,check_load是检查CPU负载的,等等。每一个插件可以通过运行./check_xxx –h 来查看其使用方法和功能。
2.Nagios可以识别4种状态返回信息,即 0(OK)表示状态正常/绿色、1(WARNING)表示出现警告/×××、2(CRITICAL)表示出现非常严重的错误/红色、3(UNKNOWN)表示未知错误/深×××。Nagios根据插件返回来的值,来判断监控对象的状态,并通过web显示出来,以供管理员及时发现故障。
四、nagios监控一个服务或主机的途径
nagios本身并没有监控的功能,所有的监控是由插件完成的,插件将监控的结果返回给nagios,nagios分析这些结果以web的方式展现给我们,同时提供相应的报警功能(这个报警的功能也是由相应的插件完成的)。
根据上图可以看出有这么几大类,这些都是nagios所要调用的插件类型
1.snmp类
【可以监控本地/远程linux/unix主机和远程windows服务器、交换机、打印机】
2.nrpe类
【主要监控本地主机和远程主机的服务的状态,切记是针对于服务】
3.nsca类
【nsca主要是实现被动监控的】
4.nagios-plugins类
【nagios-plugins是nagios官方提供的一套插件程序,nagios监控主机的功能其实都是通过执行插件程序来实现的。】
所有的这些插件是一些实现特定功能的可执行程序,默认安装的路径是/
实验过程:
一、构建nagios监控系统
1.关闭防火墙
#service iptables stop
#chkconfig iptables off
2. 创建nagios用户和组
[root@centos1 ~]# useradd -s /sbin/nologin nagios
[root@centos1 ~]# mkdir /usr/local/nagios
[root@centos1 ~]# chown -R nagios:nagios /usr/local/nagios
[root@centos1 ~]#
3.安装依赖包
[root@centos1 ~]# yum -y install php httpd mysql-devel
4.编译安装nagios
[root@centos1 nagios-4.0.1]# tar zxf /mnt/nagios-4.0.1.tar.gz -C /usr/src
[root@centos1 nagios-4.0.1]# cd /usr/src/nagios-4.0.1/
[root@centos1 nagios-4.0.1]# ./configure --prefix=/usr/local/nagios
[root@centos1 nagios-4.0.1]# make all//编译
[root@centos1 nagios-4.0.1]# make install//安装nagios的主程序的cgi和html
[root@centos1 nagios-4.0.1]# make install-init//生成服务脚本/etc/rc.d/init.d下
[root@centos1 nagios-4.0.1]# make install-commandmode//给外部程序访问nagios分配权限
[root@centos1 nagios-4.0.1]# make install-config//生成nagios配置文件的样例,安装路径为/usr/local/nagios/etc目录下
[root@centos1 nagios-4.0.1]# make install-webconf//生成访问web接口文件,自动修改httpd.conf文件,以让nagios的web监控页面必须经过授权才能访问
[root@centos1 nagios-4.0.1]# chkconfig --add nagios
[root@centos1 nagios-4.0.1]# chkconfig --level 35 nagios on
[root@centos1 nagios-4.0.1]#
5.验证安装是否成功要查看/usr/local/nagiso目录是否如下:
[root@centos1 nagios-4.0.1]# ls /usr/local/nagios
bin etc libexec sbin share var
6.安装nagios插件
①安装nagions插件
[root@centos1 nagios-plugins-1.5]# tar zxvf /mnt/nagios-plugins-1.5.tar.gz -C /usr/src
[root@centos1 nagios-plugins-1.5]# cd /usr/src/nagios-plugins-1.5/
make[1]: Leaving directory `/usr/src/nagios-plugins-1.5\'
[root@centos1 nagios-plugins-1.5]# ./configure --prefix=/usr/local/ngios
[root@centos1 nagios-plugins-1.5]# make&&make install
如要获取远程主机的本地资源或属性,如cpu利用率、磁盘资源等,需要借用外部构建NRPE来完成
②监控端和被监控端之间使用ssl安全同道。需要首先安装openssl-devel
[root@centos1 nagios-plugins-1.5]# yum -y install openssl-devel
#tar zxvf /mnt/nrpe-2.15.tar.gz -C /usr/src
#cd /usr/src/nrpe-2.15
#./configure
#make all
#make install-plugin //将check_nrpe插件安装到/usr/local/nagios/libexec目录下
③为了安全起见,一般情况下要让nagios的web监控页面必须经过授权才能访问。这需要增加验证配置,之前在安装nagios时安装了install-webconfig所以就不用手工修改httpd.conf文件了,只需要创建用于访问nagios的web页面的验证账户即可
[root@centos1 nrpe-2.15]# /usr/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadm
④验证,在客户机上打开浏览器
二、配置nagios监控系统
1.配置文件介绍
[root@centos1 etc]# cd /usr/local/nagios/etc
cgi.cfg //控制cgi访问的配置文件
nagios.cfg //nagios主配置文件
resource.cfg //变量定义文件,又称为资源文件,在这些文件只能给的定义的变量。在其他配置文件中可以被使用,如$USER1$=/usr/local/nagios/libexec
objects //objects是一个目录,在此目录下又很多配置文件模版,用于定义nagios对象
objects/commands.cfg //定义命令配置文件,其中定义的命令可以被其它配置文件引用
objects/contacts.cfg //定义联系人和联系人组的配置文件
objects/localhost.cfg //定义监控问地主及的配置文件
objects/printer.cfg //定义监控打印机的一个配置文件模版。默认没有启用此文件
objects/switch.cfg //定义监控路由器的一个配置文件,默认没有启用
objects/templates.cfg //定义主机和服务的一个模版配置文件,可以在其他配置文件中引用
objects/timeperiods.cfg //定义nagios监控时间段的配置文件
objects/windows.cfg //定义监控windows主机的一个配置文件模版,默认没有启动此文件
2.配置文件之间的关联
四点:
3修改配置文件
define service{
host_name 192.168.1.2
service_description check-space
check_command check_nrpe!check_disk_space_free
max_check_attempts 3
normal_check_interval 2
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
contact_groups yunwei
notification_options w,u,c,r
}
define service{
host_name 192.168.1.2
service_description check-http
check_command check_nrpe!check_http
max_check_attempts 3
normal_check_interval 2
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
contact_groups yunwei
}
define service{
host_name 192.168.1.2
service_description check-user
check_command check_nrpe!check_user
max_check_attempts 3
normal_check_interval 2
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
contact_groups yunwei
}
use_authentication=0
本文标题:nagios监控服务
标题网址:http://cdkjz.cn/article/cphgip.html