Avec l’inclusion de la prise en charge du matériel de surveillance, systemd peut désormais exécuter la fonction d’un processus de surveillance Linux. Sur les systèmes Dell PowerEdge, ce matériel peut être le minuteur de surveillance du chipset intégré au chipset de la plate-forme (comme Intel ICH9) ou le minuteur de surveillance BMC conforme à l’iDRAC IPMI.
Dell iDRAC fournit la récupération automatisée du système qui, en plus d’effectuer une restauration à partir des blocages du système d’exploitation, peut capturer une capture d’écran pour analyse ultérieure. Il était nécessaire d’ajouter des logiciels sur le système d’exploitation pour l’activer. Avec les distributions plus récentes prenant en charge systemd, cette fonctionnalité fonctionne avec les logiciels disponibles en mode natif dans une distribution, ce qui élimine le besoin de logiciels complémentaires.
Il était toutefois possible d’utiliser le processus de surveillance sous Linux, mais il y avait une probabilité que le processus lui-même puisse se bloquer pendant que le reste du système était opérationnel. Systemd agit en tant que surveillance logicielle de tous les services du système et le minuteur de surveillance BMC agit comme la surveillance matérielle du système lui-même. Ainsi, si systemd est hors fonctionnement, il y a de bonnes chances que le système soit inutilisable en général. Nous disposons désormais d’une méthode plus fiable pour tous les services du système : le gestionnaire des services (systemd) doit être « surveillé » par le minuteur de surveillance du contrôleur BMC.
La colle entre le système et la surveillance BMC de l’iDRAC Dell est le module de noyau ipmi_watchdog, qui fournit l’accès de l’API de surveillance Linux à la surveillance BMC à l’aide de /dev/watchdog. Systemd utilise cette interface pour lancer la surveillance périodiquement.
Configuration système avec ipmi_watchdog
Systemd peut être configuré pour utiliser la surveillance IDRAC BMC en procédant comme suit (sur Fedora 19) :
- Étant donnée que le système dispose de deux minuteurs de surveillance (chipset et BMC), nous pouvons les utiliser. Dans cet exemple, nous désactivons la surveillance du chipset. La surveillance du chipset peut être désactivée en définissant l’option « Minuteur de surveillance du système d’exploitation » dans le BIOS du système sur « Désactivé » (par défaut).
- Arrivez à une valeur d’expiration du délai pour la surveillance, par exemple 180 secondes.
- Activez le module de noyau ipmi_watchdog à charger au démarrage du système avec le délai d’expiration ci-dessus :
- Méthode 1 : Créez /etc/modules-load.d/ipmi_watchdog avec le contenu suivant
- Options ipmi_watchdog délai d’expiration =180
- Refuser la liste iTCO_wdt # Facultatif. Si la surveillance du chipset n’est pas désactivée dans la configuration du BIOS.
- Méthode 2 :
- Installation d’OpenIPMI rpm
- $ sudo yum installation d’OpenIPMI
- Définissez IPMI_WATCHDOG=yes et IPMI_WATCHDOG_OPTIONS avec le délai d’expiration dans /etc/sysconfig/ipmi.
- Activez le service IPMI pour le démarrage automatique
- $ sudo systemctl activer ipmi
- Activez la surveillance du systemd :
- Supprimez les commentaires et définissez RuntimeWatchwatchwatchSec=180 dans /etc/systemd/system.conf
- Redémarrer le système
- # systemctl daemon-reexec
Testez si cela fonctionne :
- Vérifiez si la surveillance est active.
- $ sudo journalctl |grep -i 'hardware watchdog' # doit montrer que systemd est configuré pour utiliser la surveillance IPMI.
- $ sudo ipmitool mc watchdog get # check if the « Watchdog Timer Is : Started/Running. »
- Effectuez un test en simulant une panique du noyau (ne le faites pas 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
- Connectez-vous à l’interface utilisateur Web de l’iDRAC
- Présentation -> Server -> Troubleshooting -> Last Crash Screen.