使用 Nagios 监控 MySQL 集群

使用 Nagios 监控 MySQL 集群

我正在尝试弄清楚如何使用 Nagios 监控 MySQL 集群。

我在以下位置找到了以下信息http://blog.unixmaniacs.com/2008/12/mysql-cluster-ndbd-monitoring-with.html,然而我却无处可去。

我究竟该如何安装插件?

答案1

好了,Nagios 101

您的 Nagios 安装在 /usr/local/nagios/ 中的可能性最大

在其下,您会看到很多目录,但插件所在的目录是 libexec。如果您使用“cd”进入该目录,请执行“ls”并查看。这些就是您现在可以使用的所有插件。如果您单独运行大多数插件,它们都会为您提供示例用法。

顺便说一句,如果你会编程,你可以编写自己的脚本来检查你想要的任何东西。脚本的语言并不重要,只要机器可以运行它就行。我用 bash 编写脚本,很多人用 perl,默认的脚本(大部分?)是用 C 编写的。

无论如何,一旦您将插件放入目录,您就必须将其告知 Nagios。转到“/usr/local/nagios/etc/”。如果您最近安装了(即 3.0 或更高版本),您应该有一个“objects”目录。默认情况下,您将在其中有一个“commands.cfg”。编辑它,并检查现有条目。它们都是以下格式

define command{
    command_name    command_name
    command_line    command_line

}

将您的新插件放在底部。

define command{ 
    command_name      my_mysql_check
    command_line      $USER1$/whatever
} 

“$USER1$” 是指向 /usr/local/nagios/libexec 目录的 Nagios 宏。您可以编辑“resources.cfg”以查看还有什么可用内容,甚至可以添加宏。

无论如何,既然我们已经有了命令,我们就必须建立一个服务来利用它。

保存commands.cfg并编辑“services.cfg”。请注意,所有内容的格式如下:

define service{
     host_name server
     service_description whatever
     etc 
     etc
} 

这些设置了实际的服务描述,并且“host_name”将其分配给服务器。查看文档这里创建服务时。红色部分是必需的,其他部分用于优化服务检查的行为方式。

我希望这能有所帮助。如果没有,请回复并告诉我。您还应该知道,Nagios 配置的默认布局很简单,但效率不高。我写了一些关于如何布局的文档,它为我节省了大量时间来寻找我正在寻找的确切定义。根据您的安装,它可能有点过头了。

http://www.standalone-sysadmin.com/blog/2009/07/nagios-config/

祝你好运!

答案2

从基本层面上讲,您需要:

  1. 在您的 Nagios 机器上安装插件(如果是本地检查)或远程主机(如果您使用 NRPE 或类似程序)。确保要运行它的帐户(服务器上默认为“nagios”)可以执行该插件。
  2. 编写一个使用该插件的检查命令,可以在您的 Nagios 主机上,或者如果使用 NRPE 则在远程主机上。
  3. 向该主机的 Nagios 配置中添加一个将调用检查命令的服务。

您链接的文档涵盖了第 2 点和第 3 点。

答案3

这不是对你问题的真正回答。但我建议使用这个插件:

http://labs.consol.de/lang/de/nagios/check_mysql_health/

这很棒。它实际上会使用 perfinfo 监控所有内容(包括 ndb-cluster),甚至还附带一个扩展框架。

相关内容