CentOS

Serveur de monitoring Zabbix

proxy

Ma problématique était de mettre en place un serveur de monitoring, rapidement et relativement souple. En effet, une de mes contraintes étaient le monitoring de serveur Mac OSX, j’ai donc pris mon ami Google, et suis tombé sur un projet sur lequel j’étais passé il y a quelque temps : Zabbix. Je vais vous faire ici une bref présentation, vous pourrez retrouver des complément d’information dans liens plus bas.

Introduction

Je me suis donc tourné vers Zabbix, après mettre arraché les cheveux sur Centreon+Nagios. L’un des avantages pour moi, c’est que tous est regroupé dans une base de données, SqLite, Mysql… ce qui permet une centralisation des données, et une sauvegarde facile. On peut aussi mixer les types de bases serveur et proxy. Notre petit Zabbix permet donc (entre autres) :

  • Monitoring of remote services (FTP, SSH, HTTP, other)
  • Support of SNMP v1,2,3
  • Support of IPMI
  • SNMP traps
  • Automatic execution of remote commands
  • Automatic IPMI commands
  • Auto discovery
  • Alerting users (Email, SMS, Jabber)
  • Agent-based monitoring
  • Proxy/Node
  • All platforms supported (UNIX, Windows, Novell)
  • Liste complète…

Le Serveur

Je suis partis sur CentOS, c’est un choix, il fallait le faire, et l’idée d’installer le serveur sous MacOSX :p. L’installation ce passe sans problème en suivant ce petit Howto. Seul petit problème rencontré lors de l’importation d’image, qui se règle rapidement en convertissant la table image en UTF-8 (lorsque l’on ne suit pas le tuto de danny :p ) :

USE zabbix;
ALTER DATABASE zabbix charset=utf8;
ALTER TABLE images charset=utf8;

Passé ce petit détail, c’est que du bonheur ;)

Les Agents

MacOSX

Le plus dur dans tous ceci, était de faire tourner l’agent sous MacOSX, même si celui-ci reste limité sous MacOSX. Il est vrai que l’on dispose de GCC sous MacOS, mais lorsque celui-ci est compilé avec les pieds, la chose devient plus compliqué. Il l’a donc était impossible de compiler l’agent en « static ». Pas grave je suis donc testé en compilation standard, ce qui ne m’a pas posé plus de problème que ça. La difficulté vient de la mise en place de script au démarrage, ça était pour moi un vrai parcourt du combattant (surtout que l’agent zabbix ne doit pas être lancé sous root). Je mets donc à disposition mon petit agent Zabbix compilé sous Intel i386, avec une petit script d’installation agent/proxy et tous les scripts launchd qui vont biens zabbix-agent-1.8.2-intel

Linux

Je vous passe les détails, toutes bonnes distributions disposent dans ses dépôts du proxy, de l’agent, du serveur pré-compilé, la configuration ne prends que 5 minutes.

Le Proxy

Un des avantages de Zabbix est pour moi le mode Serveur/Proxy. Il permet en effet d’avoir un serveur d’administration unique, et de disposer des serveur proxy qui vont aller récolter toutes les informations sur leurs sous réseau, pour ensuite remonter le tous vers le serveur principal. Ce qui implique pas une trentaine de ports ouverts sur le firewall, et une configuration très simple. La cerise sur le gâteau, est que le proxy se configure aussi simplement de l’agent, et le format de base de données peut être différent que le serveur. On peut très bien par exemple faire tourner le Proxy sous SQlite, ce qui n’impose pas de sortir l’armada (MySQL…) Vous pouvez d’ailleurs retrouver le proxy pré-compilé dans l’archive.

Le Frontend

La partie configuration ce passe au travers d’une interface en PHP. Le seul petit bémol pour moi reste l’interface de configuration, qui est au premier abord déroutante, il faut en effet avoir fait 10 fois le tours pour commencer à si retrouver, ce qui pourrait en inviter plus d’un à passer leurs chemin, malgré la puissance de cet outil… Je vous laisse juger par vous même sur excellent wiki.monitoring-fr.

Mes Templates

Vous pourrez trouver attaché au billet, mes petits templates (zbx_templates_export-xml-tar) pour :

  • Template_D-Link-DGS
  • Template_EpsonPrinter
  • Template_Standalone
  • Template_MacOS_X-Server

Concluions

Zabbix reste pour moi une bonne découvert, comparé au duo Nagios/Centreon il reste peut-être un peu moins souple sur les services monitorés, mais a l’avantage de s’installer en 5 minutes. Niveau performance, c’est vraiment égale (pour moins de 50 machines), un produit à découvrir. Reste maintenant un gros travail de réglage au niveau des services pour du MacOSX Server. Si vous avez des template pour du monitoring de services sous MacOSX je suis preneur ;)

Laisser un commentaire