Table des matières

Zabbix

Installation et configuration du serveur Zabbix

Installation avec des paquets :

https://www.zabbix.com/documentation/3.0/manual/installation/install_from_packages

Installation sous debian Jessie

wget http://repo.zabbix.com/zabbix/3.0/debian/pool/main/z/zabbix-release/zabbix-release_3.0-1+jessie_all.deb
dpkg -i zabbix-release_3.0-1+jessie_all.deb
apt-get update
apt-get update
apt-get install zabbix-server-pgsql zabbix-frontend-php php5-pgsql

ou

apt-get update
apt-get install zabbix-server-mysql zabbix-frontend-php

J'ai choisi d'utiliser Postgresql car on utilise Mariadb et le paquet Zabbix exige Mysql. Le paquet php5-pgsql est forcé manuellement pour éviter le paquet php5-mysql qui est en conflit avec php5-mysqlnd que l'on utilise.

Vérifier la configuration pour postgresql, l'authentification doit se faire par mot de passe pour les connexions locales. Dans pg_hba.conf :

local  all  all  md5

Configuration de la base de données et démarrage

# cd /usr/share/doc/zabbix-server-pgsql/
# su postgres
$ psql
> CREATE DATABASE zabbix;
> CREATE USER zabbix PASSWORD '....';
> GRANT ALL ON DATABASE zabbix TO zabbix;
> \q
$ zcat create.sql.gz | psql zabbix -U zabbix -W
$ exit
# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=....
# service zabbix-server start

Configuration de l'interface Web

# vi  /etc/apache2/conf-available/zabbix.conf
        php_value date.timezone Europe/Paris
# service apache2 reload

On peut maintenant joindre : https://monsite/zabbix/setup.php pour la suite de l'installation.

Configuration de la base de données (j'ai pas fait comme ça, j'ai dû modifier à la main après coup, mais cette config devrait marcher) :

Les autres écrans sont à valider sans modification.

On peut ensuite se connecter et changer les mots de passe, et configurer LDAP :

Les utilisateurs créés vont s'authentifier sur l'annuaire, mais il est nécessaire de les créer à la main.

Envoi de mail

Il faut configurer le service pour qu'il puisse envoyer des mails. Dans Administration>Type de média sélectionnez E-mail.

Utilisation

Découverte de l'agent

Avant d'installer les agents sur les machines, il faut configurer la découverte des agents, de façon à ce qu'ils soients automatiquement ajoutés aux hôtes dès qu'ils sont configurés.

Pour résumer :

Aller dans Configuration → Action, choisir “Source de l'évènement : enregistrement automatique” et créer.

Dans les adresses IP, mettre ce qui est lié au VPN.

Installation et configuration de l'agent

Tout d'abord, installer :

apt-get install zabbix-agent

Quatre options à configurer dans l'agent (/etc/zabbix/zabbix_agend.conf) après son installation :

Server=10.10.100.1
ListenIP=10.10.100.XX # adresse IP de la machine sur le VPN
ServerActive=10.10.100.1
Hostname=xxxxxxx # nom de la machine

Cela nécessite au préalable que le VPN soit configuré et actif sur le serveur, s'il y a un VPN. Pour finir, relancer l'agent :

systemctl restart zabbix-agent

Optionnellement, aller sur l'interface de Zabbix et vérifier la configuration de l'hôte : groupe linux servers et template agent zabbix, inventaire automatique.

Démarrage automatique

Ces options devraient permettre que les services se relancent automatiquement au démarrage :

systemctl enable zabbix-agent
systemctl enable zabbix-server

On peut vérifier le succès de cette opération avec ces commandes :

systemctl status zabbix-agent
systemctl status zabbix-server

Si on voit une ligne avec Active: active c'est bon :

Active: active (running) since Thu 2018-03-01 10:03:32 CET; 1 minute ago

Mise en place d'outils

Monitoring de la présence d'etherpad : scénario web et déclencheur

Une fois connecté au frontend web, aller dans configuration, hôtes. On obtient le menu dont une copie est placée ci-dessus.

Un liste des hôtes est disponible, avec les différentes possibilités de paramétrage liées. Exemple :

Zabbix server	Applications 12	Éléments 73	Déclencheurs 45	Graphiques 16	Découverte 2	Web 1	10.10.100.1: 10050	Template App Zabbix Server, Template OS Linux (Template App Zabbix Agent)	Activé

On va utiliser un scénario web, et donc on clique dessus pour ouvrir la configuration des scénarios liés au poste que l'on veut tester, puis sur “Créer un scénario Web” en haut à droite de la page.

On donne un nom “Test Etherpad”, on crée une nouvelle application “Web application”, puis on clique sur l'onglet “étapes”.

On fait ajouter, on met un nom, l'url, et code d'état requis : 200

Penser à valider, c'est maintenant utilisable pour un graphique, mais il faut ajouter un déclencheur. Cliquer donc sur déclencheur, “Créer un déclencheur” en haut à droite. Lui donner un nom et construire une expression, j'ai mis “{Zabbix server:web.test.fail[Pad].last()}>0” en la construisant avec l'interface en cliquant sur “Ajouter”. Ce qui signifie que le déclencheur est activé si au moins une des étapes du scénario web a échoué. Choisir une sévérité, j'ai mis “Haut”. Valider.

Ce déclencheur est ce qui va générer des alarmes.

Un graphique

Le graphique sert aussi à collecter les données.

Cliquons maintenant sur graphique. En faire un nouveau, lui donner un nom, et ajouter des éléments. Cocher ceux qui nous intéressent, en rapport avec le scénario, ajouter et valider.

Vérifions le graphique dans “Surveillance” “Graphique”, on peut choisir le graphique en choisissant d'abord le groupe et l'hôte qui conviennent. Cliquer sur le + sur fond bleu permettra de trouver le graphique listé sur la page d'accueil.

Un écran

Un écran regroupe plusieurs graphiques.

Dans “Surveillance” “Écrans”, créer un écran, lui choisir un nom et une taille.

Dans chaque case, on choisit un graphique à afficher.

Cliquer sur le + sur fond bleu permet d'afficher un lien sur la page d'accueil.

L'écran : https://khaganat.net/zabbix/screens.php?elementid=20 récapitule pas mal de graphiques.