Inhalt

Einleitung

Problem

Lösung

Einleitung

In diesem Dokument wird beschrieben, wie Sie das durch den CentOS-Kernelabsturz verursachte Problem eines VM-Neustarts bei CPS(Cisco Policy Suite) beheben.

Problem

Alle CPS VMs (qns, lb, pcrfclient usw.) werden auf CentOS-Basis ausgeführt. Diese VMs können neu gestartet werden, wenn auf CentOS-Seite ein Problem vorliegt, anstatt auf CPS-Anwendungsseite. Wenn ein Neustart aufgrund eines Problems mit dem CentOS-Kernel auftritt, kann die Ursache nicht gefunden werden, selbst wenn der CPS capture_env untersucht wird. Die capture_env-Protokolle enthalten keine Fehlerprotokolle vom neu gestarteten virtuellen System während des Neustarts. In solchen Fällen können die Logs unter /var/crash zur Untersuchung verwendet werden.

Lösung

CentOS kann ein Kernel-Absturzabbild erzeugen, wenn ein Problem mit dem Kernel auftritt. Standardmäßig ist CPS so konfiguriert, dass es Kernel-Crash-Dumps für alle VMs sammelt.

Der Status kann mit diesem Befehl überprüft werden.

[root@dc1-qns01 ~]# systemctl status kdump.service

● kdump.service - Crash recovery kernel arming

Loaded: loaded (/usr/lib/systemd/system/kdump.service; enabled; vendor preset: enabled)

Active: active (exited) since Tue 2023-01-10 07:29:35 UTC; 4 months 4 days ago

Main PID: 1023 (code=exited, status=0/SUCCESS)

Tasks: 0 (limit: 75300)

Memory: 0

CGroup: /system.slice/kdump.service

Wenn bei aktiviertem kdump.service ein Kernelabsturz auftritt, wird unter /var/crash ein Verzeichnis mit dem Namen "address-YYYY-MM-DD-HH:MM:SS" generiert. CentOS generiert 2 Dateien in diesem Verzeichnis.

[root@dc1-lb02 127.0.0.1-2022-10-18-06:18:41]# pwd

/var/crash/127.0.0.1-2022-10-18-06:18:41

[root@dc1-lb02 127.0.0.1-2022-10-18-06:18:41]# ls -rtl

total 161436

-rw-r--r-- 1 root root     89787 Oct 18  2022 vmcore-dmesg.txt

-rw------- 1 root root 165215218 Oct 18  2022 vmcore

- vmcore:

Eine Datei, die den Inhalt des Kernelspeichers als Binärdatei speichert. Die Analyse erfordert Werkzeuge wie kernel-debuginfo und crash.

- vmcore-dmesg.txt:

dmesg-Textdatei bei einem Absturz.

Im CPS-seitigen Protokoll wurden beispielsweise Fehlerprotokolle kurz vor dem Neustart nicht aus Protokollen der VM bestätigt, die neu gestartet wurde. Analyseergebnis von VMWare-Seite, der Neustart wurde mit diesem Fehlerprotokoll verursacht, die durch Gast-Betriebssystem verursacht würde.

The CPU has been disabled by the guest operating system. Power off or reset the virtual machine.

Überprüfen Sie /var/crash des neu gebooteten virtuellen Rechners, ob ein Verzeichnis vorhanden ist, das mit der Zeit des Neustarts übereinstimmt. Es stellte sich heraus, dass der Neustart auf ein Kernel-Problem auf CentOS-Seite zurückzuführen war, und wir konnten weitere Untersuchungen durchführen.