zabbix3.0.2 通过orabbix来监控oracle11g增强版的详细过程

-->Orabbix简介说明

  orabbix是一个用来监控oracle数据库性能的zabbix插件工具,通过安装在被监控服务器上客户端上收集数据并传给zabbix服务器端,然后通过调用图形显示。具有以下功能:

(1)、数据库版本

(2)、归档文件

(3)、等待的事件(如文件的I/O,单块的读,多块的读,直接读,SQLNet消息,控制文件I/O,日志写等)

(4)、HitRatio(监控Hit Ratio的触发,表/存储过程,SQLArea,Body)

(5)、逻辑I/O(当前读操作,持续的读操作,块的更改)

(6)、PGA

(7)、SGA(固定的缓冲,JAVApool,Large Pool,Log Buffer,Shared Pool,Buffer Cache)

(8)、物理I/O(重写操作,数据文件写操作,数据文件读操作)

9、SharePool(PoolDictionary Cache, Pool Free Memory, Library Cache,Sql Area ,Misc.)

10、Pin Hit Ratio(monitor Hit Ratio on Trigger, Tables/Procedures, SQLArea,Body)

11、Session/Processes(monitor Sessions and processes)

12、Session (ActiveSession, Inactive Sessions, System Session)

1,下载安装jdk8


#下载地址

http://download.csdn.net/detail/mchdba/9515973

# 解压安装

tar -xvf jdk-8u45-linux-x64.tar.gz -C /usr/lib/jvm

2,创建oracle监控帐号,在oracle的sqlplus窗口里面执行:

创建监控用户语句:


CREATEUSER zabbix IDENTIFIEDBY ys_zb_0418 DEFAULTTABLESPACEUSERSTEMPORARYTABLESPACE TEMP PROFILEDEFAULTACCOUNTUNLOCK;

GRANTALTERSESSIONTO zabbix;

GRANTCREATESESSIONTO zabbix;

GRANTCONNECTTO zabbix;

ALTERUSER zabbix DEFAULTROLEALL;

GRANTSELECTON V_$INSTANCE TO zabbix;

GRANTSELECTON DBA_USERS TO zabbix;

GRANTSELECTON V_$LOG_HISTORY TO zabbix;

GRANTSELECTON V_$LOG TO zabbix;

GRANTSELECTON V_$PARAMETER TO zabbix;

GRANTSELECTON SYS.DBA_AUDIT_SESSION TO zabbix;

GRANTSELECTON V_$LOCK TO zabbix;

GRANTSELECTON DBA_REGISTRY TO zabbix;

GRANTSELECTON V_$LIBRARYCACHE TO zabbix;

GRANTSELECTON V_$SYSSTAT TO zabbix;

GRANTSELECTON V_$PARAMETER TO zabbix;

GRANTSELECTON V_$LATCH TO zabbix;

GRANTSELECTON V_$PGASTAT TO zabbix;

GRANTSELECTON V_$SGASTAT TO zabbix;

GRANTSELECTON V_$LIBRARYCACHE TO zabbix;

GRANTSELECTON V_$PROCESS TO zabbix;

GRANTSELECTON DBA_DATA_FILES TO zabbix;

GRANTSELECTON DBA_TEMP_FILES TO zabbix;

GRANTSELECTON DBA_FREE_SPACE TO zabbix;

GRANTSELECTON V_$SYSTEM_EVENT TO zabbix;

GRANTSELECTON V_$locked_object TO zabbix;

GRANTSELECTON dba_objects TO zabbix;

GRANTSELECTON dba_tablespaces TO zabbix;

GRANTSELECTON v_$session TO zabbix;

本blog原始地址为:http://blog.csdn.net/mchdba/article/details/51366790,谢绝转载。

如果是oracle11g的数据库版本,还需要执行下面的语句开放ACL的访问控制,否则在监控的过程中有部份内容无法正常显示(例于数据库版本,数据库文件大小等),而且orabbix的日志显示中也会有错误提示。:


