понедельник, 3 августа 2015 г.

Мониторинг Oracle из Zabbix'а

Мониторинг осуществляется Zabbix'ом, но у нас появились базы данных на Oracle. И как самы оптимальный вариант был найден BDforBIX.
В первую очередь потому что его можно установить на хост Zabbix'а.
Во вторых можно его использовать не только для Oracle'а.

Дано: Ubuntu Server 14.04 с установленным Zabbix'ом 2.4.5.

Загрузим последний дистрибутив DBforBIX
wget http://www.smartmarmot.com/downloads/dbforbix-0.6.1.zip
Доставим не хватающие пакеты
apt-get install unzip
Установим
unzip dbforbix-0.6.1.zip -d /tmp/dbforbix
mv /tmp/dbforbix /opt
cp /opt/dbforbix/init.d/dbforbix /etc/init.d/dbforbix
chmod +x /etc/init.d/dbforbix
chmod +x /opt/dbforbix/run.sh
Поправим /opt/dbforbix/conf/config.props
#Список серверов Zabbix
ZabbixServerList=ZabbixServer1
#сервер-1 Zabbix
ZabbixServer1.Address=127.0.0.1#сервер-1 Zabbix
ZabbixServer1.Port=10051
#pidFile
DBforBIX.PidFile=./logs/DBforBIX.pid
#frequency of item's refresh
DBforBIX.Sleep=30
#MaxThreadNumber should be >= than the number of your databases
DBforBIX.MaxThreadNumber=100
#описание подключаемых БД
DatabaseList=ORACLEDB1
#Configuration of Connection poo
#if not specified Orabbis is going to use default values (hardcoded)
#Maximum number of active connection inside pool
DatabaseList.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=100
DatabaseList.MaxIdle=1
###Oracle #настройка коннекта к БД
ORACLEDB1.Url=jdbc:oracle:thin:@ORACLE_IP:1521:ORACLE_SID
ORACLEDB1.User=ZABBIX
ORACLEDB1.Password=****PASSWORD****ORACLEDB1.DatabaseType=oracle
ORACLEDB1.QueryListFile=./conf/oraclequery.props
ORACLEDB1.MaxActive=10
ORACLEDB1.MaxWait=100
ORACLEDB1.MaxIdle=1

ORACLE_IP - Адрес/DNS имя сервера Oracle
ORACLE_SID - Эквивалентен имени базы данных
ZABBIX - Имя пользователя в Oracle DB
****PASSWORD**** - Пароль пользователя ZABBIX в Oracle DB

Изначально используем преложенный список запросов
cp /opt/dbforbix/conf/oraclequery.props.sample /opt/dbforbix/conf/oraclequery.props
Скачаем с сайта Oracle'а  ojdbc6.jar и загрузим его на сервер. Качаем на примет от сюда.
Переместим в директорию библиотек
mv /home/user/ojdbc6.jar /opt/dbforbix/lib/
Так как у нас Ubuntu, нужно поправить /etc/init.d/dbforbix верх приведем к виду
#!/bin/sh
### BEGIN INIT INFO
# Provides:             dbforbix
# Required-Start:       $remote_fs $syslog
# Required-Stop:        $remote_fs $syslog
# Default-Start:        2 3 4 5
# Default-Stop:
# Short-Description:    dbforbix
### END INIT INFO
# Source function library.
. /lib/lsb/init-functions
# Check that networking is up.
state=`/sbin/ip link | awk '/eth0/{print $9}'`
[ "${STATE}" = "DOWN" ] && exit 0
Изначально на сервере не была установлена JAVA, установим
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java8-installer
Не забываем дать права пользователю ZABBIX в ORACLE'e

Теперь можно импортировать в ZABBIX шаблон расположенный  /opt/dbforbix/template/ и настроим мониторинг

Имя узла ДОЛЖНО ОБЯЗАТЕЛЬНО совпадать с названием в конфиге DBforBIX


Комментариев нет:

Отправка комментария