VM mit Debian schaltet sich ab

RaSc

Member
Sep 20, 2023
26
3
8
Werte Gemeinde,

ich habe mir einen kleinen Server als Bastelprojekt gebaut. Auf dem Server läuft proxmox. Darin habe ich zwei VMs laufen. Eine mit openmediavault und eine mit Debian. Auf dem Debian-System habe ich u.a. ioBroker laufen und überwache damit die Photvoltaik-Anlage. Nun schaue ich nicht ständig nach. Ich greife aber häufig - problemlos - auf die über OMV bereitgestellten Ordner zu.
Das Debian-System geht aber regelmäßig offline und ich weiß nicht warum.

Unter "Tasks" steht hin und wieder "Bulk start VMs and Containers" -- "OK". Als nächster Punkt startet dann die VM mit OMV, die VM mit Debian aber nicht. Offenbar gibt es unregelmäßig einen Reboot der VMs, aber nur ein startet.

Wie kann ich den Fehler finden?

Vorab schonmal vielen Dank.
 
Dann wäre die erste Frage ob auch bei beiden VMs das booten bei Neustart eingestellt ist.

Proxmox_VM_Start.png

Wenn Deine Debian VM sich regelmäßig aufhängt liegt das mit großer Wahrscheinlichkeit daran das irgendetwas was darunter wie auch immer installiert ist und läuft, es zum Absturz bringt und weniger an Proxmox. D.h. Du musst also herausbekommen was bei der Debian VM ggf. die Ursache ist und per Ausschlussverfahren würde ich dann erst einmal damit anfangen einzelne Dinge - wie z.B. den ioBroker - zu stoppen und dann testen ob die Debian VM dann stabil läuf. Außerdem könntest Du Dir natürlich auch mal die div. Logs der Debian VM anschauen ob darin evtl. eine Ursache für die Abstürze zu erkennen ist.

BTW: Das OMV ebenfalls auf Debian basiert weißt Du ja sicherlich selber und eine Standard-Debian Installation in einer VM würde vermutlich bei Dir auch nicht abstützen.

VG Jim
 
Last edited:
Vielen Dank erstmal.

Bei beiden VMs stand bei "Start at boot" -- "no". Ich habe es bei der Debian - VM mal auf -- "Yes" gestellt.

In der Debian - VM läuft an sich nur noch PLEX. Ansonsten habe ich dort nicht weiter verändert.

Leider bin ich mit der shell noch nicht so versiert, dass ich mir Logfiles ansehen könnte. Gibt es ein Logfile, welches ich mir als ersten anschauen könnte?
 
Lies Dich ein wenig in das Thema journalctl ein. Der Befehl journalctl --list-boots im Terminal zeigt Dir z.B. alle Boot-Prozesse. Hier mal am Beispiel einer eher selten von mir genutzen LMDE-Version (Linux Mint auf Debian Basis).

journalctl _list-boots.png

Der Befehl journalctl -b -1 im Terminal würde Dir dann z.B. den letzten Boot-Prozess vor dem Absturz anzeigen. In meinem Beispiel den Boot-Prozess vom 24.01.2025. Hier z.B. dann das Ende von dem journalctl -b -1 Log. In dem Fall wurde die LMDE VM halt regulär heruntergefahren.

Debian_Log.png


VG Jim
 
Last edited:
Ich würde das Thema gern nochmals hervorholen, da es noch immer nicht gelöst ist.
Mit journalctl -b-1komme ich nicht so recht weiter in der PVE - Shell und in den Consolen der VMs enden die Einträge offenbar vor der Zeit, ab der die VMs offline / ausgeschaltet sind. Es gibt nach dem letzten Eintrag noch Aufzeichnungen in der InfluxDB.

Im Systemlog der Weboberfläche steht:

Oct 23 13:17:01 pve CRON[772485]: pam_unix(cron:session): session closed for user root
Oct 23 13:49:04 pve pveproxy[734788]: authentication failure: 401 permission denied - invalid PVE ticket
Oct 23 13:49:07 pve pvedaemon[591421]: <root@pam> successful auth for user 'root@pam'
----------------------------------------------------------------------------------------------------------------------------------------
Oct 23 13:54:37 -- Reboot --

Danach rebootet offenbar das gesamte PVE, wobei nur eine VM wieder gestartet wird. Das ist im Systemlog auch zu sehen:

