上篇博文学习了cacti优秀的检测与图形分析功能,这次来着重介绍下nagios这款监控软件的安装配置方面

在使用nagios之前先来介绍下它的原理,nagios能监控服务和主机,但是它本身并不能实现这个功能,这个功能是由插件来完成的,nagios定义了4种监控状态代码为OK代表正常,代码为WARNING代表警报,代码为CRITICAL代表为严重错误,代码为UNKNOWN代表未知错误

实现监控服务主机需要的软件

nagios,nagios-plugins,这两个个包都可以在nagios 的官方网站下载到具体怎么下载就不用说了

实验的效果是通过软件来远程监控主机的服务状态 这里我定义一台机器,安装httpd服务,让nagios来监控服务的状态

实验拓扑图如下

image

在监控机要安装nagios由于nagios和cacti已经集成到这个系统就不需要再安装nagios了,要实现通过插件监控远程机服务状态运行情况,

实验步骤

1 在被监控机中安装所需服务(apache)

2 定义监控内容

1)定义监控时间

vi /usr/local/nagios/etc/timeperiods.cfg

image

这里系统都给我们定义好了接下来设置监控所用的命令

vi /usr/local/nagios/etc/checkcommands.cfg

image

看到有一条是check-host-alive的定义命令 我们准备用这个命令来做出实验效果,检查apache这个机器是否还活着

那么怎么定义监控谁呢 在hosts.cfg中定义要监控的机器和监控用到的命令

image

上述意思是监控主机的名字和别名 监控主机的地址 监控命令 监控选项 d为down状态发送通知 u为unreachable状态发送通知r为recovery恢复通知 间隔时间 重试次数 联系组  监控时间…

check_command 要根据checkcommand里的命令来写不可写错,contact_groups要从contactgroups.cfg里定义的组来写不可写错 否则nagios会启动不起来报错

 

定义了监控谁之后就要做监控之后发生情况要通知谁啦在文件夹目录下有contacts.cfg文件默认定义了监控事件的通知,稍微修改或者不修改都可以的

image

这里默认是邮件发向localhost的root

重启nagios服务  /etc/init.d/nagios restart

image

这时就可以看到www.test.com这台主机 也就是192.168.1.4这台主机的监控信息了

这时我把这台主机的网络连接断掉 两分钟后查看下 如下图

image

显示主机已经down掉,这时我们再重新连接网络

image

可以看到主机已经恢复

nagios不仅可以监控主机状态还可以监控远程主机服务状态

vi /usr/local/nagios/etc/services.cfg

image

在这里通知选项里多了个c 这个c是critical 严重错误的意思 重启nagios后等两分钟

我把被监控机apache服务关闭之后在看

image

apache的状态变成了critical 严重错误状态

启动apache之后处于OK状态了

image

以上这种监控只能监控远程主机的连通性和服务状态 如果我需要监控每一台远程机器的内部信息就需要另外一种方法了