Gentoo - Calculate : Installer et configurer la supervision Zabbix
Table des matières
ZABBIX est un logiciel permettant de surveiller l'état de divers services réseau, serveurs et autres matériels réseau.
Dans un premier temps, il est nécessaire d'installer apache, php et mysql.
Se référer à l'article http://www.linuxtricks.fr/wiki/installer-lamp-sur-calculate-linux
Vérifier que le système est à jour.
Pour PHP, ajouter au passage les FLAG : sysvipc bcmath xmlreader xmlwriter sockets
Le paquet zabbix par défaut ne comprends que le FLAG ipv6 :
Donc, on va ajouter quelques FLAG intéressants :
On inspecte l'installation :
On ajoute les derniers correctifs :
Enfin, on envoie la sauce :
On se connecte à mysql en root, et on créé la base zabbix :
Ensuite, on importe les structures et données de la base mysql :
On se rend dans le dossier qui contient les fichiers du site web zabbix (adapter le numéro de version en fonction de celle installée) :
On copie les fichiers dans le dossier de travail d'apache :
On supprime le fichier de configuration de zabbix modèle, on le générera par la suite :
On n'oublie pas d'affecter les droits à apache du dossier zabbix :
On vérifie les identifiants MySQL dans le fichier de config du serveur : /etc/zabbix/zabbix_server.conf
On vérifie l'adresse du serveur zabbix dans le fichier de config de l'agent : /etc/zabbix/zabbix_agentd.conf
On démarre les agents et serveurs :
Puis, on ajoute les services au démarrage du serveur :
On se rend sur la page web du serveur : http://ip_du_serveur/zabbix/ et on arrive sur cette page :
On clique sur Next>>
On observe quelques messages d'erreur, on corrige donc dans les fichiers les valeurs mentionnées par la page :
Voici les commandes Oneliner
On recharge la config d'apache puis on clique sur Refresh
Si tout est bon, on clique sur Next>>>
On rempli les infos qui vont bien, on teste la connexion puis Next>>>
On mets les infos correspondant au serveur (par défaut, c'est bon) puis on clique sur Next>>>
Sur l'écran qui vient on a un récap de la configuration à appliquer, on valide en cliquant sur Next>>>
On a un aperçu que le fichier s'est bien écrit :
On arrive sur cette mire :
Et on est connecté ! Youpiii !!
Pour installer l'agent sur d'autres Calculate Linux ou Gentoo, rien de plus simple, on place le USE "agent" dans le packahes.use
Et on installe Zabbix :
On n'oublie pas de démarrer le service
Et de l'ajouter au démarrage
Introduction
ZABBIX est un logiciel permettant de surveiller l'état de divers services réseau, serveurs et autres matériels réseau.
Installer Zabbix
Prérequis
Dans un premier temps, il est nécessaire d'installer apache, php et mysql.
Se référer à l'article http://www.linuxtricks.fr/wiki/installer-lamp-sur-calculate-linux
Vérifier que le système est à jour.
Pour PHP, ajouter au passage les FLAG : sysvipc bcmath xmlreader xmlwriter sockets
Copier vers le presse-papierCode BASH :
echo "dev-lang/php apache2 mysql cgi pam ssl xml sysvipc bcmath xmlreader xmlwriter sockets" >> /etc/portage/package.use/custom
Zabbix serveur et interface PHP
Le paquet zabbix par défaut ne comprends que le FLAG ipv6 :
Copier vers le presse-papierCode BASH :
emerge -pv zabbix
Copier vers le presse-papierCode BASH :
Calculating dependencies... done! [ebuild N ] net-analyzer/zabbix-2.0.9_rc1-r2 USE="ipv6 -agent -curl -frontend -iodbc -jabber -java -ldap -mysql -odbc -openipmi -oracle -postgres -proxy -server -snmp -sqlite -ssh -static" 13,329 kB
Donc, on va ajouter quelques FLAG intéressants :
- agent : pour monitorer le serveur lui même
- frontend : pour avoir l'interface web en PHP
- mysql : la base de données pour stocker les informations.
- server : pour avoir les composants du serveur zabbix
- snmp : pour avoir les modules SNMP qui vont bien
Copier vers le presse-papierCode BASH :
echo "net-analyzer/zabbix agent frontend mysql server snmp" >> /etc/portage/package.use/custom
On inspecte l'installation :
Copier vers le presse-papierCode BASH :
emerge -pv zabbix
Copier vers le presse-papierCode BASH :
Calculating dependencies... done! [ebuild N ] app-admin/webapp-config-1.50.16-r4 102 kB [ebuild N ] net-analyzer/net-snmp-5.7.2_rc1 USE="bzip2 ipv6 ssl tcpd zlib -X -doc -elf -lm_sensors -mfd-rewrites -minimal -perl -python -rpm (-selinux) -ucd-compat" 6,134 kB [ebuild N ] media-libs/gd-2.0.35-r3:2 USE="png truetype zlib -fontconfig -jpeg -static-libs -xpm" 1,185 kB [ebuild N ] net-analyzer/fping-2.4_beta2_p161-r1 USE="ipv6" 71 kB [ebuild R ] dev-lang/php-5.5.4:5.5 USE="apache2 bcmath berkdb bzip2 cgi cli crypt ctype fileinfo filter ftp gd gdbm hash iconv ipv6 json mysql nls opcache phar posix readline session simplexml sockets ssl sysvipc tokenizer truetype unicode xml xmlreader xmlwriter zlib -calendar -cdb -cjk -curl -debug -embed -enchant -exif -firebird -flatfile -fpm (-frontbase) -gmp -imap -inifile -intl -iodbc -kerberos -ldap -ldap-sasl -libedit -libmysqlclient -mhash -mssql -mysqli -oci8-instant-client -odbc -pcntl -pdo -postgres -qdbm -recode (-selinux) -sharedmem -snmp -soap -spell -sqlite (-sybase-ct) -threads -tidy -wddx -xmlrpc -xpm -xslt -zip" 0 kB [ebuild N ] net-analyzer/zabbix-2.0.9_rc1-r2 USE="agent frontend ipv6 mysql server snmp -curl -iodbc -jabber -java -ldap -odbc -openipmi -oracle -postgres -proxy -sqlite -ssh -static" 13,329 kB The following USE changes are necessary to proceed: (see "package.use" in the portage(5) man page for more details) # required by net-analyzer/zabbix-2.0.9_rc1-r2[frontend] # required by zabbix (argument) >=media-libs/gd-2.0.35-r3 png
On ajoute les derniers correctifs :
Copier vers le presse-papierCode BASH :
echo "media-libs/gd png" >> /etc/portage/package.use/custom
Enfin, on envoie la sauce :
Copier vers le presse-papierCode BASH :
emerge -qv zabbix
Configuration des services Zabbix
Base de données
On se connecte à mysql en root, et on créé la base zabbix :
Copier vers le presse-papierCode BASH :
mysql -u root
Copier vers le presse-papierCode SQL :
CREATE DATABASE zabbix; exit;
Ensuite, on importe les structures et données de la base mysql :
Copier vers le presse-papierCode BASH :
cd /usr/share/zabbix/database/mysql mysql -u root zabbix < schema.sql mysql -u root zabbix < images.sql mysql -u root zabbix < data.sql
Interface PHP
On se rend dans le dossier qui contient les fichiers du site web zabbix (adapter le numéro de version en fonction de celle installée) :
Copier vers le presse-papierCode BASH :
cd /usr/share/webapps/zabbix/$version
On copie les fichiers dans le dossier de travail d'apache :
Copier vers le presse-papierCode BASH :
cp -r htdocs /var/www/localhost/htdocs/zabbix
On supprime le fichier de configuration de zabbix modèle, on le générera par la suite :
Copier vers le presse-papierCode BASH :
rm /var/www/localhost/htdocs/zabbix/conf/zabbix.conf.php.example
On n'oublie pas d'affecter les droits à apache du dossier zabbix :
Copier vers le presse-papierCode BASH :
chown -R apache /var/www/localhost/htdocs/zabbix
Configuration du serveur zabbix
On vérifie les identifiants MySQL dans le fichier de config du serveur : /etc/zabbix/zabbix_server.conf
Copier vers le presse-papierCode BASH :
DBName=zabbix DBUser=root DBPassword=
Configuration de l'agent zabbix
On vérifie l'adresse du serveur zabbix dans le fichier de config de l'agent : /etc/zabbix/zabbix_agentd.conf
Copier vers le presse-papierCode BASH :
Server=127.0.0.1
Démarrage des services
On démarre les agents et serveurs :
Copier vers le presse-papierCode BASH :
/etc/init.d/zabbix-server start /etc/init.d/zabbix-agentd start
Puis, on ajoute les services au démarrage du serveur :
Copier vers le presse-papierCode BASH :
rc-update add zabbix-agentd default rc-update add zabbix-server default
Création de fichier de configuration de zabbix web
On se rend sur la page web du serveur : http://ip_du_serveur/zabbix/ et on arrive sur cette page :
On clique sur Next>>
On observe quelques messages d'erreur, on corrige donc dans les fichiers les valeurs mentionnées par la page :
Voici les commandes Oneliner
Copier vers le presse-papierCode BASH :
sed -e 's/post_max_size = 8M/post_max_size = 16M/g' -i /etc/php/apache2-php5.5/php.ini sed -e 's/max_execution_time = 30/max_execution_time = 300/g' -i /etc/php/apache2-php5.5/php.ini sed -e 's/max_input_time = 60/max_input_time = 300/g' -i /etc/php/apache2-php5.5/php.ini sed -e 's/;date.timezone =/date.timezone = "Europe\/Paris"/g' -i /etc/php/apache2-php5.5/php.ini
On recharge la config d'apache puis on clique sur Refresh
Copier vers le presse-papierCode BASH :
/etc/init.d/apache2 reload
Si tout est bon, on clique sur Next>>>
On rempli les infos qui vont bien, on teste la connexion puis Next>>>
On mets les infos correspondant au serveur (par défaut, c'est bon) puis on clique sur Next>>>
Sur l'écran qui vient on a un récap de la configuration à appliquer, on valide en cliquant sur Next>>>
On a un aperçu que le fichier s'est bien écrit :
La connexion tataaaaa !!!!!!
On arrive sur cette mire :
Et on est connecté ! Youpiii !!

Installer l'agent
Pour installer l'agent sur d'autres Calculate Linux ou Gentoo, rien de plus simple, on place le USE "agent" dans le packahes.use
Copier vers le presse-papierCode BASH :
echo "net-analyzer/zabbix agent" >> /etc/portage/package.use/custom
Et on installe Zabbix :
Copier vers le presse-papierCode BASH :
emerge -avq net-analyzer/zabbix
On n'oublie pas de démarrer le service
Copier vers le presse-papierCode BASH :
/etc/init.d/zabbix-agentd start
Et de l'ajouter au démarrage
Copier vers le presse-papierCode BASH :
rc-update add zabbix-agentd
