Vous avez certainement eu besoin de superviser des bases de données Oracle avec Nagios/Icinga/Centreon mais vous n’avez pas trouvé de solution concrète. Pas de panique il y a une solution assez simple à mettre en oeuvre, dans cette article nous allons vous décrire les différentes étapes pour superviser vos bases de données Oracle.

Choix du plugin

Dans un premier temps nous utiliserons le plugins check_oracle_health qui fournit des métriques intéressantes. Pour plus d’informations sur ce plugins, cliquez sur le lien suivant:

http://labs.consol.de/lang/de/nagios/check_oracle_health/

Ce plugin doit être compilé et pour l’installer il faut entrer les commandes suivantes:

root@central-centreon:~# tar -xvf check_oracle_health-1.7.3.tar.gz
root@central-centreon:~# cd check_oracle_health-1.7.3
root@central-centreon:~# ./configure --program-prefix=plugins/ --libexecdir=/usr/lib/nagios --with-mymodules-dir=/usr/lib/nagios/plugins  --with-statefiles-dir=/tmp
root@central-centreon:~# make
root@central-centreon:~# make install

Le plugin check_oracle_health a été installé et se trouve dans le répertoire /usr/lib/nagios/plugins/.

Installation des Pré-requis pour utiliser le plugin

root@central-centreon:~# yum install libdbi-drivers
root@central-centreon:~# yum install libdbi
root@central-centreon:~# yum install perl-DBI

Il faudra installer aussi installer Oracle instant client, la liste des paquets est la suivante:

  • oracle-instantclient-basic;
  • oracle-instantclient-devel;
  • oracle-instantclient-jdbc;
  • oracle-instantclient-sqlplus;

Pour information, aujourd’hui deux versions disponible en téléchargement, à savoir Oracle instant client 11.2 et 10.2.0.5. La version 11.x est rétro-compatible jusqu’à Oracle 9 et la version 10.x est rétro-compatible jusqu’à Oracle 8. Ces paquets sont disponible en téléchargement sur le site de l’éditeur.

Une fois les différents paquets Oracle instant client installé, il faudra installer la librairie perl DBD-Oracle. Pour ce faire il vous faudra télécharger DBD-Oracle sur CPAN puis le copier sur votre serveur de supervision.

Avant de décompresser l’archive, il faudra créer quelques variable d’environnement pour DBD-Oracle. Editez le fichier /etc/profile de votre système d’exploitation pour y ajouter les lignes suivantes:


ORACLE_HOME=/usr/lib/oracle/10.2.0.5/client64
PATH=$PATH:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib/
export ORACLE_HOME
export PATH
export LD_LIBRARY_PATH

Pour la variable ORACLE_HOME, il vous suffit de la compléter de la façon suivante /usr/lib/oracle/version-oracle/client-architecture. Dans l’exemple ci-dessus, il s’agit de Oracle instant client 10.2.0.5 sur une architecture 64 bit.

root@central-centreon:~# tar -xvf DBD-Oracle-1.44.tar.gz
root@central-centreon:~# cd DBD-Oracle-1.44
root@central-centreon:~# perl Makefile.PL
root@central-centreon:~# make
root@central-centreon:~# make install

Maintenant que DBD-Oracle est installé, nous allons nous connecté avec l’utilisateur Nagios pour tester notre plugin avant de la rajouter dans Centreon.

root@central-centreon:~# su - nagios

nagios@central-centreon:~% /usr/lib/nagios/plugins/check_oracle_health --connect='(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.122.21)(PORT=1531))(CONNECT_DATA=(SID=sidoracle)))' --username=nagios --password=nagiossecret --mode=tnsping --warning=60 --critical=600
OK - connection established to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.912221)(PORT=1531))(CONNECT_DATA=(SID=sidoracle))).

Il semblerait que tout soit fonctionnel, il ne vous reste plus qu’à rajouter les commandes et modèles nécessaires dans Centreon pour superviser vos base de données Oracle.