zabbix自定义模板监控oracle
zabbix服务器端安装:zabbix-3.2.6.tar.gz
zabbix client端安装:zabbix-agent-3.2.6-1.x86_64.rpm
1.首先必须在目标机器安装zabbix-agent
[root@prod02 ~]# cd /opt/source
[root@prod02 ~]#ls
zabbix-agent-3.2.6-1.x86_64.rpm
[root@prod02 ~]#rpm -ivh zabbix-agent-3.2.6-1.x86_64.rpm
[root@prod02 ~]# /etc/init.d/zabbix_agentd status
● zabbix_agentd.service - SYSV: Starts and stops Zabbix Agent using chkconfig
Loaded: loaded (/etc/rc.d/init.d/zabbix_agentd; bad; vendor preset: disabled)
Active: active (running) since Thu 2018-07-12 10:11:14 CST; 1 months 22 days ago
Docs: man:systemd-sysv-generator(8)
CGroup: /system.slice/zabbix_agentd.service
├─791 /opt/zabbix/sbin/zabbix_agentd
├─796 /opt/zabbix/sbin/zabbix_agentd: collector [idle 1 sec]
├─797 /opt/zabbix/sbin/zabbix_agentd: listener #1 [waiting for connection]
├─798 /opt/zabbix/sbin/zabbix_agentd: listener #2 [waiting for connection]
├─799 /opt/zabbix/sbin/zabbix_agentd: listener #3 [waiting for connection]
└─800 /opt/zabbix/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
Jul 12 10:11:14 10-10-15-71 systemd[1]: Starting SYSV: Starts and stops Zabbix Agent using chkconfig...
Jul 12 10:11:14 10-10-15-71 zabbix_agentd[754]: Starting zabbix_agentd: [ OK ]
Jul 12 10:11:14 10-10-15-71 systemd[1]: Started SYSV: Starts and stops Zabbix Agent using chkconfig.
[root@prod02 zabbix]# netstat -ntlp |grep zabbix #zabbix客户端使用1050端口
tcp 0 0 0.0.0.0:1050 0.0.0.0:* LISTEN 1615/zabbix_agentd
[root@prod02 ~]# cd /opt/zabbix/
[root@prod02 zabbix]# ll
total 4
drwxr-xr-x 2 zabbix zabbix 78 May 16 10:50 bin
drwxr-xr-x 2 zabbix zabbix 48 May 16 10:50 etc
drwxr-xr-x 2 zabbix zabbix 6 Jun 20 2017 lib
drwxr-xr-x 2 zabbix zabbix 26 May 16 10:50 sbin
drwxr-xr-x 2 zabbix zabbix 4096 May 16 10:50 scripts
drwxr-xr-x 3 zabbix zabbix 16 May 16 10:50 share
2.查看防火墙等配置,以及SELINUX策略等问题。
[root@prod02 ]# cat /etc/selinux/config |grep SELINUX
# SELINUX= can take one of these three values:
SELINUX=disabled
# SELINUXTYPE= can take one of three two values:
SELINUXTYPE=targeted
[root@prod02 ]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
3.修改agent配置文件
[root@prod02 ]# cat /opt/zabbix/etc/zabbix_agentd.conf
PidFile=/var/run/zabbix_agentd.pid
LogFile=/var/log/zabbix_agentd.log
ListenPort=1050 #zabbix客户端端口号
EnableRemoteCommands=1
LogRemoteCommands=1
Server=100.150.10.10 #zabbix服务器地址
ServerActive=100.150.10.10:1051 #zabbix服务器地址及端口号
HostnameItem=system.hostname
Timeout=30
AllowRoot=1
DebugLevel=4
LogFileSize=128
Include=/opt/zabbix/etc/extra.conf
UnsafeUserParameters=1
UserParameter=findsock[*],/opt/zabbix/scripts/findsock.sh $1
UserParameter=net.tcp.listen.grep[*],grep -q $$(printf '%04X.00000000:0000.0A' $1) /proc/net/tcp && echo 1 || echo 0
UserParameter=net.tcp6.listen.grep[*], ss -nlt| grep "\<$1\>" >/dev/null && echo 1 || echo 0
UserParameter=finddisks,/opt/zabbix/scripts/finddisks.sh
UserParameter=disproc,/opt/zabbix/scripts/disproc.sh
UserParameter=disraid,/opt/zabbix/scripts/disraid.sh
UserParameter=raid,/opt/zabbix/scripts/checkraid.sh
UserParameter=iostats[*],/opt/zabbix/scripts/iostats.sh $1
UserParameter=bond[*],/usr/sbin/ethtool $1 | awk -F ":" '/Speed/ {print $NF}'|sed 's/Mb.*$//g'
LogFileSize=128
[root@prod02 zabbix]# cat etc/extra.conf
#jmx
UserParameter=jmx.scan.tomcat[*],cat /opt/apache-tomcat/jmx.json
UserParameter=jmx.scan.tomcat2[*],cat /opt/apache-tomcat-2/jmx.json
UserParameter=jmx.tomcat[*],/opt/zabbix/scripts/jmx_status.sh $1 $2 $3 $4
UserParameter=jmx.tomcat2[*],/opt/zabbix/scripts/jmx_status.sh $1 $2 $3 $4
UserParameter=mysql[*],/opt/zabbix/scripts/mysql.sh $1
UserParameter=nginx[*],/opt/zabbix/scripts/nginx.sh $1
UserParameter=performance,/opt/zabbix/scripts/performance.sh
UserParameter=redis.info[*],/opt/zabbix/scripts/redis.sh $1
4.编写oracle client机器上的可执行脚本
[root@prod02 ~]#cd /opt/zabbix/scripts/
[root@prod02 ~]#vi oracle_status.sh
以监控oracle脚本的运行状态为例
#!/bin/bash
function active() {
ps -ef | grep pmon | grep -v grep | awk '{print $NF}' > /dev/null
if [ $? -eq 0 ]; then
echo 1
else
echo 0
fi
}
if [ $# -ne 1 ]; then
echo "the args is error."
else
$1
fi
[root@prod02 ~]#chmod u+x oracle_status.sh
在目标机器上执行对应脚本
[root@prod02 ~]# cd /opt/zabbix/scripts/
[root@prod02 scripts]# ./oracle_status.sh active
1
参数为active,编辑zabbix_agentd.conf ,添加下列条目:
[root@prod02 ~]#UserParameter=oracle_status[*],/usr/local/zabbix/script/oracle_status.sh $1
重启zabbix_agented
[root@prod02 ~]#/etc/init.d/zabbix_agentd restart
5,zabbix服务器机器获取脚本数据,可使用zabbix-get
[root@server bin]# ./zabbix_get -s 100.10.93.18 -p 1050 -k "oracle_status[active]"
1
100.10.93.18 为zabbix client机器
到这一步证明zabbix-service已经获取到目标机器数据
6.在zabbix服务器的web配置,添加监控项
配置-->主机-->监控项-->创建监控项
名称:oracle_status 键值:oracle_status[active] 主机接口:client地址及端口
7:添加图形
配置-->主机-->图形
添加监控项
8.添加触发器
9.查看最新数据的监控项
zabbix自定义模板监控oracle的更多相关文章
- 菩提圣心诀---zabbix自定义key监控oracle连接状态(python脚本)
目的:此次实验目的是为了zabbix服务端能够实时监控某服务器上oracle实例能否正常连接 环境:1.zabbix_server 2.zabbix_agent(含有oracle) 主要知识点: 1. ...
- zabbix自定义模板——监控TCP连接状态
TCP十二种连接状态说明 可以使用man netstat查看 LISTEN - 侦听来自远方TCP端口的连接请求: SYN-SENT -在发送连接请求后等待匹配的连接请求: SYN-RECEIVED ...
- Zabbix自定义模板监控多个url接口
一.脚本配置 1.监控脚本 /etc/zabbix/zabbix_agent2.d/scripts/web_site_code_status.sh #!/bin/bash url_discovery( ...
- 2.zabbix自定义模板
zabbix自定义模板 zbx_base_templates.xml <?xml version="1.0" encoding="UTF-8"?> ...
- zabbix之 orabbix模板监控oracle
一.Orabbix简介 Orabbix是设计用来为zabbix监控Oracle的数据库的插件,它提供多层次的监控,包括可用性和服务器性能的指标.它提供了从众多Oracle实例采集的有效机制,进而提供此 ...
- zabbix利用orabbix监控oracle
Orabbix 是一个用来监控 Oracle 数据库实例的 Zabbix 插件.(插件安装在zabbix-server端) 下载地址:http://www.smartmarmot.com/produc ...
- Zabbix通过Orabbix监控Oracle数据库
一.背景 公司业务使用的是一直Oracle数据库,因为多次出现表空间满的时候不能及时发现,每次都是业务组的人员通知处理,这样下来DBA这边就比较被动,所以老大要求监控表空间剩余大小并且当剩余过小时能够 ...
- 【Zabbix】zabora监控Oracle数据库
zabora监控Oracle数据库 它作为一个开源项目,通过shell脚本有效的监控Oracle基础指标.本文档旨在通过实战,在Zabbix 3.0版本之下,监控生产环境下的多台Oracle数据库. ...
- zabbix 自定义mysql监控
一.配置zabbix-agent 编辑 /etc/zabbix/zabbix_agentd.conf文件 增加如下两个配置 1.vim /etc/zabbix/zabbix_agentd.conf ...
随机推荐
- Text Autosizer&&解决移动端网页文本字体怪异增大问题
在做移动端页面时,有时你设置了字体大小,有的部分即使设置了行内样式也不生效,而有些显示正常,这个特性就是Text Autosizer在搞鬼. 以下是解决方案: ①给元素设置 -webkit-text- ...
- @Transactional实现原理
Transactional是spring中定义的事务注解,在方法或类上加该注解开启事务.主要是通过反射获取bean的注解信息,利用AOP对编程式事务进行封装实现.AOP对事务的封装可以看我的这篇文章的 ...
- Redis中的事务及乐观锁的实现
介绍 Redis中的事务(transaction)是一组命令的集合. 事务同命令一样都是Redis最小的执行单位,一个事务中的命令要么都执行,要么都不执行. Redis事务的实现需要用 ...
- react 错误处理
https://www.jianshu.com/p/61d09e488743 https://codepen.io/sgroff04/pen/dVbgJy/
- Java实现文件上传-按钮弹出上传页面
转自: https://blessht.iteye.com/blog/1405057 最近自己在做一个小系统玩的时候涉及到了文件的上传,于是在网上找到Java上传文件的方案,最后确定使用common- ...
- 39. Combination Sum (Java)
Given a set of candidate numbers (candidates) (without duplicates) and a target number (target), fin ...
- 计蒜客 蓝桥模拟 I. 天上的星星
计算二维前缀和,节省时间.容斥定理. 代码: #include <cstdio> #include <cstdlib> #include <cstring> #in ...
- qthread线程
一般调用quit()函数之后可以紧接着调用wait()函数确保线程退出.sleep()等让线程休眠的函数不需要调用,因为Qt中线程是事件驱动机制.但是如果是继承的QTHread类,在run()函数中使 ...
- ==和is的区别 以及编码和解码
is和==的区别 1. id() id是python的一个内置函数,通过id()可以查看变量表的值在内存中的地址. s1 = 2 print(id(s1)) # 1514368064 s2 = 2 p ...
- 【NOIP2015模拟11.2晚】我的天
题目 很久很以前,有一个古老的村庄--xiba村,村子里生活着n+1个村民,但由于历届村长恐怖而且黑暗的魔法统治下,村民们各自过着独立的生活,完全没有意识到其他n个人的存在. 但有一天,村民xiba臻 ...