通过 ODBC 方式,Zabbix 可以监控 Oracle 数据库服务。以下是详细步骤:

1. 安装 ODBC 驱动

安装 unixODBC

CentOS/RHEL

yum install unixODBC

Ubuntu/Debian

apt-get install unixodbc
安装 Oracle Instant Client

从 Oracle 官方网站下载 Oracle Instant Client 的 RPM 或 DEB 包,并安装:

CentOS/RHEL

yum install oracle-instantclient19.8-basic.x86_64.rpm
yum install oracle-instantclient19.8-devel.x86_64.rpm

Ubuntu/Debian

dpkg -i oracle-instantclient19.8-basic.deb
dpkg -i oracle-instantclient19.8-devel.deb

2. 配置 ODBC

配置 odbcinst.ini

编辑 /etc/odbcinst.ini 文件,添加 Oracle 驱动配置:

[Oracle19c]
Description = Oracle ODBC driver for Oracle 19c
Driver = /usr/lib/oracle/19.8/client64/lib/libsqora.so.19.1
配置 odbc.ini

编辑 /etc/odbc.ini 文件,添加数据源名称 (DSN) 配置:

[OracleDB]
Description = Oracle ODBC connection
Driver = Oracle19c
ServerName = <Oracle_DB_IP>:1521/<SID>
UserID = zabbix
Password = password

3. 创建 Zabbix 用户并授予权限

在 Oracle 数据库中,创建一个用户并授予必要权限:

CREATE USER zabbix IDENTIFIED BY 'password';
GRANT CONNECT TO zabbix;
GRANT SELECT ANY DICTIONARY TO zabbix;

4. 安装并配置 Zabbix Agent

CentOS/RHEL

yum install zabbix-agent

Ubuntu/Debian

apt-get install zabbix-agent

编辑 Zabbix Agent 配置文件 /etc/zabbix/zabbix_agentd.conf

Server=<Zabbix_Server_IP>
Hostname=<Hostname_of_Oracle_Server>

5. 配置 Zabbix Agent 使用 ODBC

在 Zabbix Agent 配置文件中添加自定义 ODBC 监控项:

UserParameter=oracle.query[*],/usr/bin/isql -v OracleDB "$1"

6. 重新启动 Zabbix Agent

systemctl restart zabbix-agent

7. 配置 Zabbix Server

导入模板

从 Zabbix 官方或社区下载适用于 Oracle 的模板,并导入到 Zabbix Server。

配置监控项

在 Zabbix Web 界面中:

  1. 导入 Oracle 模板。
  2. 在“Configuration” -> “Hosts” 中,选择目标主机。
  3. 将导入的 Oracle 模板链接到目标主机。
添加监控项

根据需要,添加自定义监控项。例如,监控 Oracle 会话数:

  1. 导航到“Configuration” -> “Hosts”。
  2. 选择目标主机并点击“Items”。
  3. 点击“Create item”,并填写如下信息:
    • Name: Oracle Sessions
    • Type: ODBC
    • Key: oracle.query[select count(*) from v$session]
    • Type of information: Numeric (unsigned)
    • Applications: Oracle

8. 验证监控

确保 Zabbix Server 能接收到 Oracle 数据库的监控数据。查看 Zabbix 前端的最新数据和图表,确认监控项是否正常工作。

通过以上步骤,您可以在 Zabbix 中使用 ODBC 方式实现对 Oracle 服务的监控。如果有任何问题,可以查看 Zabbix Agent 和 Server 的日志文件,以帮助排查故障。

更多推荐