openSUSE Conference : kdump, l’outil anti-plantage des administrateurs Linux

Responsables de fermes de serveurs Linux, découvrez pourquoi kdump (ou la virtualisation) doit devenir une pièce maîtresse de votre système de maintenance.

Faire crasher un OS en public, un vrai plaisir de programmeur système, auquel s’est adonné Stefan Seyfried de B1 Systems GmbH (notre photo). Un « crash dump » permet d’enregistrer une image mémoire complète du système en cas de problème, et ce, automatiquement ou manuellement.

« C’est une fonction pratique sur des environnements mission critical, la création d’un instantané de la mémoire permettant de remettre à plus tard l’étude de ce qui a provoqué le crash, et ainsi de remettre en route le système très rapidement », explique Stefan Seyfried. Cet outil est donc avant tout utile sur des machines utilisées en production.

kdump : un outil puissant
Notre interlocuteur s’est penché sur kdump, une des solutions Linux les plus avancées pour créer une image mémoire du système. Son mode de fonctionnement est simple : en cas de plantage, un second kernel est démarré dans un espace mémoire réservé (128 Mo sont conseillés). Il prend la main sur le noyau principal et se charge d’enregistrer le contenu de la mémoire vive (éventuellement sous une forme compressée), sur le disque local, sur un espace de stockage réseau, etc.

Ce procédé très efficace induit toutefois quelques limites. En effet, le noyau de secours démarre dans un mode très « prudent », qui pourrait parfois se montrer un peu trop limité (en particulier en terme de gestion des cartes réseau). Des tests seront donc à effectuer lors de la mise en place de ce mécanisme.

Utile, même pour les administrateurs système
Crash est un outil basé sur gdb qui propose des fonctions permettant de naviguer dans la structure du noyau et de la mémoire Linux. Il permet de voir quelle a été la dernière commande lancée avant le plantage. Il offre également d’afficher la liste des tâches en fonctionnement lors du crash (et leur utilisation des ressources système). crash permet donc de naviguer dans l’image du système, avec des commandes assez proches de celles habituellement disponibles dans un terminal. Le haut niveau d’abstraction proposé par cet outil permettra ainsi de fournir des informations précieuses aux administrateurs système (et non pas seulement aux développeurs).

Autre point, le paramétrage de kdump est pris en charge par YaST2, l’outil de configuration de la SUSE et de l’openSUSE. Voilà qui facilitera grandement la mise en place de cette fonctionnalité.

Un travail facilité avec les machines virtuelles
Stefan Seyfried clôt sa présentation sur les avantages apportés par la virtualisation en terme de « crash dump ». Avec la commande virsh dump, il est possible de générer une image système d’une machine virtuelle. Cette dernière est directement créée par l’hyperviseur. La mise en place d’un outil comme kdump n’est alors plus nécessaire, le système invité n’ayant pas à être modifié pour supporter cette fonctionnalité. Un plus pour ceux qui administrent un large ensemble de machines. Notez que la commande virsh dump est compatible avec KVM et Xen. VMware propose toutefois lui aussi un tel mécanisme.