Wie verwende ich zdb oder einen anderen zfs-Befehl, um mir zu sagen, was es gerade macht?

492
Jack Wasey

Ich sehe ständig intermittierende z_wr_iss-Kernel-Threads, die meine gesamte CPU verbrauchen. Ich habe keine Ahnung, was ZFS macht: Vielleicht Schnappschuss, aber warum braucht es so viel CPU? Es ist kein Cronjob.

Ich habe an anderer Stelle (von 2013 https://github.com/zfsonlinux/zfs/issues/1637 ) gelesen, dass dies Komprimierung ist, aber ich weiß nicht, warum Snapshotting Komprimierung durchführen würde. Ich habe gzip und lz komprimierte Dateisysteme. Ich möchte wirklich genau sagen, was ZFS macht und idealerweise welche Dateien es berührt, um dieses Problem zu verursachen.

Ich habe die Manpages "zfs", "zpool" und "zdb" gelesen und ausprobiert zdb -Gv qpool .

Ich verwende bionischen Kernel (4.15.0-13-Generic) und ZFS (0.7.5-1ubuntu14). Ich habe einen reinen nvme-Pool und einen Spinning-Pool mit SSD-Protokollen und Caches. Ich kann nicht einmal sagen, auf welchen meiner beiden Pools zugegriffen wird, um dieses Problem zu verursachen. Das war vor einigen Monaten kein Problem, und ich weiß leider nicht, wann es angefangen hat.

Jeder Rat, wie ich mein Problem diagnostizieren oder sogar direkt beheben kann, würde sich freuen.

1
Wie oft verbrauchen diese Threads Ihre CPU-Zyklen? Alle paar Sekunden? Alle paar minuten Alle paar stunden Was passiert sonst auf dem Host, wenn Sie das sehen? Andrew Henle vor 6 Jahren 1

1 Antwort auf die Frage

0
Jack Wasey

Ich fürchte, es war nach allem ein Cron-Job, und die CPU-Abwanderung war darauf zurückzuführen, dass rsync auf einem komprimierten gzip-9-Dateisystem arbeitete. Da sich das Dateisystem nur geringfügig ändert, bin ich immer noch überrascht von der massiven Belastung für einen winzigen oder null Rsync-Diff. Ich habe zu einem sinnvolleren Kompressionsalgorithmus gewechselt und die Dinge wurden schneller, obwohl ich die Daten nicht erneut komprimiert habe . Vielleicht verursachten rsync-temporäre Dateien im Quelldateisystem das Problem?