Hoher Lastdurchschnitt

Auf einem unserer Proxmox 6-Server hatten wir kürzlich das Problem, dass Icinga sich ständig über einen hohen Lastdurchschnitt beschwerte. Der Lastdurchschnitt selbst ist eine seltsame Metrik, er misst die Länge der Ausführungswarteschlange. Das bedeutet, die Anzahl der Prozesse die darauf warten, ausgeführt zu werden. Dies kann entweder daran liegen, dass sie darauf warten, dass die CPU-Zeit verfügbar wird, oder dass Daten von der Festplatte eingehen. Es werden keine Aufgaben gezählt, die absichtlich schlafen () oder auf Netzwerk-E / A warten (es sei denn, es handelt sich um eine NFS-Bereitstellung, in diesem Fall handelt es sich um Festplatten-E / A, nicht um Netzwerk-E / A.). Wenn es zu hoch ist, sagt es Ihnen, dass etwas nicht stimmt, aber Sie müssen tiefer graben, um genau herauszufinden, was. Auf unserer Systemoberseite liegt also eine CPU-Auslastung von etwa 10%, die nur wenige Kilobyte bis zu einigen Megabyte Festplattenaktivität pro Sekunde beträgt ... Was könnte das sein? Es gibt einen Befehl, der herausgefunden werden muss: Er zeigt die Prozesse an, die sich tatsächlich in der Ausführungswarteschlange befinden, damit wir eine bessere Vorstellung davon bekommen, was steckt. Lassen wir es mal laufen:

# ps r -e

  PID TTY      STAT   TIME COMMAND
  442 ?        D      0:00 [z_unlinked_drai]
10102 ?        D      0:01 [z_unlinked_drai]
14311 ?        D      0:00 zfs recv -F -- rpool/data/subvol-100-disk-0
18114 pts/9    R+     0:00 ps r -e
19302 ?        D      0:00 zfs recv -F -- rpool/data/subvol-101-disk-0

Neben dem "ps" -Prozess selbst sehen wir zwei ZFS-Userspace-Prozesse und zwei ZFS-Kernel-Threads. Sie stammen alle von den Proxmox-Replikationsdiensten. Es scheint ein Fehler in ZFS auf Linux zu sein - schade: /. Sie können keine Prozesse beenden, die in einem unterbrechungsfreien Syscall- oder Kernel-Thread stecken. Das Nachlesen zeigt keinen klaren Grund für das Verhalten. Wir betreiben unser ZFS mit zwei NVMe-Festplatten für l2arc und zil auf Spinnrost. Swap ist auch auf NVMe. Das einzige, was Sie tun müssen, ist, alle Updates zu installieren, den Server neu zu starten und zu hoffen, dass dies nicht erneut geschieht.

Neuen Kommentar schreiben