Zabbix經過Orabbix監控Oracle數據庫


環境:java

centos7web

vmware虛擬機sql

IP:192.168.213.130數據庫

已安裝好zabbix3.0(紅色加粗提醒!是3.0!!!4.0和orabbix1.2.3不兼容)和Oracle數據庫。(安裝可參照我以前文檔)vim

Orabbix可安裝在zabbix server端,也能夠安裝在zabbix agent端,爲了數據庫服務器的獨立性,這裏選擇安裝則zabbix server端。centos

Orabbix下載地址 http://www.smartmarmot.com/product/orabbix/download/bash


1確認java jdk是否已安裝,由於Orabbix基於java服務器

[root@oracle ~]# java -version


若是沒有安裝則經過yum來安裝oracle

[root@oracle ~]# yum install java



2.在/opt目錄下新建一個orabbix目錄ide

[root@oracle ~]# mkdir -p /opt/orabbix


放在/opt目錄下,由於orabbix的啓動文件默認寫在/opt/orabbix目錄下


3.上傳orabbix的壓縮包到服務器

image.png


4.解壓壓縮包

[root@oracle orabbix]# unzip orabbix-1.2.3.zip

image.png


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

image.png

這裏須要特別注意的是,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;


image.png


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


image.png


11.查看zabbix server和orabbix的日誌,若是沒有報錯則說明啓動成功

[root@oracle orabbix]# tail -f /opt/orabbix/logs/orabbix.log

image.png

這裏沒有報錯,啓動正常。


12.在web端中導入相關模板

模板文件都在/opt/orabbix/template目錄下

image.png

這裏只導入Orabbix_export_full.xml文件

將該文件下載到本地

而後進入zabbix web端

image.png

image.png

而後在host中添加模板:

image.png

這裏的主機名必須和orabbix配置文件中的oracle服務器名稱相同。

image.png

image.png

以後在圖形中就能看到數據了

image.png

相關文章
相關標籤/搜索