exec dbms_network_acl_admin.create_acl(acl => ‘resolve.xml‘,description=> ‘resolve acl‘, principal =>‘ZABBIX‘, is_grant => true, privilege => ‘resolve‘);

exec dbms_network_acl_admin.assign_acl(acl => ‘resolve.xml‘, host =>‘*‘);

commit;

# --执行过程

SQL> exec dbms_network_acl_admin.create_acl(acl => ‘resolve.xml‘,description=> ‘resolve acl‘, principal =>‘ZABBIX‘, is_grant => true, privilege => ‘resolve‘);

PL/SQLprocedure successfully completed.

SQL> exec dbms_network_acl_admin.assign_acl(acl => ‘resolve.xml‘, host =>‘*‘);

PL/SQLprocedure successfully completed.

SQL> commit;

Commit complete.

SQL>

3,安装部署orabbix

其实orabbix只需要安装在一台服务器即可,我就选择安装在Zabbix Server上,当然上面的jdk是为orabbix服务的,因为orabbix就是一个oracle客户端去查找oracle中的数据,然后传给zabbix,安装orabbix:


# 下载:

Mkdir /usr/local/orabbix

Cd /usr/local/orabbix

wget  http://nchc.dl.sourceforge.net/project/orabbix/orabbix-1.2.3.zip

# 安装:

unzip orabbix-1.2.3.zip

chmod +x run.sh

cp init.d/orabbix /etc/init.d/

sed -i ‘s#/opt/orabbix#orabbix=/usr/local/orabbix#g‘ /etc/init.d/orabbix

chmod +x /etc/init.d/orabbix

sed -i ‘s#java#/usr/lib/jvm/jdk1.8.0_45/bin/java#g‘ /usr/local/orabbix/run.sh

4,配置config. Props:

orabbix所有的配置文件都在conf目录中,需要将默认的配置文件config.props.sample复制一份后再进行修改和配置。


[[email protected]_serv_121_12 conf]# vim config.props

ZabbixServer2.Port=PORT_OF_ZABBIX_SERVER

#pidFile

OrabbixDaemon.PidFile=./logs/orabbix.pid

#frequency of item‘s refresh

OrabbixDaemon.Sleep=300

#MaxThreadNumber should be >= than the number of your databases

OrabbixDaemon.MaxThreadNumber=100

#put here your databases in a comma separated list

# DatabaseList=DB1,DB2,DB3

DatabaseList=azure_yueworldoracle_crm_3_90,azure_earth_dbm1_3_111,DB3

#Configuration of Connection pool

#if not specified Orabbis is going to use default values (hardcoded)

#Maximum number of active connection inside pool

DatabaseList.MaxActive=10

#The maximum number of milliseconds that the pool will wait

#(when there are no available connections) for a connection to be returned

#before throwing an exception, or <= 0 to wait indefinitely.

DatabaseList.MaxWait=100

DatabaseList.MaxIdle=1

#define here your connection string for each database

#DB1.Url=jdbc:oracle:thin:@192.167.3.90:1521:DB1

azure_yueworldoracle_crm_3_90.Url=jdbc:oracle:thin:@192.167.3.90:1521:powerdes

azure_yueworldoracle_crm_3_90.User=zabbix

azure_yueworldoracle_crm_3_90.Password=ys_zb_0418

#Those values are optionals if not specified Orabbix is going to use the general values

azure_yueworldoracle_crm_3_90.MaxActive=10

azure_yueworldoracle_crm_3_90.MaxWait=100

azure_yueworldoracle_crm_3_90.MaxIdle=1

azure_yueworldoracle_crm_3_90.QueryListFile=./conf/query.props

azure_earth_dbm1_3_111.Url=jdbc:oracle:thin:@192.167.3.111:1521:earth_m1

azure_earth_dbm1_3_111.User=zabbix

azure_earth_dbm1_3_111.Password=ys_zb_0418

azure_earth_dbm1_3_111.QueryListFile=./conf/query.props

