Chez Aurore est utilisé Prometheus pour monitorer/surveiller les différents serveurs, machines virtuelles, et services. Chaque résidence a une machine virtuelle Prometheus, et une instance Prometheus est aussi déployée pour les services d'Aurore.
Créer une machine virtuelle de 16Gb sur l'hyperviseur de la résidence. Pour le partionnement, 1Gb en swap, 8Gb sur /var et 7Gb sur slash. Configurer le réseau sur le VLAN admin (donc VLAN 128), en respectant le plan IP (10.128.x.252). Pour l'installation à proprement parler, utiliser cette page https://wiki.auro.re/technique:nouvelle-vm
Pour pouvoir récupérer les informations de la résidence en question, il faut les VLAN suivants :
Penser à faire la configuration IPv6 (utilisé par Prometheus / Grafana).
Déployer ansible base sur la VM (en ayant ajouté la machine dans le fichier hosts)
Dans le fichier monitoring.yml, ajouter la machine, et mettre les targets à monitorer dans cette instance. Déployer ensuite ansible monitoring sur cette machine.
Le monitoring est lancé.
Se connecter sur Grafana. Il faut le rôle Admin pour ajouter la datasource.
Ajouter la Datasource Prometheus précédemment déployée comme datasource.
Les données sont accessibles avec le select sur l'accueil.
Pour le monitoring Onduleurs, il faut pour chaque panel ajouter une query sur la datasource précédemment créée.
Sur les serveurs il faut avoir déployé le playbook monitoring, qui va installer prometheus-node-exporter (avec smartmontools pour les serveurs physiques). Sans ce package, Prometheus donnera une erreur 500 sur le serveur où le package est manquant.
Autre possibilité que le serveur apparaisse down : mauvaise configuration ipv6 du serveur à monitorer. Sur la VM, tenter un ping -6 {instance}.adm.auro.re
Si le ping ne donne pas la bonne IP v6, vérifier sur re2o que la bonne ip a été activée. Dans le cas où sur re2o c'est correctement configuré, vider le cache sur le dns récursif : sur dns-aurore faire sudo rndc flush
Retenter le ping, si ça donne la bonne ip, mais que ça ne répond pas, vérifier la configuration ipv6 sur le serveur à monitorer.
L'ip v6 doit être désactivé pour les bornes (choix d'infrastructure !).
Se connecter sur le contrôleur unifi de la résidence, dans les paramètres, onglet Services, vérifier que le SNMPv3 est activé, et vérifier les identifiants, avec un autre contrôleur unifi. Attention, cette étape reboot toutes les bornes !!
Pour vérifier l'accessibilité d'une borne : snmpwalk -v 3 -a SHA -x AES -u snmp_prometheus -A "MOT DE PASSE" -X "MOT DE PASSE" -l authPriv addresse-de-la-borne
Vérifier la configuration ipv6 de l'onduleur (idem que sur les serveurs).
Activer le SNMPv1, avec la communauté public (readonly).
Pour vérifier que tout est bon : snmpwalk -v 1 -c public onduleur.auro.re
Si ça fonctionne en snmpwalk, mais pas avec Prometheus, relancer prometheus-snmp-exporter : sudo systemctl restart prometheus-snmp-exporter
.
Désinstaller smartmontools sur les VM (fait dans le playbook ansible base).
Vérifier la configuration réseau de la machine. Une seule gateway par interface, …
Pour corriger le problème, nous avons installé ifupdown2 sur les hyperviseurs et sur des VM qui avaient l'erreur.
Procédure :
sudo apt install ifupdown2
diff
entre la configuration “actuelle” et la nouvelle.sudo ifreload -a