Supervision

Supervision, Métrologie, Centralisation

Pendant ma période de stage du lundi 8 janvier au 19 février dans l’entreprise VINC spécialiste de l’intégration logicielle clé en main, je me suis occupé de la refonte de la supervision, que ce sois pour les choix, la conception et la maintenance.

Cette supervision a pour but de :

  • Superviser les éléments actifs (IDRAC, Switchs, Firewalls) des hyperviseurs (PROXMOX 5 et 3.5) et enfin des conteneurs openvz et lxc.
  • Avoir des mesures précises sur l’infrastructure (métrologie) comme la bande passante sortante ou encore l’espace disque utiliser.
  • Pouvoir rapatrier la configuration des éléments actifs (routeurs BGP, Firewall, Switchs).
  • Centraliser les logs de ces éléments actifs.
  • Et d’autres services nécessaires tels qu’un relai DNS ou relai NTP.

L’ancienne supervision n’étant plus du tout a jour (debian 5) j’en est profiter pour installer une debian 8 bien plus stable et robuste, la LTS ce terminant fin 2020 nous pourrons par la suite la mettre a jours en debian 9 qui est encore jeune.

 

Supervision

J’ai donc choisi nagios core en derniere version avec le thème vautour, j’ai eu le temps de testé plusieurs systeme de supervision tel que icinga2 et zabbix mais ne convenait pas a notre demande, nagios ma semblé être la solution la plus juste pour notre infrastructure très homogène et a la facilité d’ajouts d’un service a supervisé (snmp/ssh/nrpe contrairement à un agent).

comme dit auparavant ayant une infrastructure très homogène j’ai pu créer des groupes contenant des services pré sélectionnés, par exemple tous les IDRAC (par snmp v2) auront tous les mêmes besoins et services :

de même que pour les firewalls qui sont des pfsense ou des cisco asa voici un exemple d’un pfsense supervisé par ssh :

Métrologie

Pour la métrologie j’ai choisi librenms (fork d’observium) pour ça simplicité de supervision de plus il permet d’avoir des prévisions sur la bande passante utilisée au 95percentil, de créer des alertes quand une session BGP ou un port tombe. Chose très pratique librenms n’a pas besoin d’être informé des éléments a rapatrié il les trouve tout seul. Il permet aussi d’effectuer des tests personnalisé à la manière de nagios en créant des services pour faire des graphiques (variation ntp etc.). J’ai aussi pu lié librenms a slack pour avoir les alertes, il existe aussi une intégration librenms <-> smokeping permettant d’afficher les données de celle-ci dans librenms et d’ajouté d’hôte dans smokeping automatiquement.

j’ai néanmoins gardé l’ancienne métrologie qui était cacti que j’ai aussi mis a jour, l’importation des anciennes données (graphique rrd) a été un peu fastidieuse du au grand nombre de graphique a transféré, j’ai utilisé le script d’exportation  dédié a cacti (rrd – > xml; xml – > rrd). cela nous permet de ne pas perdre les données de ces 5 dernières années.

 

Centralisation des configurations

Pour la sauvegarde des éléments actifs j’ai choisi oxidized du a ça grande communauté active, de sont très grand nombre d’éléments supportés et de sa facilité d’ajout de composant. Oxidized étant basé sur git il nous permet d’avoir un mail a chaque changement de configuration avec la différence dans celle ci.j’ai gardé l’ancien afficheur SVN (viewvc) afin d’avoir l’historique des changements.

 

Centralisation des logs

Pour la centralisation des logs j’ai opté pour syslog-ng bien plus robuste et flexible que syslog me permettant de créer un dossier et des fichiers logs automatiquement pour chaque hôte envoyant ces logs.

J’ai ensuite utilisé logrotate pour 2 raisons la 1ere est la taille conséquente des logs ASA (de l’ordre de 300mo par jours) et pour affiné mes recherches pour logwatch.

et enfin logwatch j’ai créer 2 services un pour les switchs et un pour les firewalls cela nous permet d’avoir un compte rendu détaillé de ce qu’il se passe sur l’infrastructure comme un changement ntp, connexions SSH etc.

 

Autres

Pour les besoins de l’infrastructure quelques machine ayant besoin d’internet j’ai installé un proxy tinyproxy très simple et léger avec un script nous permettant de savoir toutes les requêtes effectuer le tout avec un rapport journalier par email.

Un relai DNS et NTP pour les switchs.

et une petite front page avec un looking glass permettant d’avoir la route (as) de l’IP choisi :).

Compétences

Posté le

6 mars,2018