分类: LINUX
2010-02-10 17:33:25
来源:http://www.xxlinux.com/linux/article/development/database/20090312/15801.html
运维监控Nagios连载1:Nagios的自我监控实现
linux.chinaitlab.com/server/778527.html">
运维监控Nagios连载2:部署apache
运维监控Nagios连载3:部署、Nagios服务
运维监控Nagios连载4:Nagios监控Mysql
运维监控Nagios连载5:关键应用监控的重要策略
监控Mysql需要在nagios和Mysql这两个部分做处理:Mysqlnrpe、创建Mysql监控用户;nagios及用htpasswd创建浏览器验证帐号。下面分步描述。
一、 在Mysqlnrpe.
这个操作与nagiosnrpe基本相同,唯一不同的是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
输入两次密码后,从别的计算机的浏览器地址栏输入 ,再输入用户名db1及刚才设定的密码,进入页面后,点击左上方的链接"Service Detail",就可以看到Mysql当前的运行状态(db1用户只能看到Mysql状态,而管理员sery账号则可以看所有被监控对象的状态)。