zend-patterns / zendservernagiosplugin
Zend Server Nagios 插件
Requires
- php: >=5.3.3
- zenddevops/webapi: 1.3.*@dev
- zendframework/zend-db: =2.2.5
This package is not auto-updated.
Last update: 2024-09-28 13:46:03 UTC
README
简介
Nagios® Core™ 是一款开源的系统和网络监控应用程序。它可以监控您指定的主机和服务,在出现问题时提醒您。
Nagios Core 的许多功能包括
- 网络服务的监控(SMTP、POP3、HTTP、NNTP、PING 等)
- 主机资源的监控(处理器负载、磁盘使用等)
- 简单的插件设计,使用户能够轻松开发自己的服务检查
- 并行化服务检查
- 使用“父”主机定义网络主机层次结构,以检测和区分已关闭和不可达的主机
- 在服务或主机问题发生和解决时进行联系通知(通过电子邮件、传呼或用户定义的方法)
- 在服务或主机事件期间运行事件处理程序以主动解决问题
- 自动日志文件轮换
- 支持实现冗余监控主机
- 可选网络界面,用于查看当前网络状态、通知和问题历史、日志文件等
这个 PHP ZF2 应用程序可以作为 Nagios 插件来监控主要的 Zend Server 指标。该插件基于一个命令行工具,它返回给定探测的严重级别。它还会生成一条将被记录到 Nagios 的消息。例如,探测 "clusterstatus" 如果集群中 33% 的节点已关闭,则返回警告。
命令行操作和探测定义
在 /bin 目录中提供了一个用于 Windows 和 Linux 的脚本。要调用 Nagios 插件命令,只需使用:php /path_to_plugin/index.php nagiospluging [参数]
clusterstatus(无参数):返回集群的状态。严重程度取决于活动或关闭的节点数量。
audittrail [--delay=] [--limit=]:返回最后审计跟踪的严重程度。--delay:探测将寻找审计跟踪的时间段(以秒为单位)。应与 Nagios 的 check_interval 值同步。--limit:将要检查的最大项目数。严重程度基于收集到的最关键项目的严重程度。
notifications(无参数):此探测检查集群当前发送的通知。严重程度基于最关键通知的严重程度。
license(无参数):此探测检查许可证的有效性。严重程度基于剩余的许可证时间。
events [--delay=] [--limit=]:返回最后监控事件的严重程度。--delay:探测将寻找事件的时间段(以秒为单位)。应与 Nagios 的 check_interval 值同步。--limit:将要检查的最大项目数。严重程度基于收集到的最关键事件的严重程度。
设置 Nagios 阈值
所有探测都管理阈值,以定义严重级别。这些阈值在 /config/zendservernagiosplugin.config.php 文件中设置。设置阈值的方式非常简单:=> Nagios 严重级别(NAGIOS_CRITICAL、NAGIOS_WARNING、NAGIOS_NOTICE 或 NAGIOS_OK)
安装
使用 Git 子模块
从 Github 克隆代码
git clone git://github.com/zendtech/ZendServerNagiosPlugin.git --recursive
使用 Composer 安装依赖项
composer install
如何在 Nagios 中使用它?
在您的 /usr/local/nagios3/commands.cfg 文件中定义命令
define command {
command_name : zend-server-<probe>
command_line : php /path_to_nagios_pluigin/index.php nagiosplugin <probe> [parameters]
}
在主机的配置文件中定义服务(例如:/usr/local/nagios3/conf.d/local-xxx.cfg)
define service {
use generic-service
host_name localhost
service_description Zend_Server_Error
check_command zend-server-<probe>
}
然后重启 Nagios
/etc/init.d/nagios3 restart