zabbix支持oracleodbc功能吗(使用zabbix监控oracle数据库的方法详解)
zabbix支持oracleodbc功能吗
使用zabbix监控oracle数据库的方法详解一、概述zabbix是一款非常强大,同时也是应用最为广泛的开源监控软件,本文将给大家介绍如何利用zabbix+python监控oracle数据库。
二、环境介绍以下是我安装的环境,实际部署时并不需要跟我的环境一样。
1. 监控机 Redhat Linux 6.5 + Zabbix server 3.4.10 + Python 2.6.6 (操作系统自带) + Oracle Client 11.2 (x86_64)
2. 被监控机 Oracle 11.2.0.4
三、选择监控方式zabbix监控的方式主要有以下三种类型
Zabbix agent
在被监控机上面安装zabbix agent,zabbix agent将被监控机采集到的数据发送给zabbix server。这种方式最常用,一般用来采集服务器的cpu、内存等信息。
SNMP
一些网络设备如交换机,上面无法安装zabbix agent,所以只能通过snmp的方式收集监控数据如端口状态,流量等。
External check
在zabbix server上面运行查询脚本,直接查询被监控机上的数据。此种方式在被监控机上面不需要做任何部署,所有查询全部从zabbix server上面发出,所以对zabbix server的性能要求较高,官方不推荐大量使用该方式。对于少量的oracle数据库服务器,可以采用该方式。
本文介绍的就是使用external check方式去监控oracle数据库。
四、规划监控项监控数据库的目的是为了保障数据库稳定运行,一旦出现故障,dba能够及时发现并介入处理,监控项分为以下两类
1. 数据库空间不足或数据库发生故障,DBA需要立即处理。
监控项包括表空间、用户状态、实例状态、锁、大量等待事件、闪回区使用率等。此类监控项需要给其设置触发器,一旦出现异常,及时告警。
2. 数据库运行状态的一些统计信息,为DBA定位数据库性能问题发生的时间和类别提供参考。
监控项包括常见的等待事件发生的次数,命中率、硬解析比例等。
下面表格中列出附件中模板的监控项
五、安装上面闲话扯完,进入正式安装环节,我假定你已经安装了zabbix server,因此这里略过zabbix server的安装步骤。
以下所有操作均在zabbix服务器上面执行
安装oracle客户端
从官网下载如下三个rpm包
oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
使用root安装oracle客户端
rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm
rpm -ivh oracle-instantclient11.2-sqlplus-11.2.0.4.0-1.x86_64.rpm
配置环境变量
vi + /etc/profile
---------------------------------------------
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$PATH:$ORACLE_HOME/bin
执行下面的命令让配置生效
source /etc/profile
添加动态库配置文件
vi + /etc/ld.so.conf.d/oracle.conf
---------------------------------------
/usr/lib/oracle/11.2/client64/lib
执行命令ldconfig
连接oracle进行测试
SQL> sqlplus scott/tiger@192.168.56.101:1521/orcltest
SQL*Plus: Release 11.2.0.4.0 Production on Wed Apr 24 18:24:28 2019
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL>
出现上面的提示证明oracle client安装成功
安装python相关包
安装cx_Oracle(python连接oracle的包)
wget http://downloads.sourceforge.net/project/cx-oracle/5.1.2/cx_Oracle-5.1.2-11g-py26-1.x86_64.rpm
rpm -ivh cx_Oracle-5.1.2-11g-py26-1.x86_64.rpm
安装argparse
wget https://bootstrap.pypa.io/2.6/get-pip.py --no-check-certificate
python get-pip.py
pip install argparse
上传python脚本
将附件中的pyora.py脚本放入/usr/lib/zabbix/externalscripts/目录下
赋权限,让zabbix用户能够执行该脚本
chmod 755 /usr/lib/zabbix/externalscripts/pyora.py
[注意:先在被监控机的oracle数据库中创建监控用户,用户名和密码可以自己随意指定
create user zabbix identified by zabbix;
grant connect, select any dictionary to zabbix;]
测试脚本
python pyora.py --username zabbix --password zabbix --address 10.30.10.32 --port 1521 --database office show_tablespaces
上面测试脚本的参数说明
username: 用户名
password: 密码
address: 被监控机ip地址
port: 端口号
database: oracle service name
有返回结果表示脚本能正常运行
上传template文件
将附件中的Pyora_ExternalCheck_11G.xml模板导入到zabbix server中
在zabbix页面中,依次点击Configuration – Templates – Import – 选择文件 – Import,即完成了导入
查看监控数据
Monitoring – Latest Data – Host (选择对应的主机),则可以看到监控的数据了
参考: https://github.com/bicofino/Pyora
附件:
pyora.py,Pyora_ExternalCheck_11G.xml地址放在github上
https://github.com/YangBaohust/zabbix_templates
到此这篇关于使用zabbix监控oracle数据库的方法详解的文章就介绍到这了,更多相关zabbix监控oracle数据库内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
- zabbix基本监控配置(zabbix使用教程+受监控服务器的添加安装教程)
- zabbix5.0源码安装(nginx的zabbix 5.0安装部署的方法步骤)
- zabbix启动教程(docker部署zabbix_agent的方法步骤)
- zabbix客户端看什么网络监控数据(分布式监控系统之Zabbix主动、被动及web监控的过程详解)
- zabbixlinux服务进程(利用zabbix监控ogg进程Linux平台)
- zabbix如何验证监控(Zabbix 动态执行监控采集脚本的实现原理)
- zabbix 时间序列(Zabbix指定时间内变化值设置方法详解)
- zabbixagent安装教程(zabbix-agent在麒麟V10上的安装过程)
- zabbix怎么获取监控(Zabbix如何通过ssh监控获取网络设备数据)
- zabbix 容器(zabbix监控docker应用配置)
- zabbix怎么监控容器(zabbix监控vmware exsi主机的图文步骤)
- centos zabbix服务端(centos7.9安装zabbix5.0.14及配置过程)
- zabbix如何配置监控(zabbix监控mysql的实例方法)
- zabbix如何监控web(Zabbix 结合 bat 脚本实现多个应用程序状态监控的方法)
- zabbix监控sql server集群(zabbix 监控mysql的方法)
- zabbix 查询linux使用率高的进程(详解Linux使用ss命令结合zabbix对socket做监控)
- 8月23日11时16分将迎处暑,逐渐进入气象意义上的秋天(8月23日11时16分将迎处暑)
- 花不语 下 如果重来一次的话,你还会这么选择吗(花不语下如果重来一次的话)
- 城市记忆之上海 最难忘的是老弄堂里的市井味道(城市记忆之上海)
- 太鸡贼了,这老小区轻松搞定了停车问题(这老小区轻松搞定了停车问题)
- 太鸡贼了,这老小区轻松搞定了停车问题(这老小区轻松搞定了停车问题)
- 节日我在岗|警景相融 平安相伴(节日我在岗警景相融)
热门推荐
- docker配置说明(Docker安装Kong API Gateway并使用的详细教程)
- php中怎么分割数组(PHP实现数组根据某个字段进行水平合并,横向合并案例分析)
- css3旋转立方体效果(利用CSS实现立方体360度旋转效果实例代码)
- sqlserver怎么修改表结构(SQL Server中修改“用户自定义表类型”问题的分析与方法)
- C#如何读取Excel
- html markdown 超链接对比(html+js 实现markdown编辑器效果)
- nginxpython编写模块(Python开发之Nginx+uWSGI+virtualenv多项目部署教程)
- sql 多列求和 当某列有null值时的处理
- 多个web.config文件的加载顺序
- 云数据中心服务器介绍(云服务器的机房设备有哪些?)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9