In produktiven Linux-Umgebungen kann ein Kernel-Panic oder Systemabsturz kritische Auswirkungen auf Anwendungen und Services haben. Um die Ursachen solcher Abstürze zuverlässig zu analysieren, ist ein systematisches Crashdump-Setup notwendig. Kdump ist das Standardtool unter Linux, um bei einem Kernel-Panic ein Speicherabbild zu erzeugen, das anschließend analysiert werden kann. Dieses Tutorial beschreibt, wie kdump korrekt konfiguriert, getestet und in den Betrieb integriert wird, um wertvolle Diagnosedaten zu sichern.
Kdump Grundlagen
Kdump nutzt eine reservierte Speicherregion, den sogenannten crashkernel, um bei einem Kernel-Panic einen Minimal-Kernel zu starten. Dieser “Crash-Kernel” erzeugt ein Speicherabbild des Hauptkernels, bevor das System endgültig heruntergefahren wird. So lassen sich die Ursachen für den Absturz analysieren, ohne dass das laufende System unbrauchbar wird.
Funktionsweise
- Hauptkernel läuft im normalen Modus
- Bei einem Panic startet der Crash-Kernel in der reservierten Memory-Region
- Crash-Kernel erstellt ein Dump-File (vmcore) auf einer dedizierten Partition oder über das Netzwerk
- Analyse des Dumps erfolgt später mit Tools wie
crashodergdb
Kdump Installation
Die Installation erfolgt je nach Distribution über die Standard-Paketverwaltung:
# RHEL/CentOS
yum install kexec-tools
# Ubuntu/Debian
apt install kdump-tools
Systemd Services aktivieren
systemctl enable kdump
systemctl start kdump
Speicherreservierung (crashkernel)
Damit kdump funktioniert, muss der Kernel eine reservierte Speicherregion für den Crash-Kernel erhalten. Dies erfolgt über den Bootloader.
Grub Konfiguration
# /etc/default/grub
GRUB_CMDLINE_LINUX="crashkernel=512M"
Grub aktualisieren
update-grub
Die Größe der reservierten Region hängt vom Arbeitsspeicher und der Systemlast ab. Typischerweise werden 128M bis 1G empfohlen.
Kdump Konfiguration
Die Kdump-Konfiguration wird üblicherweise in /etc/kdump.conf gepflegt.
Speicherziel definieren
- Lokale Partition (ext4, xfs):
path /var/crash - Remote via SSH/NFS:
ssh user@host:/kdumpodernfs 192.168.0.10:/export/kdump
Weitere Optionen
core_collector makedumpfile -c --message-level 1– reduziert Dump-Größedefault reboot– Reboot nach Crashdisk /dev/sda1– zielt auf bestimmte Partition
Testen der Kdump Konfiguration
Nach Installation und Konfiguration sollte kdump getestet werden. Dazu kann ein kontrollierter Panic ausgelöst werden:
# Trigger Panic
echo c > /proc/sysrq-trigger
Hinweis: Dieser Test führt zu einem echten Systemabsturz. Daher sollte er in einer Testumgebung oder außerhalb der Produktionszeiten durchgeführt werden.
Überprüfung des Dumps
Nach dem Reboot prüft man das Vorhandensein des Dumps:
ls -l /var/crash
Für die Analyse:
crash /usr/lib/debug/lib/modules/$(uname -r)/vmlinux /var/crash/.../vmcore
Automatisierung und Monitoring
Kdump lässt sich in Monitoring-Systeme integrieren, um Abwesenheit von Dumps oder fehlerhafte Dumps automatisch zu melden. Tools wie Prometheus, Zabbix oder Nagios können hier genutzt werden.
Automatische Alerts
- Verfügbarkeit des kdump Services überwachen
- Dump-Verzeichnisse auf neue Dateien prüfen
- Automatisierte Backup der Dumps auf Remote Storage
Best Practices
- Immer eine separate Partition oder ein dediziertes Verzeichnis für Dumps anlegen
- Crashkernel ausreichend groß reservieren
- Regelmäßige Tests in kontrollierter Umgebung durchführen
- Automatisierte Archivierung und Analyse der Dumps
- Dokumentation und Training für Administratoren
Ein korrekt konfiguriertes kdump-Setup ist ein unverzichtbarer Bestandteil der Systemresilienz. Durch regelmäßige Tests, automatisierte Backups und Monitoring kann die Ursache von Kernel-Panics schnell analysiert und die Systemverfügbarkeit maximiert werden.
Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3
Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.
Meine Leistungen umfassen:
-
Professionelle Konfiguration von Routern und Switches
-
Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen
-
Erstellung von Topologien und Simulationen in Cisco Packet Tracer
-
Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG
-
Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible
-
Erstellung von Skripten für wiederkehrende Netzwerkaufgaben
-
Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege
-
Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting
Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.