Oct 23 13:56:48 pve pve-ha-lrm[1584]: VM 100 started with PID 1599 using pve-qemu-kvm_11.0.3-4.
Oct 23 13:56:48 pve pve-ha-lrm[1583]: <root@pam> end task UPID:pve:00000630:00003401:6ADB4B7F:qmstart:100:root@pam: OK
Oct 23 13:56:48 pve pve-ha-lrm[1583]: service status vm:100 started

Weitere VMs werden nicht gestartet.

Der Ausfall der VMs ist zu unterschiedlichen Zeiten nach unterschiedliche langen Betriebsphasen.
Es startet stets dieselbe VM neu (VM100). Die anderen nicht.

Ideen?

Danke
 
Habe gerade gesehen, dass "Start at boot" wieder? auf "no" stand.

Erklärt aber den Reboot der PVE nicht...
 
Mein erster Gedanke, was ich früher hatte war, das evtl der ram nicht ausreicht. Wenn deinem Server der Ram ausgeht kam es bei mir vor das Proxmox bzw das debian dahinter einfach lxc container gekillt hat (OOM). Allerdings weiß ich nicht ob das immer noch vorkommt das ist bei mir schon einige Jahre her
 
Last edited:
Für die Debian-VM einfach qm set <VMID> --onboot 1 setzen. Bei HA-VMs ist "Start at boot" egal, das macht HA selbst.

Interessant ist der Host-Reboot. Zwischen 13:49 und dem Reboot steht nix, kein Shutdown. Der Host ist hart neu gestartet. Falls HA aktiv ist, ist das meistens der Watchdog. Der Node verliert das Quorum und startet sich nach 1-2 Minuten selbst neu (Fencing). Ist der Server in einem Cluster oder war er mal drin? Was zeigen pvecm status und ha-manager status? Bei einem einzelnen Bastelserver brauchst du HA nicht. Wenn da eine Ressource eingetragen ist, würd ich sie rausnehmen, dann fällt der Watchdog als Ursache weg.

Wenn es das nicht ist, tippe ich auf Hardware (Netzteil, RAM, Temperatur). Ein memtest wäre dann der nächste Schritt. OOM würde nur einzelne VMs killen, nicht den ganzen Host.
 
@Lord_Neksus: RAM war auch schon ein Gedanke. Allerdings ist in der grafischen Darstellung der einzelnen VMs nicht ersichtlich, dass zu viel RAM benötigt würde. Kann natürlich sein, dass die Aufzeichnung abbricht gerade weil RAM ausgeht. Dagegen spricht, dass zu Zeiten des Reboots praktisch nicht aktiv auf die VMs zugegriffen wird.

@Bu66as

pvecm status bringt folgendes:
"Corsync config '/etc/pve/corosync.conf does not exist - ist this node part of a cluster?"

Es war uns ist nicht teil eines Clusters. Es läuft nur ein node.

ha-manager statusbringt folgendes:
"quorum OK
master pve (active, Datum+Uhrzeit)
fencing armed (CRM watchdog active, Datum+Uhrzeit)
lrm pve (active, watchdog active, Datum+Uhrzeit)
service vm:100 (pve, started)"

Irritierend ist, dass nur die VM100 als "started" angezeigt wird, obwohl auch andere VMs laufen.

qm set <vmid> --onboot 1habe ich gesetzt. Wie kann ich das für einen lxc - Container machen?

Soll ich watchdog besser ausschalten? Wie?

Ich danke Euch.
 
Die Watchdog-Theorie passt wahrscheinlich. Du hast VM 100 als HA-Ressource eingetragen, deshalb zeigt ha-manager status nur die eine VM an. Der Befehl listet nur Gäste, die HA verwaltet. Die anderen laufen ganz normal, HA kümmert sich nur nicht um sie. Deshalb wird nach dem Reboot auch nur die 100 gestartet. Mit nur einem Node brauchst du HA gar nicht, aber der Watchdog läuft. Hängt der Host mal kurz (z.B. pmxcfs oder IO), setzt der Watchdog ihn hart zurück. Das passt zu deinem Log: kein Shutdown, einfach Reboot.

Ich würd HA komplett rausnehmen, entweder per GUI unter Datacenter → HA → Ressource entfernen oder so:
Code:
ha-manager remove vm:100
qm set 100 --onboot 1
Wenn keine Ressource mehr drin ist, geht der LRM nach ein paar Minuten auf idle und der Watchdog ist aus. Kurz mit ha-manager status prüfen. Für Container geht das mit pct set <CTID> --onboot 1.

Falls der Host danach immer noch neu startet, ist wahrscheinlich Hardware schuld. Dann würd ich memtest laufen lassen, außerdem Netzteil und Temps anschauen.