Howto : comment configurer monit pour surveiller FreeSwitch

Mathias WOLFF published on
2 min, 364 words

Categories: VoIP

Il est essentiel de surveiller les services que nous déployons au sein de nos entreprises ou pour nos clients.

Je vais vous présenter aujourd'hui comment superviser FreeSwitch avec Monit. Monit est un outil léger open source (licence AGPL) permettant de superviser et de gérer les systèmes Unix. Il est capable d'exécuter des actions en cas de détection de défaillance. Monit est disponible sous forme de paquet dans la plupart des distributions. L'installation sur un système basé sur Debian est très simple :

apt-get install monit

pour Centos, ce n'est pas plus compliqué :

yum install monit

La première chose à faire est de vérifier que la variable "START" a bien la valeur yes dans le fichier /etc/default/monit afin de permettre à Monit de démarrer. Ensuite, la configuration centrale de Monit se fait au sein du fichier monitrc localisé sous /etc/monit. Dans ce fichier, vous pouvez notamment modifier l'adresse email qui recevra les alertes. Ensuite, les configuration sont dans le répertoire /etc/monit/conf.d . Nous allons créer un fichier nommé freeswitch et y ajouter les lignes suivantes :

check process freeswitch with pidfile /usr/local/freeswitch/run/freeswitch.pid
  start program = "/etc/init.d/freeswitch start"
  stop program  = "/etc/init.d/freeswitch stop"

Nous allons simplement vérifier que FreeSwitch est bien démarré et si ce n'est pas le cas, nous demandons à Monit de le démarrer. Avant de lancer Monit, vérifier bien que la syntaxe des fichiers de configuration est bonne avec la commande :

monit -t

Vous devez obtenir une belle réponse "Control file syntax OK". Nous allons maintenant compléter notre test afin de s'assurer que le process SIP est toujours fonctionnel. Pour cela, nous allons ajouter les lignes suivantes à notre fichier :

check host fs_server with address 127.0.0.1
   if failed port 5060 type udp protocol sip
      with target "localhost:5060" and maxforward 6
   then alert

En cas de dysfonctionnement, Monit vous enverra un mail d'alerte (attention à bien configurer votre mail et serveur dans le fichier monitrc). Il possible de pousser aussi la supervision plus loin, selon le taux d'utilisation de votre machine, vérifier les process, les fichiers de log ... et l'usage de la solution M/Monit permet un monitoring de vos serveurs centralisé simplement.