# Proxmox Heartbeat: Corosync & Node-Health im Detail

TL;DR / Management Summary In einem Proxmox-Cluster ist der Heartbeat die lebenswichtige Kommunikation, die jedem Knoten mitteilt: “Ich bin noch da”. Dieser Dienst wird von Corosync übernommen. Wenn die Latenz im Heartbeat-Netzwerk zu hoch wird, verliert der Cluster sein Quorum, was zu unkontrollierten Reboots (Fencing) führen kann. Ein Senior Admin konfiguriert Corosync über dedizierte Netzwerk-Links und überwacht die Latenz (RTT) mit Millisekunden-Präzision.


# 1. Wie Corosync arbeitet

Das Token-Ring Prinzip.

Corosync schickt ein kleines Datenpaket (Token) im Kreis durch alle Cluster-Knoten.


# 2. Heartbeat Redundanz konfigurieren

Nicht nur ein Kabel.

Betreiben Sie Corosync niemals über nur ein physikalisches Interface. Datacenter -> Cluster -> Edit Config (via Shell /etc/pve/corosync.conf).

totem {
  interface {
    linknumber: 0
    ringnumber: 0
  }
  interface {
    linknumber: 1
    ringnumber: 1
  }
}

# 3. Deep Dive: Latenz & Jitter

Der Feind der Stabilität.

Corosync ist extrem empfindlich gegenüber Latenzspitzen.


# 4. Day-2 Operations: Health Checks

Den Puls fühlen.

Prüfen Sie regelmäßig den Status der Corosync-Ringe:

# Zeigt den Status aller konfigurierten Ringe/Links
corosync-cfgtool -s

# 5. Troubleshooting & “War Stories”

Wenn der Rhythmus stolpert.

# Top 3 Fehlerbilder

  1. Symptom: “Corosync nodes not communicating”.

    • Ursache: Firewall blockiert UDP 5404/5405 oder IGMP-Snooping am Switch ist aktiv, aber kein Querier vorhanden.
    • Lösung: Multicast-Test mit omping durchführen.
  2. Symptom: Host rebootet plötzlich ohne Fehlermeldung.

    • Ursache: Heartbeat-Timeout hat den Hardware-Watchdog (Artikel 692) ausgelöst.
    • Lösung: Latenz-Spikes im Netzwerk suchen (z.B. Backup-Jobs prüfen).
  3. Symptom: “Token lost” Meldungen im Syslog.

    • Fix: CPU-Priorität für Corosync erhöhen (Proxmox macht dies standardmäßig via Realtime-Scheduling).

# “War Story”: Der “Software-RAID” Killer

Ein Admin installierte einen neuen Proxmox-Knoten und nutzte Software-RAID ohne dedizierte Cache-Controller. Das Ergebnis: Während eines intensiven ZFS-Scrub-Vorgangs war die CPU so mit I/O-Wait beschäftigt, dass der Corosync-Dienst für 3 Sekunden keine CPU-Zeit bekam. Die Folge: Der Knoten konnte sein Heartbeat-Paket nicht rechtzeitig senden. Die anderen 4 Knoten dachten, er sei tot, und lösten einen Failover-Sturm aus. Der Host selbst bemerkte das fehlende Quorum und führte einen Not-Reboot durch. Lehre: Heartbeat-Stabilität erfordert nicht nur ein gutes Netzwerk, sondern auch garantierte CPU-Zyklen.


# 6. Monitoring & Reporting

Statistiken der Erreichbarkeit.

# Corosync Quorum Check (CLI)

# Zeigt die Anzahl der Stimmen (Votes) im Cluster
pvecm status

# 7. Fazit & Empfehlung

Corosync ist das Nervensystem Ihres Datacenters.


# Anhang: Cheatsheet (Corosync Diagnose)

Aufgabe Befehl
Status Ringe corosync-cfgtool -s
Quorum Info pvecm q
Live Traffic tcpdump -i any udp port 5405
Log Monitoring journalctl -u corosync -f

# Referenzen