Grundlagen von Cloud und Containern
Welche Kombination ordnet den Linux-Kernelfunktionen, auf denen Container beruhen, nämlich den Namespaces und den cgroups (Control Groups), ihre Aufgaben richtig zu?
- ANamespaces: trennen, was ein Prozess sieht (Prozess-IDs, Netzwerk, Mounts usw.); cgroups: begrenzen und erfassen den Verbrauch von Ressourcen wie CPU und Arbeitsspeicher
- BNamespaces: begrenzen und erfassen den Verbrauch von Ressourcen wie CPU und Arbeitsspeicher; cgroups: trennen, was ein Prozess sieht (Prozess-IDs, Netzwerk, Mounts usw.)
- CNamespaces: starten für jeden Container einen eigenen Kernel, um die Container voneinander zu isolieren; cgroups: erzeugen für jeden Container eine virtuelle CPU und emulieren die Hardware
Antwort und Erläuterung anzeigen
Antwort: A. Namespaces: trennen, was ein Prozess sieht (Prozess-IDs, Netzwerk, Mounts usw.); cgroups: begrenzen und erfassen den Verbrauch von Ressourcen wie CPU und Arbeitsspeicher
Ein Container ist ein gewöhnlicher Prozess, der auf dem Kernel des Hosts läuft und durch zwei Mechanismen isoliert wird. Namespaces teilen Prozess-IDs, Netzwerk, Mounts (die Sicht auf das Dateisystem), Hostnamen usw. in Gruppen auf, sodass die Prozesse in einem Container nur ihren eigenen Teil sehen. cgroups begrenzen die CPU-Zeit und die Speichermenge, die eine Gruppe von Prozessen nutzen kann, und erfassen den Verbrauch. Beides sind Kernelfunktionen; ein Container startet also weder einen eigenen Kernel, noch emuliert er Hardware.
Weiter: 9 weitere Fragen zu Grundlagen von Cloud und Containern