Installer, configurer et gérer le sous-domaine "healthcheck"
Notes :
- Ce domaine hébergera l'outil Healthcheck permettant de surveiller les exécutions des Cron des serveurs et éviter de recevoir des emails inutiles. L'outil préviendra de la non exécution d'un Cron.
- Il est embarqué dans un container Docker et fait partie de la stack healthcheck.
- Le serveur bkp-srv devrait utiliser un container nginx-proxy comme serveur web pour tous les outils hébergés dessus.
Ressources :
Installer la stack Docker Compose "healthcheck"
- Se connecter au serveur bkp-srv sur l'utilisateur admin
- Assurez vous que le serveur bkp-srv possède un container nginx-proxy utilisé comme serveur Nginx global de ce serveur. Pour cela, vérifier la présence du dossier
~/proxy/
. S'il n'existe pas, mettre en place cette "stack" en vous basant sur l'installation du SINP PACA. - Mettre à jour à l'aide de Git ou Rsync le dossier
~/docker/healthcheck/
- Se placer dans le dossier le dossier
~/docker/healthcheck/
avec :cd ~/docker/healthcheck/
- Créer un fichier .env à l'aide du fichier .env.sample.
- Créer des mots de passes (le stocker dans Keepass) et mettre à jour les paramètres (<domaine-sinp>)
- Créer une nouvelle entrée dans la zone DNS via l'interface d'OVH :
healthcheck IN CNAME bkp-srv
- Assurez vous d'avoir une entrée du type :
bkp-srv IN A <ipv4-de-bkp-srv>
- Lancer le container :
docker compose up
- Vérifier que vous accédez à l'interface de connexion :
https://healthcheck.<domaine-sinp>
- Si tout semble fonctionnel, l'arrêter et le relancer en tant que service :
CTRL+C
puisdocker compose up -d
- Créer un super utilisateur avec la commande :
docker compose run healthcheck-web /opt/healthchecks/manage.py createsuperuser
- Utiliser l'email de l'admin système
- Stocker le mot de passe dans Keepass
- Intégrer Telegram à l'outil avec la commande :
docker compose run healthcheck-web /opt/healthchecks/manage.py settelegramwebhook
Créer un nouveau "check"
- Se connecter sur le site :
https://healthcheck.<domaine-sinp>
- Utiliser le login et le mot de passe du super utilisateur créé précédemment
- Dans l'onglet "CHECKS",
- cliquer sur l'entrée intitulée "My first check" :
- la modifier ainsi :
- Name : Instances Backup
- Slug : instances-backup
- Tag : bkp-srv
- Description : Sauvegardes des instances de l'infra du SINP AURA (web-srv, db-srv) sur le datacenter de Londres.
- Cliquer ensuite sur la "Period" et configure la :
- Period : 1 day
- Grace time : 5 hours
- cliquer ensuite sur "Add Check" pour configurer la vérification des sauvegardes de Grafana :
- Name : Grafana Backup
- Slug : grafana-backup
- Tag : bkp-srv
- Schedule : cron
- Cron Expression : 1 0 1 * * (vérifier dans le fichier Cron sur le serveur bkp-srv)
- Time Zone : Europe/Paris
- Grace Time : 1 hour
Créer une nouvelle "integration" : Telegram
- Se connecter sur le site :
https://healthcheck.<domaine-sinp>
- Utiliser le login et le mot de passe du super utilisateur créé précédemment
- Dans l'onglet "INTEGRATIONS" :
- cliquer sur l'intégration "unnamed" de type "Email" et la configurer ainsi : Name : Email @ AdminSys
- Ensuite, cliquer sur le bouton "Test" qui apparaît au survol de l'intégration.
- Vérifier la bonne réception de l'email.
- Dans la section "Add More" cliquer sur le bouton "Add Integration" en face de l'entrée Telegram
- Vérifier que vous avez bien ajouter Telegram à Healthcheck lors de l'installation avec la commande :
docker compose run healthcheck-web /opt/healthchecks/manage.py settelegramwebhook
- Suivre les indications fournies et cliquer sur l'option "Joindre un groupe".
- Accepter d'ouvrir Telegram Descktop, la commande
/start
sera inscrite automatiquement dans le groupe et afficher un lien à suivre - Cliquer sur le lien pour accepter de joindre l'outil Healtcheck à Telegram.
- Renommer l'intégration en cliquant sur "unamed" :
- SINP AURA : "Telegram - Biodiv'AURA ALERT"
- SINP PACA : "Telegram - Silene ALERT"
- Survoler l'intégration et cliquer sur le bouton "Test" qui apparait.
- Vérifier que vous avez bien reçu un message dans le groupe Telegram du SINP.