Benutzer-Werkzeuge

Webseiten-Werkzeuge


sammlung:cgroup

CGroup (Control Group)

Beschreibung

CGroup (Control Group) ist eine Funktion des Linux-Kernels, mit der Prozesse in Gruppen zusammengefasst und deren Ressourcenverbrauch (CPU, Speicher, I/O, Netzwerk) gezielt gesteuert und überwacht werden kann.

Wichtige Funktionen

  • Begrenzung von Ressourcen für Prozesse oder Dienste
  • Überwachung und Accounting von Ressourcenverbrauch
  • Priorisierung und Isolierung von Prozessen (z.B. für Container, Dienste)

Typische Nutzung

  • Systemdienste (über systemd) werden automatisch in CGroups verwaltet
  • Container-Lösungen wie Docker und LXC nutzen CGroups zur Ressourcensteuerung

Beispiele

# Prozesse und Ressourcen einer CGroup anzeigen
systemctl status <dienst>
cat /sys/fs/cgroup/<controller>/<gruppe>/
# Aktive CGroups anzeigen
cat /proc/cgroups

# Beispielausgabe:
/proc/cgroups
#subsys_name	hierarchy	num_cgroups	enabled
cpu        0   239	1
cpuacct	   0   239	1
blkio	   0   239	1
devices	   0   239	1
freezer	   0   239	1
net_cls	   0   239	1
perf_event 0   239	1
net_prio   0   239	1
hugetlb	   0   239	1
pids	   0   239	1
rdma	   0   239	1
misc	   0   239	1
Spalte Bedeutung
subsys_name Name des Controllers (z.B. cpu, memory, devices)
hierarchy ID der Hierarchie (0 = nicht zugeordnet, sonst Nummer der Hierarchie)
num_cgroups Anzahl der aktuell existierenden CGroups für diesen Controller
enabled 1 = Controller ist aktiv, 0 = deaktiviert

Beispiel für die Zahlen:

hierarchy 0 bedeutet, der Controller ist keiner Hierarchie zugeordnet; eine andere Zahl wäre die Hierarchie-ID.
num_cgroups Wie viele CGroup-Gruppen für diesen Controller aktuell existieren.
enabled 1 = Controller ist aktiv/nutzbar, 0 = deaktiviert.

Weitere Informationen

man cgroups
man systemd.resource-control
sammlung/cgroup.txt · Zuletzt geändert: von 127.0.0.1