Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Was Docker nicht isolieren kann

Was Docker nicht isolieren kann

青灯夜游
青灯夜游Original
2022-02-21 16:17:373408Durchsuche

Docker kann das „Lesen und Schreiben von Festplatten-E/A“ nicht isolieren, aber es kann das Dateisystem, das Netzwerk (Netzwerk), die Kommunikation zwischen Prozessen, Benutzer und Benutzergruppen für Berechtigungen, PID innerhalb des Prozesses und PID des Hosts isolieren , Der Hostname und der Domänenname sind isoliert.

Was Docker nicht isolieren kann

Die Betriebsumgebung dieses Tutorials: Linux5.9.8-System, Docker-1.13.1-Version, Dell G3-Computer.

Docker kann viele Ressourcen steuern, aber derzeit ist es nicht möglich, „Festplatten-E/A-Lese- und Schreib“-Ressourcen zu isolieren.

Festplatten-E/A bezieht sich auf die Eingabe und Ausgabe der Festplatte (Abkürzungen für Eingabe und Ausgabe). Dabei werden Anweisungen zum Lesen des Inhalts eines bestimmten Sektors von der Festplatte ausgegeben. Der Befehl informiert die Festplatte im Allgemeinen über die Position des Startsektors, gibt dann die Anzahl der aufeinanderfolgenden Sektoren an, die von diesem Anfangssektor gelesen werden müssen, und gibt außerdem an, ob es sich bei der Aktion um Lesen oder Schreiben handelt.

Für Festplatten-E/A-Ressourcen sind die zu berücksichtigenden Parameter Kapazität sowie Lese- und Schreibgeschwindigkeit, daher sollten die Festplattenbeschränkungen für Container auch auf diesen beiden Dimensionen basieren. Derzeit unterstützt Docker die Begrenzung der Lese- und Schreibgeschwindigkeit der Festplatte, es gibt jedoch keine Möglichkeit, die Festplattenkapazität zu begrenzen, die der Container nutzen kann (sobald die Festplatte im Container gemountet ist, kann der Container die gesamte Kapazität der Festplatte nutzen). .

Welche Ressourcen kann Docker also isolieren?

Docker implementiert Ressourcenisolation durch Namespace, Ressourcenbegrenzung durch Cgroups und effiziente Dateivorgänge durch *Copy-on-Write*.

Was kann durch Namespace isoliert werden? Um zu verhindern, dass ein Container andere Container stört, muss er in der Lage sein:

  • Das Dateisystem muss isoliert sein

  • Das Netzwerk muss ebenfalls isoliert sein

  • Auch die Kommunikation zwischen Prozessen muss isoliert werden

  • In Bezug auf Berechtigungen müssen Benutzer und Benutzergruppen ebenfalls isoliert werden

  • Die PID innerhalb des Prozesses muss auch von der PID im Host isoliert werden

  • Der Container muss auch einen eigenen Hostnamen haben

  • Mit der oben genannten Isolierung glauben wir, dass ein Container vom Host und anderen Containern isoliert werden kann.

  • Empfohlenes Lernen: „
Docker-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas Docker nicht isolieren kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn