Env:
CentOS 7.9
SELinux: Disabled
zabbix-server-4.0.24
zabbix-proxy-4.0.24
I setup oracle client on zabbix proxy like bellow.
---
yum -y install oracle-instantclient19.11-basic-19.11.0.0.0-1.x86_64.rpm
yum -y install oracle-instantclient19.10-odbc-19.10.0.0.0-1.x86_64.rpm
yum -y install oracle-instantclient19.10-sqlplus-19.10.0.0.0-1.x86_64.rpm
yum -y install unixODBC
mkdir -p /usr/lib/oracle/19.11/client64/lib/network/admin
cat <<_ORA_ > /usr/lib/oracle/19.11/client64/lib/network/admin/tnsnames.ora
db01 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx)(PORT = 1521))
(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = db01)
_ORA_
cat <<_INI_ > /etc/odbcinst.ini
[Oracle]
Description = ODBC for Oracle
Driver = /usr/lib/oracle/19.11/client64/lib/libsqora.so.19.1
_INI_
su -s /bin/sh - zabbix -c "odbcinst -j"
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /var/lib/zabbix/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
mkdir /var/lib/zabbix
cat <<_ODBC_ > /var/lib/zabbix/.odbc.ini
[DSNdb01]
Driver = Oracle
ServerName = 10.20.46.62/db01
_ODBC_
su -s /bin/sh - zabbix -c "isql -v DSNtmdb01 ZABBIX zYoRp4hR05DUc"
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> quit
odbc settings are OK here.
Next I setup zabbix.
cat <<_ENV_ >> /etc/sysconfig/zabbix-proxy
TNS_ADMIN=/usr/lib/oracle/19.11/client64/lib/network/admin
LD_LIBRARY_PATH=/usr/lib/oracle/19.11/client64/lib
_ENV_
systemctl restart zabbix-proxy
Create bellow items on the zabbix-server and zabbix proxy
---
Name: Oracle Alive
Type: Database monitor
Key: db.odbc.select[watch-racle-alive,DSNdb01]
User: xxxxxxxx
Password: xxxxxxxx
SQL query : SELECT TO_CHAR( SYSDATE, 'YYYY/MM/DD HH24:MI:SS' ) FROM dual;
Type of information: Text
Update interval: 60s
---
But both item can not connect to the DB
---
Item Status : Not supported
Info: Cannot connect to ODBC DSN: [SQL_ERROR]:[HY000][12170][[unixODBC][Oracle][ODBC][Ora]ORA-12170: TNS:Connect timeout occurred
---
There are some question
1. is odbc setting need for zabbix-server?
2. Where should I create odbc monitring item? zabbix server or zabbix proxy?
Any help would be appreciated.
CentOS 7.9
SELinux: Disabled
zabbix-server-4.0.24
zabbix-proxy-4.0.24
I setup oracle client on zabbix proxy like bellow.
---
yum -y install oracle-instantclient19.11-basic-19.11.0.0.0-1.x86_64.rpm
yum -y install oracle-instantclient19.10-odbc-19.10.0.0.0-1.x86_64.rpm
yum -y install oracle-instantclient19.10-sqlplus-19.10.0.0.0-1.x86_64.rpm
yum -y install unixODBC
mkdir -p /usr/lib/oracle/19.11/client64/lib/network/admin
cat <<_ORA_ > /usr/lib/oracle/19.11/client64/lib/network/admin/tnsnames.ora
db01 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx)(PORT = 1521))
(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = db01)
_ORA_
cat <<_INI_ > /etc/odbcinst.ini
[Oracle]
Description = ODBC for Oracle
Driver = /usr/lib/oracle/19.11/client64/lib/libsqora.so.19.1
_INI_
su -s /bin/sh - zabbix -c "odbcinst -j"
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /var/lib/zabbix/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
mkdir /var/lib/zabbix
cat <<_ODBC_ > /var/lib/zabbix/.odbc.ini
[DSNdb01]
Driver = Oracle
ServerName = 10.20.46.62/db01
_ODBC_
su -s /bin/sh - zabbix -c "isql -v DSNtmdb01 ZABBIX zYoRp4hR05DUc"
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> quit
odbc settings are OK here.
Next I setup zabbix.
cat <<_ENV_ >> /etc/sysconfig/zabbix-proxy
TNS_ADMIN=/usr/lib/oracle/19.11/client64/lib/network/admin
LD_LIBRARY_PATH=/usr/lib/oracle/19.11/client64/lib
_ENV_
systemctl restart zabbix-proxy
Create bellow items on the zabbix-server and zabbix proxy
---
Name: Oracle Alive
Type: Database monitor
Key: db.odbc.select[watch-racle-alive,DSNdb01]
User: xxxxxxxx
Password: xxxxxxxx
SQL query : SELECT TO_CHAR( SYSDATE, 'YYYY/MM/DD HH24:MI:SS' ) FROM dual;
Type of information: Text
Update interval: 60s
---
But both item can not connect to the DB
---
Item Status : Not supported
Info: Cannot connect to ODBC DSN: [SQL_ERROR]:[HY000][12170][[unixODBC][Oracle][ODBC][Ora]ORA-12170: TNS:Connect timeout occurred
---
There are some question
1. is odbc setting need for zabbix-server?
2. Where should I create odbc monitring item? zabbix server or zabbix proxy?
Any help would be appreciated.