Utilisation de systemd pour la récupération automatique du système
Résumé: Avec l’ajout de la prise en charge du matériel de surveillance, systemd peut désormais exécuter la fonction de processus de surveillance Linux sur les systèmes Dell PowerEdge.
Instructions
Avec l’inclusion
de la prise en charge du matériel de surveillance
, systemd
peut désormais effectuer la fonction d’un processus de surveillance Linux. Sur les systèmes Dell PowerEdge, il peut s’agir du minuteur de surveillance du chipset intégré au chipset de la plate-forme (comme Intel ICH9) ou du minuteur de surveillance BMC conforme IPMI de Dell iDRAC.
Dell iDRAC fournit une fonction de récupération automatique du système qui, en plus de la récupération en cas de blocage du système d’exploitation, peut capturer une capture d’écran à des fins d’analyse ultérieure. Il était nécessaire sur le système d’exploitation pour activer cela. Avec les distributions plus récentes prenant en charge systemd, cette fonctionnalité fonctionne avec les logiciels disponibles nativement dans une distribution, éliminant ainsi le besoin de logiciels complémentaires.
Il était cependant possible d’utiliser le démon watchdogd sous Linux, mais il y avait une probabilité que le démon lui-même puisse se verrouiller pendant que le reste du système était opérationnel. systemd agit en tant que chien de garde du logiciel pour tous les services système et le minuteur de surveillance BMC agit en tant que chien de garde du matériel pour systemd lui-même. Par conséquent, si systemd n’est pas opérationnel, il y a de fortes chances que le système soit inutilisable en général. Nous disposons donc maintenant d’une méthode plus fiable pour tous les services système, le gestionnaire des services (systemd) étant « surveillé » par le minuteur de surveillance du BMC.
Le ciment entre systemd et la surveillance BMC de Dell iDRAC est le module de noyau ipmi_watchdog, qui fournit à l’API
de surveillance Linux un accès à la surveillance BMC à l’aide de /dev/watchdog. Systemd utilise cette interface pour exécuter périodiquement la surveillance.
Configuration de systemd avec ipmi_watchdog
Systemd peut être configuré pour utiliser la surveillance de l’iDRAC BMC en procédant comme suit (sur Fedora 19) :
- Étant donné que le système dispose de deux minuteurs de surveillance (chipset et BMC), nous pouvons utiliser l’un ou l’autre. Dans cet exemple, nous désactivons la surveillance du chipset. La surveillance du chipset peut être désactivée en définissant l’option « Operating system Watchdog Timer » dans le BIOS du système sur « Disabled » (par défaut).
- Arriver à une valeur de délai d’expiration pour la surveillance, disons 180 secondes.
- Activez le module noyau ipmi_watchdog pour qu’il se charge au démarrage du système avec le délai d’expiration indiqué ci-dessus :
- Méthode 1 : Créez le fichier /etc/modules-load.d/ipmi_watchdog avec le contenu suivant
- Options ipmi_watchdog timeout=180
- Liste de refus iTCO_wdt # Facultatif. Si la surveillance du chipset n’est pas désactivée dans la configuration du BIOS.
- Méthode 2 :
- Installer OpenIPMI rpm
- $ sudo yum install OpenIPMI
- Définissez IPMI_WATCHDOG=yes et IPMI_WATCHDOG_OPTIONS avec le délai d’expiration dans /etc/sysconfig/ipmi.
- Activer le démarrage automatique du service ipmi
- $ sudo systemctl enable ipmi
- Installer OpenIPMI rpm
- Activez la surveillance de systemd :
- Supprimez les commentaires et définissez RuntimeWatchdogSec=180 dans /etc/systemd/system.conf
- Redémarrer systemd
- # systemctl daemon-reexec
Vérifiez si cela fonctionne :
- Vérifiez si la surveillance est active
- $ sudo journalctl |grep -i 'hardware watchdog' # devrait indiquer que systemd est configuré pour utiliser la surveillance IPMI.
- $ sudo ipmitool mc watchdog get # vérifie si le "Watchdog Timer Is : Démarré/En cours d’exécution. »
- Testez en simulant une panique du noyau (ne pas faire sur un système de production). Assurez-vous que kdump est désactivé.
- $ sudo echo c > /proc/sysrq-trigger
- Après la réinitialisation du système, vérifiez qu’une image de l’écran d’échec est disponible dans l’iDRAC
- Connexion à l’interface utilisateur Web de l’iDRAC
- Présentation -> Serveur -> Dépannage -> Dernier écran de blocage.