1、nagios特点:监控服务器状态; 报警功能强大; 绘图功能较弱需要借助其他插件实现或集成其他监控软件。
2、nagios的五种状态:OK WARNNING CRITICAL UNKNOWN PENDING
OK : 正常
WARNNING: 警告 (一般超过阈值)
CRITICAL:严重警告(主机或服务宕掉或超过规定阈值)
UNKNOWN:未知
PENDING: 待定(一般添加新服务初始状态)
nagios不仅监控和显示服务或主机的状态,还会显示相关信息,但不能绘图来显示趋势等
4、架构:
nagios服务器端主要的组件:nagios 和nagios plugins(需要apache或nginx以及php的支持,如果需要监控mysql则需要安装mysql等)
5、监控方式:
主动监控:被监控服务器提供对外服务,例如:WEB服务等,监控端可通过相应插件直接探测,根据返回信息进行状态判断,此种方式不需要被监控端安装任何插件或做任何特殊配置。
(半)被动监控方式:例如 被监控的硬件资源、温度等信息,监控端不能直接探测,只能通过在被监控端安装相关获取信息的插件来实现,例如:NRPE、snmp等,但由于探测动作是由监控端发起,所以属于半被动监控(以监控端审视),被动监控方式有NSCA等,监控端处于监控状态,监控信息完全由被监控端放主动发送。
NRPE:可监控linux/unix和windows,linux/unix需要安装nrpe和nagios plugins(nrpe依赖plugins)
windows需要安装nsclient+,此软件提供NRPE功能(还有其他,例如check_nt等)
使用方式:被监控端的nrpe默认监控tcp 5666端口,监控端使用插件check_nrpe指令直接远程调用被监控端已有的插件获取相关信息,因此,被监控端需要提前配置好检测信息的相关插件(指令)
snmp:主要用来监控交换机路由器等互连设备
6、安装(mysql相关组件选择性安装)
[root@localhost ~]# yum install -y httpd php php-devel php-mysql mysql-devel mysql-server
如果要使用check_snmp等基于snmp的插件,需要在编译安装plugins之前安装snmp相关组件
[root@localhost ~]# yum install -y net-snmp net-snmp-devel
如果编译之前没有安装,可以重新编译,但不要安装(执行make install) ,make 之后,在源码根目录下会有plugins目录,此目录下会有check_snmp等相关插件,直接拷贝到/usr/local/nagios/libexec即可(注意权限等)
创建相关用户和组:
[root@localhost ~]# groupadd nagcmd
[root@localhost ~]# useradd -G nagcmd nagios
[root@localhost ~]# passwd nagios
[root@localhost ~]# usermod -a -G nagcmd apache #将运行apache的用户添加到nagcmd组中
编译安装nagios(nagios-4.0.8 nagios-plugins-2.1.1 )
[root@localhost ~]# ./configure --prefix=/usr/local/nagios --with-command-group=nagcmd --enable-event-broker
[root@localhost ~]#
[root@localhost ~]# make all
[root@localhost ~]# make install
[root@localhost ~]# make install-init
[root@localhost ~]# make install-commandmode
[root@localhost ~]# make install-config
[root@localhost ~]#
[root@localhost ~]# make install-webconf #生成nagios网页相关配置文件 /etc/httpd/conf.d/nagios.conf
[root@localhost ~]#
创建访问nagios的用户名和密码:
[root@localhost ~]# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
[root@localhost ~]#
注:验证文件和用户名最好使用此默认,如果修改了验证文件请在 /etc/httpd/conf.d/nagios.conf中修改相关项,如果想使用其他账户请修改 /usr/local/nagios/cgi.cfg相关选项, 如下:
[root@localhost etc]# cat cgi.cfg | grep nagiosadmin
authorized_for_system_information=nagiosadmin
authorized_for_configuration_information=nagiosadmin
authorized_for_system_commands=nagiosadmin
authorized_for_all_services=nagiosadmin
authorized_for_all_hosts=nagiosadmin
authorized_for_all_service_commands=nagiosadmin
authorized_for_all_host_commands=nagiosadmin
[root@localhost etc]#
编译安装nagios-plugins
[root@localhost ~]# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
[root@localhost ~]# make
[root@localhost ~]# make install
编译完成之后,/usr/local/nagios/libexec下会有各种插件
7、启动apache和nagios:
service httpd start
service nagios start
8、访问:
http://IP/nagios
转载于:https://blog.51cto.com/lingyi/1766070