Afin de pouvoir mettre en place Alertmanager, il faut au préalable avoir mis en place Prometheus ainsi que des alertes que l'on pourra récupérer.
Tout comme Prometheus, il faudra utiliser le code source afin de pouvoir le mettre en place puisqu'il n'est pas présent dans les paquets officiels de Debian Stretch. Cela veut donc dire que, comme pour Prometheus, Golang 1.10 est nécessaire.
Tout d'abord, il va falloir récupérer Alertmanager via son code source. Ce dernier est retrouvable à cette adresse.
Afin de pouvoir lancer l'installation, il faudra d'abord se positionner dans le dossier /home/xxx/src/github.com/prometheus. Une fois ceci fait, si aucune modification n'a été apporté au GOPATH et GOROOT, les commandes golang devraient toujours être opérationnelles.
Il existe 2 solutions afin de pouvoir installer Alertmanager, les 2 provoquant le même résultat. Les 2 seront détaillés ci-dessous.
La première solution consiste à utiliser la commande go get :
go get github.com/prometheus/alertmanager/cmd/... cd /home/xxx/src/github.com/prometheus/alertmanager alertmanager --config.file=<alertmanagerfile.yml>
La deuxième solution consiste à aller chercher le code source et build directement Alertmanager :
cd /home/xxx/src/github.com/prometheus git clone https://github.com/prometheus/alertmanager.git cd alertmanager make build ./alertmanager --config.file=<alertmanagerfile.yml>
Il existe de nombreux paramètres qu'il est possible de mettre en place dans le fichier d'Alertmanager afin de mettre en place le système d'alerte qui correspond le plus aux attentes. Il est possible par exemple de choisir de mettre en place un système d'alerte par e-mail, hipchat, pagerduty… ou encore le serveur SMTP à utiliser pour envoyer les mails…
Pour avoir plus de détails sur les différentes modifications que l'on peut apporter au fichier, le lien suivant montre toutes les possibilités qu'il existe. On va ici détailler les plus importants :
Un exemple complet de configuration du fichier alertmanagerfile.yml est présent sur le site envoyé plus haut, chaque paramètre étant expliqué en détail.
Après toute modification apportée au fichier de configuration alertmanagerfile.yml, pour que tout soit bien pris en compte, il faudra utiliser la commande “kill” afin de relancer le process. Mais pour pouvoir utiliser cette commande, il est nécessaire de connaître le Process ID (ou PID) qu'il faudra indiquer. Pour récupérer ce dernier, il suffit d'utiliser la commande :
ps aux| grep alertmanager
Une ligne avec indiqué “./alertmanager –config.file=alertmanagerfile.yml” devrait s'afficher. Il suffit alors de récupérer le PID qui correspond (Il s'agit de la valeur présente au niveau de la deuxième colonne) et de taper la commande suivante :
kill -1 PID
Si Alertmanager était bien démarré et que le PID indiqué correspondait bien, une ligne devrait apparaître indiquant qu'Alertmanager est en train de redémarrer :
caller=main.go:305 msg="Loading configuration file" file=alertmanagerfile.yml