====== Zabbix ======
===== Installation =====
Sur une debian wheezy (7)
Le plus simple est de lire la doc à propos de l'installation via les packages => https://www.zabbix.com/documentation/2.2/manual/installation/install_from_packages
# wget http://repo.zabbix.com/zabbix/2.2/debian/pool/main/z/zabbix-release/zabbix-release_2.2-1+wheezy_all.deb
# dpkg -i zabbix-release_2.2-1+wheezy_all.deb
# apt-get update
# apt-get install zabbix-server-mysql zabbix-frontend-php
Si votre serveur a été fraîchement installé, plein de paquet vont être installé pour satisfaire les dépendances tel que apache, mysql, php...
Comme le précise la doc, éditez le fichier **/etc/apache2/conf.d/zabbix** et remplacez la ligne
# php_value date.timezone Europe/Riga
par
php_value date.timezone Europe/Paris
On recharge tout ça
service apache2 reload
et on peut maintenant accéder au setup de zabbix via l'adresse http://monserveur/zabbix
Faites next, next ... renseignez les champs si nécessaire .. test connexion ... next ... next ... next ... finish
Ensuite, pour s'identifier, Admin : zabbix
Pensez bien sur à changer ce mot de passe par défaut dans le menu **Profile**
Mettez aussi l'interface en français si vous le souhaitez (bien que toutes les doc sur le net sont anglais, ça peut devenir vite compliqué)
Si comme moi votre serveur tout neuf n'est pas en français, configurez déjà l'heure locale
dpkg-reconfigure tzdata
puis la langue locale
dpkg-reconfigure locales
choisissez fr_FR.UTF-8
fermez puis rouvrez votre session et redémarrez apache mysql, vous pouvez maintenant retourner dans votre profil et choisir la langue française ;)
Configurez les mails dans Administration / Types de média, cliquez sur email et renseignez votre serveur smtp (ici localhost) et les autres champs.
Et ajouter un media email à votre profil.
===== Agent Zabbix =====
Si vous voulez monitorez votre serveur zabbix, vous pouvez installer l'agent, mais il y a déjà le minimum vital. Je conseille d'ailleurs de supprimer le modèle (template) "Linux OS" de l'hôte (host) Zabbix Server, ce qui permettra d'enlever le modèle Zabbix Agent qui générera une erreur puisqu'il n'est pas installé.
Bref, pour installer l'agent
# apt-get install zabbix-agent
Sur d'autre machine, il faudra refaire refaire le wget, apt-get update..
# wget http://repo.zabbix.com/zabbix/2.2/debian/pool/main/z/zabbix-release/zabbix-release_2.2-1+wheezy_all.deb
# dpkg -i zabbix-release_2.2-1+wheezy_all.deb
# apt-get update
# apt-get install zabbix-agent
Si vous souhaitez installer l'agent sur une debian 6, utilisez une version plus vieille comme la 2.0
# wget http://repo.zabbix.com/zabbix/2.0/debian/pool/main/z/zabbix-release/zabbix-release_2.0-1squeeze_all.deb
# dpkg -i zabbix-release_2.0-1squeeze_all.deb
# apt-get update
# apt-get install zabbix-agent
Dans le pire des cas, vous devrez compiler vous même l'agent zabbix.
Une fois l'agent installé sur une machine à monitorer, éditez le fichier de conf
# vi /etc/zabbix/zabbix_agentd.conf
2 méthodes pour monitorer votre serveur, soit c'est le serveur zabbix qui va se connecter aux machines à surveiller (mode passif) soit ce sont les machines à surveiller qui vont se connecter au serveur zabbix (mode actif).
Dans mon cas, ce sera le mode actif, ça évite d'ouvrir un port sur les machines à surveiller.
Renseigner les lignes suivantes
ServerActive=monServeurZabbix
Hostname=aSurveiller.serveur.com
StartAgents=0 (pour désactiver l'agent passif)
Redémarrer l'agent
/etc/init.d/zabbix-agent restart
Vérifiez dans les log si tout se passe bien
vi /var/log/zabbix/zabbix_agentd.log
Vous devriez avoir ceci
22305:20140328:225925.217 Starting Zabbix Agent [aSurveiller.serveur.com]. Zabbix 2.2.2 (revision 42525).
22305:20140328:225925.217 using configuration file: /etc/zabbix/zabbix_agentd.conf
22308:20140328:225925.223 agent #1 started [listener #1]
22309:20140328:225925.224 agent #2 started [listener #2]
22310:20140328:225925.224 agent #3 started [listener #3]
22307:20140328:225925.225 agent #0 started [collector]
22311:20140328:225925.226 agent #4 started [active checks #1]
22311:20140328:225925.239 no active checks on server [monServeurZabbix:10051]: host [aSurveiller.serveur.com] not found
On peut constater que la connexion au serveur Zabbix a bien fonctionné et que celui ci nous indique que notre host n'existe pas, il faut alors le créer via l'interface web zabbix dans configuration / hôtes (hosts)
Par contre le mode actif n'est pas configuré par défaut... Tous les éléments de tous les modèles sont configuré avec un type agent passif.
Pour corriger ce problème, on va se rendre dans le menu configuration / modèle, on va cliquer sur **Elements** de la ligne **Template OS Linux**.
Ici on sélectionne tous les éléments qui comme vous pouvez le voir dans la colonne **Type** sont tous des **agent Zabbix** (passif).\\
Choisissez ensuite dans la liste déroulantes tout en bas de la liste **Modification collective** puis **Exécuter**
Modifiez le type en choisissant **agent Zabbix (actif)**, cliquez sur **Actualiser** et voilà :)
Rendre l'agent actif au reboot
Sur CentOS
chkconfig --add zabbix-agent
chkconfig --level 35 zabbix-agent on
pour vérifier
chkconfig --list
Sur Debian
update-rc.d zabbix-agent defaults
===== MySQL =====
http://blog.les-titans.com/index.php/2013/04/monitoring-de-mysql-sur-zabbix/
===== I/O Disk Stats =====
http://www.denniskanbier.nl/blog/monitoring/monitoring-disk-io-using-zabbix/
http://romain.novalan.fr/wiki/Monitor_a_device_performance_on_Linux_with_Zabbix
===== Windows =====
http://nitishkumar.net/2010/01/03/zabbix-the-simple-yet-ultimate-monitoring-solution-for-corporate/
===== Installation sur synology =====
Trouvez le type de CPU de votre synology => http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have
Pour installer ipkg => http://korben.info/installer-ipkg-sur-synology.html
Sur certain NAS, on peut le trouver dans /opt/bin ou /opt/sbin
Un tuto pour compiler zabbix http://weblog.aklmedia.nl/2011/05/install-zabbix-agent-on-synology/
A rajouter au tuto :
Créer un utilisateur zabbix en éditant le /etc/passwd et /etc/group (je n'ai pas trouvé la commande adduser ou useradd)
echo 'zabbix:x:1200:200::/opt/zabbix:/bin/false' >> /etc/passwd
echo 'zabbix:x:200' >> /etc/group
Lancez l'agent zabbix via la commande
/opt/zabbix/sbin/zabbix_agentd -c /opt/zabbix/conf/zabbix_agentd.conf
On peut vérifier le bon fonctionnement avec ps
> ps | grep zabbix
19600 zabbix 3040 S ./zabbix_agentd -c /opt/zabbix/etc/zabbix_agentd.conf
19601 zabbix 3040 S ./zabbix_agentd: collector [idle 1 sec]
19602 zabbix 3092 S ./zabbix_agentd: active checks #1 [idle 1 sec]
et le fichier de log
> cat /tmp/zabbix_agentd.log
19600:20140708:160131.502 Starting Zabbix Agent [nas3]. Zabbix 2.2.4 (revision 46772).
19600:20140708:160131.503 using configuration file: /opt/zabbix/conf/zabbix_agentd.conf
19601:20140708:160131.507 agent #0 started [collector]
19602:20140708:160131.513 agent #1 started [active checks #1]
19602:20140708:160131.572 active check "system.distrib" is not supported
19602:20140708:160131.573 active check "system.hw.cpu" is not supported
Pour que zabbix-agent se lance au démarrage, j'ai rajouté le fichier suivant
vi /usr/syno/etc/rc.d/S99zabbix.sh
#!/bin/sh
if [ "$1" = "start" -o "$1" = "" ]; then
/opt/zabbix/sbin/zabbix_agentd -c /opt/zabbix/conf/zabbix_agentd.conf
fi
chmod +x /usr/syno/etc/rc.d/S99zabbix.sh
et voila !
---
Suivant les NAS, ce tuto ne marchera pas. Dans ce cas téléchargez les binaires déjà compilés et fournis par zabbix => http://www.zabbix.com/download.php
Regardez le type de processeur avec la commande
uname -a
Linux Nas 3.2.40 #4482 SMP Fri Apr 18 16:52:49 CST 2014 x86_64 GNU/Linux synology_bromolow_rs3412rpxs
On range tout ça sans /opt/zabbix
mkdir /opt/zabbix
cd /opt/zabbix
wget http://www.zabbix.com/downloads/2.2.5/zabbix_agents_2.2.5.linux2_6_23.amd64.tar.gz
tar zxvf zabbix_agents_2.2.5.linux2_6_23.amd64.tar.gz
Créer un utilisateur zabbix
echo "zabbix:x:1200:200::/opt/zabbix:/bin/false" >> /etc/passwd
Modifier le fichier de config et lancé la commande
/opt/zabbix/sbin/zabbix_agentd -c /opt/zabbix/conf/zabbix_agentd.conf
Vérifier le bon fonctionnement
> ps w | grep zabbix
30271 zabbix 18384 S /opt/zabbix/sbin/zabbix_agentd -c /opt/zabbix/conf/zabbix_agentd.conf
30272 zabbix 18384 S /opt/zabbix/sbin/zabbix_agentd: collector [idle 1 sec]
30273 zabbix 18384 S /opt/zabbix/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
Ainsi que les logs
cat /tmp/zabbix_agentd.log
30271:20140901:112142.725 Starting Zabbix Agent [com-nas3]. Zabbix 2.2.5 (revision 47411).
30271:20140901:112142.725 using configuration file: /opt/zabbix/conf/zabbix_agentd.conf
30272:20140901:112142.726 agent #0 started [collector]
30273:20140901:112142.726 agent #1 started [active checks #1]
30273:20140901:112142.730 no active checks on server [172.16.30.84:10051]: host [com-nas3] not found
Ici on voit l'hote "com-nas3" n'a pas été déclaré sur le serveur zabbix
Pour que zabbix se lance au démarrage, j'ai créé le fichier suivant
vi /etc/init/zabbix.conf
description "Zabbix agent"
author "Zabbix"
start on runlevel 1
stop on runlevel [06]
respawn
respawn limit 5 10
console log
expect fork
pre-start script
date
end script
exec "/opt/zabbix/sbin/zabbix_agentd -c /opt/zabbix/conf/zabbix_agentd.conf"
# vim:ft=upstart