Prüfen der cgroup-Mountpunkte in /sys/fs/cgroup
Im vorherigen Schritt haben Sie die verfügbaren cgroup-Subsysteme gesehen. Jetzt wollen wir untersuchen, wo diese cgroups im Dateisystem gemountet sind. Unter Linux werden cgroups normalerweise über ein virtuelles Dateisystem zugänglich gemacht, das in der Regel unter /sys/fs/cgroup
gemountet ist.
Das /sys
-Dateisystem ist ein weiteres virtuelles Dateisystem, das eine Schnittstelle zu Kerneldatenstrukturen bereitstellt. Es wird oft zur Konfiguration und Überwachung von Hardware und Kernelfeatures verwendet. Das Verzeichnis /sys/fs/cgroup
ist der Standard-Mountpunkt für das cgroup-Dateisystem.
Um den Inhalt dieses Verzeichnisses anzuzeigen und zu verstehen, wie die cgroup-Hierarchien organisiert sind, verwenden Sie den ls
-Befehl. Der ls
-Befehl listet den Inhalt eines Verzeichnisses auf.
Öffnen Sie Ihr Terminal, wenn es noch nicht geöffnet ist.
Geben Sie den folgenden Befehl in das Terminal ein und drücken Sie die Eingabetaste:
ls /sys/fs/cgroup
Sie sollten eine Ausgabe ähnlich der folgenden sehen:
cgroup.controllers cgroup.max.depth cgroup.max.descendants cgroup.stat cgroup.subtree_control cgroup.threads cpu cpu.stat cpu.pressure cpuset cpuset.cpus cpuset.mems cpuset.stat io io.stat io.pressure memory memory.stat memory.pressure memory.swap.max memory.high memory.low memory.min memory.swap.current memory.current memory.events memory.events.local pids pids.current pids.max systemd user.slice
Diese Ausgabe zeigt die Verzeichnisse und Dateien innerhalb des /sys/fs/cgroup
-Verzeichnisses. In Systemen, die die einheitliche cgroup-Hierarchie (cgroup v2) verwenden, sehen Sie Dateien wie cgroup.controllers
, cgroup.stat
und Verzeichnisse, die den gemounteten Controllern entsprechen (z. B. cpu
, memory
, io
, pids
).
Jedes dieser Verzeichnisse (z. B. cpu
, memory
usw.) repräsentiert einen cgroup-Controller. Innerhalb dieser Verzeichnisse finden Sie Dateien, mit denen Sie die Ressourcenlimits für Prozesse innerhalb dieser cgroup konfigurieren und überwachen können.
Beispielsweise würden Sie, wenn Sie in das cpu
-Verzeichnis wechseln, Dateien finden, die sich auf die CPU-Ressourcenkontrolle beziehen.
Schauen wir uns schnell den Inhalt des cpu
-Verzeichnisses mit ls
an:
ls /sys/fs/cgroup/cpu
Sie könnten eine Ausgabe wie die folgende sehen:
cgroup.controllers cgroup.events cgroup.freeze cgroup.max.depth cgroup.max.descendants cgroup.stat cgroup.subtree_control cgroup.threads cpu.max cpu.stat cpu.weight cpu.pressure
Diese Dateien (z. B. cpu.max
, cpu.weight
) werden verwendet, um CPU-Limits und Prioritäten für cgroups festzulegen.
Das Verständnis der Struktur von /sys/fs/cgroup
ist der Schlüssel für die Arbeit mit cgroups, da hier direkt mit ihnen interagiert wird.
Klicken Sie auf Weiter, um mit dem nächsten Schritt fortzufahren.