在zabbix中有了orabbix的辅助,监控效率大大提高,但是因为orabbix是基于jdbc的方式,有些监控还是有一些限制。比如DataGuard的检
在zabbix中有了orabbix的辅助,监控效率大大提高,但是因为orabbix是基于jdbc的方式,有些监控还是有一些限制。
比如DataGuard的检查,如果采用dg broker来检查,效果就更直观也更可信。
DGMGRL> show configuration;
Configuration - csdb
Protection Mode: MaxPerformance
Databases:
test- Primary database
stest- Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
只要显示为SUCCESS,说明dg就是正常的。
如果通过orabbix来监控,只能通过主库中的v$dataguard_status来进行检查。
很多时候这种检查一方面很可能有误报,有时候可能会有很多额外的信息干扰。
所以使用orabbix来监控备库还是有一定的瓶颈,可以监控,但是结果还是不够可信。
这个时候还是投入zabbix的怀抱,我们还是需要通过zabbix的方法来辅助。
对于dg的检查,可以使用下面的脚本来检查
echo `sudo su -l Oracle EOD
EOF`|grep ORA- |wc -l
如果输出结果大于0,说明检查结果存在ORA错误。这个时候需要关注备库的情况。
在zabbix中的配置如下:
在zabbix agent的目录下配置这个参数
UserParameter=check.dg[*], sh /home/app/zabbix/script/check_dg.sh
然后在zabbix agent的script目录下,脚本check_dg.sh 的内容就是调用show configuration的结果。
这些配置还是方便的。
然后配置trigger
配置完成之后,就可以在zabbix server端进行验证。
# ./zabbix_get -s 10.xxx.xx.45 -k check.dg
ZBX_NOTSUPPORTED
这个时候说明agent这边校验失败,还是需要重启一下agent的。
这个时候如果备库存在问题显示也会为0,需要明辨。
如果备库确实存在问题,,显示结果就会大于0
# ./zabbix_get -s 10.127.133.45 -k check.dg
1
当然为了使得zabbix用户能够切换到oracle用户,还是需要使用sudo的方式为zabbix赋予权限,比如末尾的切换用户的su -l
zabbix ALL=(ALL) NOPASSWD: /etc/init.d/iptables status,/sbin/iptables -nL, /usr/bin/head -n 50, /var/log/secure,/bin/su -l *
一些Zabbix相关教程集合:
Ubuntu 14.04下Zabbix2.4.5 源码编译安装
安装部署分布式监控系统Zabbix 2.06
《安装部署分布式监控系统Zabbix 2.06》
CentOS 6.3下Zabbix安装部署
Zabbix分布式监控系统实践
CentOS 6.3下Zabbix监控apache server-status
CentOS 6.3下Zabbix监控MySQL数据库参数
64位CentOS 6.2下安装Zabbix 2.0.6
ZABBIX 的详细介绍:请点这里
ZABBIX 的下载地址:请点这里
本文永久更新链接地址: