Installation et configuration du Watchdog
Comment protéger votre serveur contre les blocages et les gels à l'aide d'un watchdog timer.
Le watchdog timer est un mécanisme de protection matériel qui empêche votre serveur de rester bloqué indéfiniment. Le principe est simple : le système envoie périodiquement un signal « heartbeat » pour réinitialiser le timer. Si ce signal s'arrête — parce que le système s'est figé, a planté ou est entré dans une boucle infinie — le timer se déclenche et provoque un redémarrage. Selon la configuration, ce redémarrage peut être un redémarrage propre au niveau logiciel ou un redémarrage forcé au niveau matériel (par exemple, en activant la ligne RST).
Sur les serveurs dédiés et les VPS auxquels vous ne pouvez pas accéder physiquement, ce type de récupération automatique est vraiment précieux.
Installation sur Ubuntu / Debian
sudo apt-get install watchdog
Le paquet installe les fichiers clés suivants :
/etc/init.d/watchdog— script d'initialisation du service/etc/watchdog.conf— fichier de configuration principal/etc/default/watchdog— options de démarrage/dev/watchdog— le périphérique watchdog/usr/sbin/watchdog— le binaire watchdog
Paramètres clés dans /etc/watchdog.conf
Timing et journalisation :
interval— fréquence à laquelle le watchdog écrit sur le périphérique. Par défaut : 10 secondes. Les valeurs supérieures à 60 secondes nécessitent le flag-fau démarrage.logtick— contrôle la fréquence d'écriture des événements dans le journal. Aveclogtick = 60etinterval = 10, les événements sont journalisés au maximum une fois toutes les 10 minutes.
Charge système :
max-load-1,max-load-5,max-load-15— charges moyennes système maximales acceptables sur 1, 5 et 15 minutes. Si un seuil est dépassé, le watchdog déclenche un redémarrage. Mettre à0pour désactiver une vérification.
Mémoire et température :
min-memory— mémoire virtuelle libre minimale acceptable. Mettre à0pour désactiver.max-temperature— température maximale acceptable avant qu'un redémarrage soit déclenché.watchdog-device— chemin vers le périphérique watchdog (généralement/dev/watchdog).temperature-device— chemin vers le capteur de température.
Surveillance des fichiers et des processus :
fileetchange— surveille les modifications d'un fichier.changedéfinit l'intervalle de vérification.pidfile— chemin vers le fichier PID d'un processus à maintenir actif. Exemple :pidfile = /var/run/apache2.pid. Si le processus ne tourne pas, le watchdog redémarre le système.
Réseau :
pingetinterface— vérifie la connectivité réseau en pingant un hôte.interfaceprécise quelle interface réseau utiliser.
Tests personnalisés :
test-binary— chemin vers un script ou programme de test personnalisé.test-timeout— durée maximale d'exécution du test en secondes (0pour aucune limite).repair-binary— programme exécuté automatiquement lorsqu'un problème est détecté, avant de recourir au redémarrage.
Notifications et priorité :
admin— adresse e-mail pour les notifications d'événements. Laisser vide pour désactiver.realtime = Yes— verrouille le module watchdog en mémoire pour qu'il ne puisse pas être swappé.priority— priorité d'ordonnancement temps réel du processus watchdog.
Nos produits et services
Exemple de configuration avec Intel TCO Watchdog
Charger le module noyau :
sudo modprobe iTCO_wdt
Dans /etc/watchdog.conf, décommenter ou ajouter :
watchdog-device = /dev/watchdog
interval = 10
Dans /etc/default/watchdog, spécifier le nom du module :
watchdog_module="iTCO_wdt"
Pour activer la journalisation détaillée dans syslog à des fins de débogage :
watchdog_options="-v"
Redémarrer le service :
sudo /etc/init.d/watchdog restart
Surveiller les logs en temps réel pour confirmer le bon fonctionnement :
tail -f /var/log/syslog
Aide
Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !