Nagios是一个流行的电脑系统和网络监控程序,它检测主机和服务,当异常发生和解除时能提醒用户。它是基于GPLv2开发的开源软件,可免费获得及使用。
nagios工作原理nagios的功能是监控服务和主机,但是其自身并不包括这些功能,所有的监控、检测功能都是通过各种插件来完成的。启动nagios后,它会周期性的自动调用插件去检测服务器状态,同时nagios会维持一个队列,所有插件返回的状态信息都进入队列,nagios每次都从队首读取信息,进行处理后,再把状态结果通过web显示出来。这就是被动模式,经常用于监控主机的系统资源,比如系统负载、磁盘使用率、内存使用率、网络状态、系统进程数等等。另一种是主动模式,主要是nagios服务器主动去获取数据,常用于探测URL的监控和服务的状态监控。相比于主动模式中服务器主动去被监控机上轮询获取监控数据的方式,这样做的一个很大优势就是将除去数据处理的其他工作都放在了被监控机上面(包括数据的传输),就避免了被监控机数量大时一次轮询时间过长而导致监控反应延迟,这也是被动模式能承担更大监控量的关键。nagios提供了许多插件,利用这些插件可以方便的监控很多服务状态。安装完成后,在nagios主目录下的/libxec里放有nagios自带的可以使用的所有插件。
nagios主要功能本次项目主要介绍如何部署nagios,如何对nagios进行配置,使其能够对指定的主机进行监控操作
项目环境准备 关闭防火墙及SELinux 系统版本:CentOS 7.4 虚拟机分配 本次项目只对被监控端做简单测试,所以被监控端不需安装nagios插件。角色IP地址所用软件
监控端 172.16.10.34 nagios-4.4.2、nagios-plugins-2.2.1
被监控端 172.16.10.20
被监控端 172.16.10.23
相关资料可从以下信息得到下载:
点击这个 链接关注 Linux公社官方微信,关注后回复数字153674。即可得到网友的分享密码。
如果取消关注Linux公社公众号,即使再次关注,也将无法提供本服务!
链接:https://pan.baidu.com/s/1oAPYYhVP0O1bdSkxSG3dug 密码:获得见上面的方法,地址失效请在下面留言。
------------------------------------------分割线------------------------------------------
部署nagios监控系统因为nagios监控系统的网页需要动态网页支持,所以需要安装httpd和php软件,或者直接在lamp环境下安装,所以实验前要准备好虚拟机环境,对于lamp架构的搭建,在这里就不多赘述。
可以参考:CentOS 7.4下源码编译安装配置LAMP环境详解 https://www.linuxidc.com/Linux/2018-03/151133.htm
安装环境包yum install -y \
-- gcc \
-- glibc \
-- glibc-common \
-- gd \
-- gd-devel \
-- xinetd \
-- openssl-devel
useradd -s /sbin/nologin nagios
创建安装目录,指定属主属组mkdir /usr/local/nagios
chown -R nagios.nagios /usr/local/nagios
tar -zxvf nagios-4.4.2.tar.gz -C /opt
cd /opt/nagios-4.4.2
./configure --prefix=/usr/local/nagios
make all
make install
make install-init
make install-commandmode
make install-config
ls /usr/local/nagios
安装nagios-pluginstar xvzf nagios-plugins-2.2.1.tar.gz -C /opt
cd /opt/nagios-plugins-2.2.1
./configure --prefix=/usr/local/nagios
make && make install
vim /etc/httpd/conf/httpd.conf
User nagios
Group nagios //修改原用户名apache为nagios
<IfModule dir_module>
DirectoryIndex index.html index.php //增加index.php
</IfModule>
AddType application/x-httpd-php .php //插入该句
为了安全起见,一般情况下要让nagios 的web 监控页面必须经过授权才能访问,这需要增加验证配置,即在httpd.conf 文件最后插入如下信息:
vim /etc/httpd/conf/httpd.conf
#setting for nagios
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
AuthType Basic
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthUserFile /usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/nagios/share">
AuthType Basic
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "nagios Access"
AuthUserFile /usr/local/nagios/etc/htpasswd
Require valid-user
</Directory>
htpasswd -c /usr/local/nagios/etc/htpasswd chen
配置nagios配置nagois 一般在目录/usr/local/nagios/etc/下
templates.cfg