Kostenloses Online-Hosting für WorkStations

<Zurück | Inhalte | Weiter>

6.10. Kontrollgruppen


Kontrollgruppen (cgroups) sind eine Kernelfunktion, die eine hierarchische Aufgabengruppierung sowie Ressourcenabrechnung und -beschränkungen pro Kontrollgruppe ermöglicht. Sie werden in Containern verwendet, um den Zugriff auf Block- und Zeichengeräte zu beschränken und Container einzufrieren (zu suspendieren). Sie können außerdem verwendet werden, um die Speichernutzung zu begrenzen und E/A zu blockieren, minimale CPU-Anteile zu garantieren und Container an bestimmte CPUs zu binden.


Standardmäßig wird ein privilegierter Container CN einer cgroup namens zugewiesen /lxc/CN. Im Falle von Namenskonflikten (die bei der Verwendung benutzerdefinierter lxcpaths auftreten können) wird ein Suffix „-n“ an den cgroup-Namen angehängt, wobei n eine Ganzzahl ist, die bei 0 beginnt.


Standardmäßig wird ein privilegierter Container CN einer cgroup namens zugewiesen CN zum Beispiel unter der Kontrollgruppe der Aufgabe, die den Container gestartet hat /usr/1000.user/1.session/CN. Dem Container-Root wird die Gruppeneigentümerschaft für das Verzeichnis (jedoch nicht für alle Dateien) übertragen, sodass er neue untergeordnete Kontrollgruppen erstellen darf.


Ab Ubuntu 14.04 verwendet LXC den Cgroup-Manager (cgmanager) zur Verwaltung von Cgroups. Der cgroup-Manager empfängt D-Bus-Anfragen über den Unix-Socket /sys/fs/cgroup/cgmanager/sock. Um sichere ineinander verschachtelte Behälter zu ermöglichen, ist die Linie


lxc.mount.auto = cgroup


kann zur Containerkonfiguration hinzugefügt werden, was dazu führt, dass /sys/fs/cgroup/cgmanager Verzeichnis, das im Container gebunden werden soll. Der Container wiederum sollte den cgroup-Verwaltungs-Proxy starten (standardmäßig ausgeführt, wenn das cgmanager-Paket im Container installiert ist), der die Datei verschiebt /sys/fs/cgroup/cgmanager Verzeichnis zu /sys/fs/cgroup/cgmanager.lower, und beginnen Sie dann, auf Proxy-Anfragen auf seinem eigenen Socket zu lauschen /sys/fs/cgroup/cgmanager/sock. Der Host-CG-Manager stellt sicher, dass verschachtelte Container ihren zugewiesenen Kontrollgruppen nicht entkommen oder Anfragen stellen können, für die sie nicht autorisiert sind.


Top OS Cloud Computing bei OnWorks: