使用什么 Nagios 插件来监控 MySQL?

使用什么 Nagios 插件来监控 MySQL?

我刚刚尝试过检查mysqld我发现监控交换网,但事实证明它输出的格式是 NRPE 2.12 或 Nagios 3.2.1 无法理解的。

有人可以推荐一个适用于 NRPE 的 Nagios 3 检查插件吗?

答案1

好吧,我尝试了 William Leibzon 的 check_mysqld 插件,效果很好。您确实可以控制比标准 nagios 插件多得多的变量。我刚刚将插件放入 /usr/local/nagios/libexec 并从 cli 运行它,它就可以正常工作。我将其添加到 nagios(实际上是 opsview,但引擎是 nagios)检查中,现在我有了漂亮的图形。所以也许您没有正确设置它。

几件事:从 shell 以用户 nagios 身份运行插件。如果数据库是远程服务器,请验证您使用插件的用户和服务器是否可以查询 mysql 服务器和您从中提取数据的数据库(标准是数据库:mysql)。

我的支票是这样的:

nagios@host:$ cd /usr/local/nagios/libexec
$./check_mysqld.pl -H hostname -u user -a slow_queries -w 44 -c 55 -f
MYSQL 5.0.51a-24+lenny4 OK - slow_queries=0 | slow_queries=0

-u 是数据库服务器上的 mysql 用户。此数据库用户没有密码来查询 mysql 数据库。

答案2

您想检查什么?

我正在使用 Centos nagios 盒子上的插件包附带的 check_mysql 来远程监控 MySQL。此设置不需要 NRPE。

答案3

当 MSQL 不对来自本地主机以外的主机的查询开放,或者无法加速 mysqld 进程以允许配置更改时,非常需要 NRPE。

~

添加通过 NRPE 检查的命令非常简单。对于 Mysql,将以下行添加到您的 nrpe.cfg 文件:

命令 [check_mysql]=sudo /usr/lib/nagios/plugins/check_mysql -u'user' -p'pass'

这是 Nagios 的命令定义:$USER1$/check_nrpe -H $HOSTADDRESS$ -c check_mysql

将这一行添加到您的 /etc/sudoers:nagios ALL=(ALL) NOPASSWD:/usr/lib/nagios/plugins/check_mysql

确保不允许将命令行参数传递给命令:dont_blame_nrpe=0

~

要创建任何其他 NRPE 命令,请将“check_mysql”替换为您要创建的命令的名称,以及 sudo 后的实际命令的路径。sudoers 文件也一样。

  • HTH〜丹。

相关内容