网络通信 频道

运维监控Nagios连载4:监控Mysql服务器

  【IT168 专稿】俗话说:工欲善其事,必先利其器.要做好系统管理,使自己的工作更轻松更有效的话,一个好的监控工具是必不可少的了。在这里我向大家推荐一款我使用了4年多的、功能强大、可灵活定制的开源监控利器---nagios。

  运维监控Nagios连载1:Nagios服务器的自我监控实现
  
http://net.it168.com/a2009/0309/267/000000267878.shtml
  运维监控Nagios连载2:部署apache服务器
  
http://net.it168.com/a2009/0310/268/000000268103.shtml
  运维监控Nagios连载3:部署、配置Nagios服务
  
http://net.it168.com/a2009/0310/268/000000268105.shtml
  运维监控Nagios连载4:Nagios监控Mysql服务器
  运维监控Nagios连载5:关键应用监控的重要策略


  监控Mysql需要在nagios和Mysql服务器这两个部分做处理:Mysql服务器安装nrpe、创建Mysql监控用户;配置nagios及用htpasswd创建浏览器验证帐号。下面分步描述。

  一、 在Mysql服务器安装nrpe.

  这个操作与nagios服务器安装nrpe基本相同,唯一不同的是nrpe.cfg文件server_address,把它改成Mysql服务器的ip地址即可。检查无误后启动nrpe服务.

  二、创建Mysql访问用户nagios。

  这个账号仅仅是nagios监控程序用来访问Mysql数据库所用,与其它帐号毫无关系。为了安全起见,nagios这个账号的权限应该特别低,仅仅有数据库的select权限即可。再进一步,我们创建一个空的数据库nagdb,然后让nagios账号访问这个空库,就可以通过check_Mysql插件测试和监控Mysql数据库。

  一切正常以后,Mysql服务器这边的配置和测试就算完成了。
 

  三、nagios服务器上的操作。

  即在nagios配置文件后面追加内容。

  (一)、主机配置文件追加Mysql主机定义,联系组contactgroups 的值为sagroup,dbgroup,具体步骤参照前面的操作。
  (二)、联系人配置文件(contacts.cfg)追加数据库管理员定义(dba1),具体步骤参照前面的操作。
  (三)、联系组配置文件(contactgroups.cfg)追加数据库管理员组定义(dbgroup),其成员为联系人配置文件(contacts.cfg)定义的数据库管理员(dba1)。
  (四)、服务配置文件(services.cfg)追加Mysql服务监控,除了Mysql服务监控而外,其他几个对象都于前面的类似,只不过联系组多了一个dbgroup。这里列出Mysql服务这个定义:
  define service {
  host_name             nagios-server
  service_description   check_Mysql
  check_period          24x7
  max_check_attempts    4
  normal_check_interval 3
  retry_check_interval  2
  contact_groups        sagroup,dbgroup
  notification_interval   10
  notification_period     24x7
  notification_options    w,u,c,r
  check_command      check_Mysql
  }
  (五)、命令配置文件(command.cfg)追加检查Mysql的定义,其追加内容为:
  define command {
  command_name  check_Mysql
  command_line    $USER1$/check_Mysql -H $HOSTADDRESS$ -u nagios -d nagdb
  }
  (六)、检查并启动nagios
  cd /usr/local/nagios
  bin/nagios -v etc/nagios.cfg
  bin/nagios -d etc/nagios.cfg
  (七)增加apache验证帐号
  /usr/local/apache/bin/htpasswd /usr/local/nagios/etc/htpasswd db1
  输入两次密码后,从别的计算机的浏览器地址栏输入  http://59.26.240.63/nagios ,再输入用户名db1及刚才设定的密码,进入页面后,点击左上方的链接"Service Detail",就可以看到Mysql服务器当前的运行状态(db1用户只能看到Mysql服务器状态,而管理员sery账号则可以看所有被监控对象的状态)。


 

0
相关文章