PS:需要注意的是DatabaseList=DB1指的是被监控服务器的名称,该名称要和zabbix server界面中的机器名称保持一致,该配置文件中后续所引用的设定都以该名称为准。

DB1.Url=jdbc:oracle:thin:@ 192.167.3.90:1521:powerdes指定的是被监控服务器的连接信息(例如采用jdbc的联接方式,服务器地址是192.167.3.90,oracle的端口是1521,powerdes指的是数据库的实例名称)

5,启动orabbix服务


# 启动orabbix

[[email protected]_serv_121_12 conf]# service orabbix start

Starting Orabbix service:

[[email protected]_serv_121_12 conf]#

# 查看启动的orabbix进程

[[email protected]_serv_121_12 conf]# ps aux |grep orabbix

root      1259  0.3  0.6 12112256 203324 pts/1 Sl   16:02   0:13 /usr/lib/jvm/jdk1.8.0_45/bin/java -Duser.language=en -Duser.country=US -Dlog4j.configuration=./conf/log4j.properties -cp lib/commons-codec-1.4.jar:lib/commons-dbcp-1.4.jar:lib/commons-lang-2.5.jar:lib/commons-logging-1.1.1.jar:lib/commons-pool-1.5.4.jar:lib/hsqldb.jar:lib/log4j-1.2.15.jar:lib/ojdbc6.jar:.:./orabbix-1.2.3.jar com.smartmarmot.orabbix.bootstrap start ./conf/config.props

root      6108  0.0  0.0 103256   844 pts/1    S+   17:04   0:00 grep orabbix

[[email protected]_serv_121_12 conf]#

6,界面导入oracle模版文件

导入模版xml文件,期间碰到问题参加后面的问题记录1。E:\software\Oracle\install_11.2.0.4\pic2\01.png、02.png

在oracle服务器上,加入orabbix监控模版03.png,进入Host -> Templates -> Link new templates -> Select,进去新界面选择Group -> TEMPLATES_ORACLE,之后左边NAME下面打勾,点击Select按钮。

之后点击Link new templates框里的Add按钮,然后点击下面的Update按钮,如04.png所示:

7,在oracle模版上添加linux基础监控

这个oracle模版里面只有oracle的监控,对于oracle服务器的基础监控比如磁盘、io等等是没有的,这个时候我们需要在这个oracle模版上引入linux监控。进入All templates -> Template_Oracle -> Linked templates ->Link new templates选框,点击Select按钮,在进去的界面里面选择Template OS Linux模版,然后退出,点击Add按钮,添加到Linked templates里面,之后点击Update按钮更新完成,可以看到这个oracle模版的items已经增加到108个了,Graphs已经增加到了19个了,Triggers也增加到了390个了,结果如下图E:\software\Oracle\install_11.2.0.4\pic2\05.png所示

8,查看oracle监控部分显示图片

从Monitoring -> Graphs -> Group(选择你自己的组) -> Host(选择你自己的oracle服务器) ->Graps,看到oracle服务器的许多监控图列表,如下图E:\software\Oracle\install_11.2.0.4\pic2\06.png所示:

SGA内存使用监控图,E:\software\Oracle\install_11.2.0.4\pic2\07.png:

HitRatio命中率监控图,E:\software\Oracle\install_11.2.0.4\pic2\08.png:

9,问题记录

Import failed

Details

·        Host group "Templates"already exists.

解决方法:将orabbix的4个xml里面的<group>TEMPLATES</group>改成<group>TEMPLATES_ORACLE</group>,然后重新导入import即可。

参考文章:http://www.smartmarmot.com/wiki/index.php/Orabbix

时间: 2024-11-14 12:04:42

zabbix3.0.2 通过orabbix来监控oracle11g增强版的详细过程的相关文章

Zabbix-3.0.3使用默认模板监控MySQL

