环境:
centos7
vmware虚拟机
IP:192.168.213.130
已安装好zabbix3.0(红色加粗提醒!是3.0!!!4.0和orabbix1.2.3不兼容)和Oracle数据库。(安装可参照我之前文档)
Orabbix可安装在zabbix server端,也可以安装在zabbix agent端,为了数据库服务器的独立性,这里选择安装则zabbix server端。
Orabbix下载地址 http://www.smartmarmot.com/product/orabbix/download/
1确认java jdk是否已安装,因为Orabbix基于java
[root@oracle ~]# java -version
如果没有安装则通过yum来安装
[root@oracle ~]# yum install java
2.在/opt目录下新建一个orabbix目录
[root@oracle ~]# mkdir -p /opt/orabbix
放在/opt目录下,因为orabbix的启动文件默认写在/opt/orabbix目录下
3.上传orabbix的压缩包到服务器
4.解压压缩包
[root@oracle orabbix]# unzip orabbix-1.2.3.zip
5.赋予orabbix目录权限
[root@oracle orabbix]# chmod -R a+x /opt/orabbix/
6.将默认的配置文件复制一份作为正式配置文件
[root@oracle orabbix]# cp /opt/orabbix/conf/config.props.sample /opt/orabbix/conf/config.props
7.编辑配置文件
[root@oracle orabbix]# vim /opt/orabbix/conf/config.props
这里需要特别注意的是,zabbix服务器的Address、Port等和数据库Url、User等参数的属性,都要与ZabbixServerList和DatabaseList中所填写的一致
DatabaseList中,建议填写的是:主机名-数据库实例名
同时,后面在zabbix中添加host时,host的名字需要与DatabaseList中所填写的一致
8.创建执行文件
[root@oracle orabbix]# cp /opt/orabbix/init.d/orabbix /etc/init.d/orabbix
9.在数据库中创建监控用户(在被监控端执行)
如果没启动数据库则执行以下命令,如果启动了则跳过:
su oracle lsnrctl start sqlplus / as sysdba startup
使用管理员进入到数据库:
[root@oracle orabbix]# sqlplus / as sysdba SQL>
创建用户:
CREATE USER zabbix IDENTIFIED BY 123456 DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;
赋予相关权限:
GRANT ALTER SESSION TO zabbix; GRANT CREATE SESSION TO zabbix; GRANT CONNECT TO zabbix; ALTER USER zabbix DEFAULT ROLE ALL; GRANT SELECT ON V_$INSTANCE TO zabbix; GRANT SELECT ON DBA_USERS TO zabbix; GRANT SELECT ON V_$LOG_HISTORY TO zabbix; GRANT SELECT ON V_$LOG TO zabbix; GRANT SELECT ON V_$PARAMETER TO zabbix; GRANT SELECT ON SYS.DBA_AUDIT_SESSION TO zabbix; GRANT SELECT ON V_$LOCK TO zabbix; GRANT SELECT ON DBA_REGISTRY TO zabbix; GRANT SELECT ON V_$LIBRARYCACHE TO zabbix; GRANT SELECT ON V_$SYSSTAT TO zabbix; GRANT SELECT ON V_$PARAMETER TO zabbix; GRANT SELECT ON V_$LATCH TO zabbix; GRANT SELECT ON V_$PGASTAT TO zabbix; GRANT SELECT ON V_$SGASTAT TO zabbix; GRANT SELECT ON V_$LIBRARYCACHE TO zabbix; GRANT SELECT ON V_$PROCESS TO zabbix; GRANT SELECT ON DBA_DATA_FILES TO zabbix; GRANT SELECT ON DBA_TEMP_FILES TO zabbix; GRANT SELECT ON DBA_FREE_SPACE TO zabbix; GRANT SELECT ON V_$SYSTEM_EVENT TO zabbix; GRANT SELECT ON V_$locked_object TO zabbix; GRANT SELECT ON dba_objects TO zabbix; GRANT SELECT ON dba_tablespaces TO zabbix; GRANT SELECT ON v_$SESSION TO zabbix;
如果数据库版本是11g,那么还需要执行下面的语句来开放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;
10.回到zabbix server端,开启相关服务
[root@oracle orabbix]# systemctl restart zabbix-server.service [root@oracle orabbix]# systemctl restart zabbix-agent.service [root@oracle orabbix]# /etc/init.d/orabbix start
11.查看zabbix server和orabbix的日志,如果没有报错则说明启动成功
[root@oracle orabbix]# tail -f /opt/orabbix/logs/orabbix.log
这里没有报错,启动正常。
12.在web端中导入相关模板
模板文件都在/opt/orabbix/template目录下
这里只导入Orabbix_export_full.xml文件
将该文件下载到本地
然后进入zabbix web端
然后在host中添加模板:
这里的主机名必须和orabbix配置文件中的oracle服务器名称相同。
之后在图形中就能看到数据了