標籤:event smart any log audit ddr 步驟 hat ber
網上教程很多,但普遍較老,擔心新版本的變化,於是親自測試了一下,記錄過程如下:
一、環境
Centos7.3 192.168.56.104
Oracle安裝在windows下,192.168.56.101
二、步驟:
1.確保JRE環境,使用java命令可以識別
如果沒有可以直接Yum install java java-devel
2.安裝orabbix
orabbix官網:http://www.smartmarmot.com/wiki/index.php?title=Orabbix
:http://www.smartmarmot.com/product/orabbix/download/ 最新版本orabbix-1.2.3.zip
下載後上傳到Zabbix-server的/opt/orabbix/下(建議目錄,否則會影響後續指令碼執行)
#mkdir /opt/orabbix#cd /opt/orabbit#unzip orabbix-1.2.3.zip
解壓後的目錄
3. 配置orabbix
給orabbix目錄下附許可權
#chmod a+x /opt/orabbix -R
建立orabbix設定檔
#cp /opt/orabbix/conf/config.props.sample /opt/orabbix/conf/config.props
編輯config.props
[[email protected] ~]# cat /opt/orabbix/conf/config.props#comma separed list of Zabbix serversZabbixServerList=ZabbixServer ZabbixServer.Address=192.168.56.104 #Zabbix server的地址 連接埠zabbixServer.Port=10051#ZabbixServer2.Address=IP_ADDRESS_OF_ZABBIX_SERVER#ZabbixServer2.Port=PORT_OF_ZABBIX_SERVER#pidFileOrabbixDaemon.PidFile=./logs/orabbix.pid #Java進程#frequency of item‘s refreshOrabbixDaemon.Sleep=300#MaxThreadNumber should be >= than the number of your databasesOrabbixDaemon.MaxThreadNumber=100#put here your databases in a comma separated list#DatabaseList=DB1,DB2,DB3DatabaseList=win-oracle #此處名稱需和oracle db端zabbix前端的hostname?一致#Configuration of Connection pool#if not specified Orabbis is going to use default values (hardcoded)#Maximum number of active connection inside poolDatabaseList.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=100DatabaseList.MaxIdle=1#define here your connection string for each database#DB1.Url=jdbc:oracle:thin:@server.domain.example.com:<LISTENER_PORT>:DB1win-oracle.Url=jdbc:oracle:thin:@192.168.56.101:1521:orcl #執行個體名為orcl#DB1.User=ZABBIXwin-oracle.User=zabbix#DB1.Password=zabbix_passwordwin-oracle.Password=zabbix#Those values are optionals if not specified Orabbix is going to use the general valueswin-oracle.MaxActive=10win-oracle.MaxWait=100win-oracle.MaxIdle=1win-oracle.QueryListFile=./conf/query.props#DB2.Url=jdbc:oracle:thin:@server2.domain.example.com:<LISTENER_PORT>:DB2#DB2.User=zabbix#DB2.Password=zabbix_password#DB2.QueryListFile=./conf/query.props#DB3.Url=jdbc:oracle:thin:@server3.domain.example.com:<LISTENER_PORT>:DB3#DB3.User=zabbix#DB3.Password=zabbix_password#DB3.QueryListFile=./conf/query.props
4.在Oracle端增加使用者和許可權
CREATE USER ZABBIX IDENTIFIED BY zabbix DEFAULT TABLESPACE SYSTEM TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;GRANT CONNECT TO ZABBIX;GRANT RESOURCE TO ZABBIX;ALTER USER ZABBIX DEFAULT ROLE ALL;GRANT SELECT ANY TABLE TO ZABBIX;GRANT CREATE SESSION TO ZABBIX;GRANT SELECT ANY DICTIONARY TO ZABBIX;GRANT UNLIMITED TABLESPACE TO ZABBIX;GRANT SELECT ANY DICTIONARY TO ZABBIX;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還需要執行以下過程,11G以前的版本沒試過,不知道是否要執行:
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;
配置orabbix的服務和進程
#cp -a /opt/orabbix/init.d/orabbix /etc/init.d/orabbix#chmod 755 /etc/init.d/orabbix#/etc/init.d/orabbix start
?日誌?檔案在/opt/orabbix/logs/orabbix.log中 tail -f 跟蹤?日誌分析部署過程中的問題。
三、前端增加主機
然後再zabbix web端configuration—》Templates—》Import中將模板添加
然後再已添加好的hosts中增加該oracle template,enable相應所需要監控的內容即可。
親測的orabbix監控Oracle過程