Vous ne vous en souvenez peut être pas mais j’avais rédigé, il y a déjà quelque temps, un article vous expliquant comment installer et configurer Observium. Il existe depuis quelques temps un fork d’Observium : LibreNMS. Je vais donc ici expliquer comment installer et configurer LibreNMS (Apache / NGinx).

 

 

Pourquoi utiliser LibreNMS plutot qu’Observium ?

Observium se décline en deux versions : Observium Community Edition et Observium Profesionnal. Comme vous l’avez certainement déjà compris seule la Community Edition est gratuite et elle n’est mise à jour que tous les 6 mois. Si cela ne vous suffit pas pour vous encourager à passer à LibreNMS sachez que ce dernier ne collecte aucune donnée d’utilisation.

Les développeurs de LibreNMS sont donc partis de la dernière version d’Observium disponible sous licence GPL. A noter qu’il existe un script de migration, vous pouvez donc le tester, de mon coté j’ai préféré partir de zéro.

 

 

Installer et configurer LibreNMS

Dans ce post je pars du principe que :

  1. un serveur web est déjà installé sur votre serveur (Apache2 ou NGinx)
  2. un serveur SQL est déjà installé sur votre serveur (MySQL-server ou MariaDB)
  3. vous avez ajouté les dépots dotdeb

 

Installer LibreNMS

Il va falloir comme d’habitude installer quelques paquets.

sudo apt-get install php7.0-cli php7.0-mysql php7.0-gd php7.0-snmp php-pear php7.0-curl php7.0-fpm snmp graphviz php7.0-mcrypt php7.0-json nginx-full fping imagemagick whois mtr-tiny nmap python-mysqldb snmpd php-net-ipv4 php-net-ipv6 rrdtool git

 

Modifiez la configuration snmpd

sudo nano /etc/snmp/snmpd.conf

 

Ajoutez la ligne suivante

rocommunity public 127.0.0.1

 

Sauvegardez le fichier et redémarrez snmpd

sudo service snmpd restart

 

Vous pouvez maintenant télécharger LibreNMS

cd /opt
sudo git clone https://github.com/librenms/librenms.git librenms
cd /opt/librenms

 

Créez les dossiers qui contiendront graphs et logs

sudo mkdir rrd logs
sudo chmod 775 rrd

 

 

Configurer LibreNMS

Configuration de la base de données

Commencez par créer un utilisateur et une base de donnée

mysql -u root -p
<mysql root password>
mysql> CREATE DATABASE librenms_db;
mysql> GRANT ALL PRIVILEGES ON librenms_db.* TO 'librenms_user'@'localhost'
    -> IDENTIFIED BY 'mot de passe db librenms';

 

Configuration de l’interface web

Nous allons créer un utilisateur système librenms et l’ajouter au groupe www-data

sudo useradd librenms -d /opt/librenms -M -r
sudo usermod -a -G librenms www-data
sudo chown -R librenms:librenms /opt/librenms

 

Si vous utilisez Apache2

Créez un nouveau vhost

sudo nano /etc/apache2/sites-available/librenms.conf

 

Utilisez la configuration ci-dessous (Apache 2.4 minimim).

<VirtualHost *:80>
 DocumentRoot /opt/librenms/html/
 ServerName librenms.votre-domaine.tld
 CustomLog /opt/librenms/logs/access_log combined
 ErrorLog /opt/librenms/logs/error_log
 NoDecode
 <Directory "/opt/librenms/html/">
 Require all granted
 AllowOverride All
 Options FollowSymLinks MultiViews
 </Directory>
</VirtualHost>

 

Activez cette configuration ainsi que le mod rewrite puis relancez votre instance d’Apache2

sudo a2ensite librenms.conf
sudo a2enmod rewrite
sudo service apache2 restart

 

Si vous utilisez NGinx

Créez un nouveau vhost

sudo nano /etc/nginx/sites-enabled/librenms.conf

 

Utilisez la configuration ci-dessous

server {
 listen 80;
 server_name librenms.votre-domaine.tld;

 root /opt/librenms/html;
 index index.php index.html index.htm;

 access_log /var/log/librenms.access.log;
 error_log /var/log/librenms.error.log warn;

 client_max_body_size 15M;

 location / {
 try_files $uri $uri/ /index.php?q=$uri&$args;
 }

 location ~ \.php$ {
 try_files $uri =404;
 fastcgi_split_path_info ^(.+\.php)(/.+)$;
 fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 fastcgi_read_timeout 60;
 include fastcgi_params;
 }

 location ~* \.(jpg|jpeg|png|gif|ico)$ {
 expires 365d;
 }
 location ~* \.(pdf|css|js|swf|woff|otf|ttf|svg)$ {
 expires 30d;
 }
}

 

Testez votre configuration et relancez NGinx

sudo nginx -t
sudo service nginx reload

 

Configuration de PHP

 

Cette étape est vitale, si vous ne configurez pas de fuseau horaire LibreNMS ne vous affichera aucun graphique

 

Si ce n’est pas déjà fait définissez votre fuseau horaire dans la configuration PHP : /etc/php/7.0/fpm/php.ini et /etc/php5/cli/php.ini . Recherchez la ligne

;date.timezone =

 

et modifiez la selon votre configuration, ici

date.timezone = Europe/Paris

 

Une fois ces modifications effectuées relancez php-fpm

systemctl restart php7.0-fpm.service

 

Configuration du cron

Créez le cron

sudo cp /opt/librenms/librenms.nonroot.cron /etc/cron.d/librenms

 

 

Terminer l’installation

Connectez vous à l’adresse sur laquelle vous avez configuré votre vhost, et renseignez les informations demandées :

  • adresse de la base de donnée : localhost
  • nom de la base de données : librenms_db
  • mot de passe de la base de données : ce que vous avez choisi
  • login de la base de données : librenms_user

 

Mettre à jour LibreNMS

Pour mettre à jour LibreNMS rien à faire : des mises à jour sont effectuées tous les jours à 00h15 (heure de votre serveur)

 

Source

 

Catégories : Monitoring

Novakin

Passionné d'informatique depuis de longues années je me suis tourné vers Linux et des solutions de virtualisation il y a peu. Ce blog est une sorte de carnet de web où je partage mes mémos.

S’abonner
Notification pour

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

2 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires

Retour d’une personne ayant suivit ton tuto donc je copie/colle :p
Au plaisir ! 😉
——————————————————————————
Package snmp-mibs-downloader is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

2
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x