环境描述:zabbix server:192.168.1.1zabbix agent:192.168.1.12 一.安装agent客户端(1)添加用户群组groupadd zabbixuseradd -g zabbix -m zabbix (2)解压安装包,编译安装tar -zxvf zabbix-3.0.3.tar.gzcd zabbix-3.0.3./configure --prefix=/usr/local/zabbix --enable-agent make install (3)修改a

zabbix3.0.4利用iostat工具监控centos主机磁盘IO

该监控基于iostat,然后iostat 命令用来监视系统输入/输出设备负载 1.安装IOSTAT工具 # yum install sysstat -y 测试iostat 查看所有硬盘io # iostat Linux 2.6.32-431.11.25.el6.ucloud.x86_64 (test8_hadoop_kaf) 07/27/2017 _x86_64_ (4 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.04 0.0

zabbix3.0之agent端加入监控

zabbix客户端: [[email protected] ~]#rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0- 1.el6.noarch.rpm [[email protected] ~]#yum install -y zabbix-agent [[email protected] ~]#/etc/init.d/zabbix-agent start zabbix_agent配置 [[ema

分布式监控系统Zabbix-3.0.3-完整安装记录 -添加apache监控

前面介绍了zabbix3.0.3环境及相关监控项的添加,下面介绍下针对apache的监控配置:1)在apache配置文件中打开server-status状态访问功能(自带的) [[email protected] ~]# /data/apache/bin/httpd -v Server version: Apache/2.4.25 (Unix) Server built: Jun 19 2017 19:18:00 [[email protected] ~]# cat /data/apache/c

zabbix3.0监控mysql配置

zabbix3.0 server已自带mysql的模板了,只需配置好agent客户端,然后在web端给主机增加模板就行了. 下面是公司线上的zabbix3.0环境下添加mysql监控操作记录 Zabbix_agent客户端操作 (1)首先在客户端的mysql里添加权限 mysql> grant all on *.* to [email protected]'localhost' identified by "123456”; mysql> flush privileges; (2)在

zabbix3.2使用自带模板监控MySql

一.zabbix自带MySql模板监控项 Zabbix3.0之后已经有MySql监控模板了,所以我们只要引用ZabbixServer自带的模板即可.zabbix默认有14个监控项 我们只需获取监控项需要的值就ok,而这些值大部分可以通过mysqladmin命令获取 二.编写脚本获取mysql性能指标数据 vim chk_mysql.sh vim chk_mysql.sh # 用户名 #MYSQL_USER='zabbix' # 密码 #MYSQL_PWD='zabbix' #在脚本中输入密码my

Zabbix3.0.4监控MySQL数据库状态

先在zabbix主机上面配置好MySQL服务器的信息,添加好zabbix自带的Template App MySQL模版,然后去mysql服务器上安装agent,再添加mysql监控脚本. 1.Zabbix官方提供的监控mysql的模板Template App MySQL,可以看到相关的Items和key. 打开监控项查看添加的mysql模板 2.zabbix_agent端结合官方提供的key编写Shell脚本,从数据库中取出Items的key的值 cat checkmysql.sh #!/bin

Zabbix3.0 监控Windows Client

Zabbix3.0 监控Windows Clien 我们前面介绍了Zabbix3.0监控linux主机,今天我们使用Zabbix监控windows主机,其实都是一样的:具体见下: 我们首先下载windows zabbix agent安装服务:我们第一个url是下载链接,第二个第三个是最新的3.0和2.2.9的下载链接: http://www.zabbix.com/download.php http://www.zabbix.com/downloads/3.0.0/zabbix_agents_3.

Zabbix-3.0.3使用自带模板监控MySQL

导读 Zabbix是一款优秀的,开源的,企业级监控软件,可以通过二次开发来监控你想要监控的很多服务,本文介绍使用Zabbix自带的模板监控MySQL服务. 配置userparameter_mysql.conf #移动到zabbix解压缩路径 cd /usr/local/src/zabbix-3.0.3/conf/zabbix_agentd #拷贝文件到/opt/zabbix/etc/zabbix_agentd.conf.d/ #指定自己的zabbix安装目录 cp userparameter_m