nagios监控部署(二)
时间:2016-09-11 19:48 来源: 作者:liangzh 点击:次
本文主要介绍通过nrpe插件监控mysql服务
一、监控本地 MySQL:
=========================================
1.添加服务
修改 /usr/local/nagios/etc/objects/localhost.cfg 在后面添加:
define service{
use local-service ; Name of service template to use
host_name localhost
service_description MySQL
max_check_attempts 3 ; 故障后最多尝试几次,次数到达后开始提醒
normal_check_interval 2 ; 正常状态下再次检查的间隔
retry_check_interval 1 ; 故障后重试时间间隔
contact_groups admins ;
notification_options w,u,c,r,f ;
notification_interval 1 ; 提醒的间隔,单位为分钟
notification_period 24x7 ; 提醒的时间段
check_command check_mysql!127.0.0.1!root!root
}
注意红色部分,用感叹号分隔开的有三个参数,分别是
host, username, password. 在 nagios 进行自动检查时,会将这三个参数在调用 check_mysql
命令的时候传递过去.
一、Nagios概述
2.定义 check_mysql 命令
修改
/usr/local/nagios/etc/objects/commands.cfg
在后面加上:
define
command{
command_name
check_mysql
command_line
$USER1$/check_mysql -H $ARG1$ -u $ARG2$ -p $ARG3$
}
重启 nagios
二、监控远程服务器:
========================================
1.若之前尚未监控远程服务器的其它服务,请查看文章:http://blog.sina.com.cn/s/blog_5f54f0be0101c1h8.html
远程监控是用 check_nrpe 来调用被监控机器上的其它命令来实现的。所以,要远程监控对应的项目,必须保证被监控机器上已经安装了相应的 nagios 插件。
在这里,我们要保证被监控的远程机器上已经成功安装 check_mysql.
2.定义命令
并在被监控机器的 /usr/local/nagios/etc/nrpe.cfg 后添加:
示例1:command[check_mysql]=/usr/local/nagios/libexec/check_mysql -H 172.18.109.233 -u test -p 123456 -d test
示例2:command[check_mysql]=/usr/local/nagios/libexec/check_mysql -H 127.0.0.1 -u root -p root
3.定义服务
添加完远程服务器后.
在 /usr/local/nagios/etc/objects/remotehost.cfg 后添加:
define service{
use generic-service ; Name of service template to use
host_name JP_VPS_2G
service_description MySQL
check_command check_nrpe!check_mysql
}
可能出现的错误:
[root@localhost nagios]# /usr/local/nagios/libexec/check_mysql -H 172.18.109.233 -P -u test -p 123456
测试错误:/usr/local/nagios/libexec/check_mysql: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory
根据最后提示,应该是找不着一个交libmysqlclient.so.18的文件,于是到mysql安装目录里找到这个文件并且做一个软连接到/usr/lib
复制代码 代码如下:
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
如果是64系统则:
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so.18
[root@localhost nagios]# /usr/local/nagios/libexec/check_mysql -H 172.18.109.233 -P -u test -p 123456
Uptime: 4311 Threads: 1 Questions: 29 Slow queries: 0 Opens: 33 Flush tables: 1 Open tables: 26 Queries per second avg: 0.006|Connections=13c;;; Open_files=20;;; Open_tables=26;;; Qcache_free_memory=0;;; Qcache_hits=0c;;; Qcache_inserts=0c;;; Qcache_lowmem_prunes=0c;;; Qcache_not_cached=0c;;; Qcache_queries_in_cache=0;;; Queries=30c;;; Questions=21c;;; Table_locks_waited=0c;;; Threads_connected=1;;; Threads_running=1;;; Uptime=4311c;;;
|