Cloud Computing

Grundkenntnisse in Docker

Docker ist eine beliebte Container-Technologie. Und als Entwickler haben Sie wahrscheinlich schon davon gehört oder es verwendet. Viele Leute mögen Docker als eine leichte virtuelle Maschine betrachten. Docker und virtuelle Maschine (VM) sind jedoch zwei verschiedene Technologien zur Computervirtualisierung. Viele Leute denken, warum man bei virtuellen Maschinen Docker verwenden sollte?

Wenn Sie darüber nachdenken, was wären in den "alten" Tagen vor der Computervirtualisierung die typischen Schritte, wenn wir eine Anwendung bereitstellen würden?

Der erste Schritt besteht sicherlich darin, einen physischen Server vorzubereiten und dann ein Betriebssystem auf dem physischen Server zu installieren. Sobald wir ein Betriebssystem haben, installieren und führen wir unsere Anwendung auf dem Betriebssystem aus.

Diese Bereitstellung war jedoch sehr langsam. Denn wir mussten die Hardware-Server vorbereiten und das Betriebssystem installieren. Stellen Sie dann Anwendungen bereit, die viele Abhängigkeiten von Software aufweisen. Der Prozess ist nicht nur langsam, sondern auch die Kosten sind sehr hoch. Dies liegt vor allem daran, dass die Kosten für das physische Gerät so hoch sind, dass selbst für eine einfache Anwendungsbereitstellung ein Server erforderlich ist. Wenn die Anwendung zu einfach ist, werden auch Hardwareressourcen verschwendet.

Die einzige Möglichkeit, diese Probleme zu lösen, ist die Virtualisierung,

Die Vorteile virtueller Maschinen

Ressourcen können verschiedenen virtuellen Maschinen zugewiesen werden, um die Nutzung von Hardwareressourcen zu maximieren.

Virtuelle Maschinen sind einfacher zu skalieren, als sie direkt auf einer physischen Maschine bereitzustellen.

Cloud-Dienste: Virtuelle verschiedene physische Ressourcen über die virtuelle Maschine können Sie schnell Cloud-Dienste erstellen.

Mängel virtueller Maschinen

Die Schwäche virtueller Maschinen liegt im Verbrauch physischer Serverressourcen. Wenn wir eine virtuelle Maschine auf einem physischen Server erstellen, müssen wir eine Reihe von Hardware virtualisieren. Und führen Sie ein vollständiges Betriebssystem darauf aus. Jede virtuelle Maschine beansprucht viele Serverressourcen. Was ist Docker?

Verglichen mit der sperrigen virtuellen Maschine ist Docker leichter. Es nimmt also nicht zu viel Systemressourcen in Anspruch.

Docker wird unter Verwendung der derzeit beliebten Sprache Golang entwickelt. Sein technischer Kern ist Cgroup des Linux-Kernels, Namespace, Union FS der AUFS-Klasse und anderer Technologien. Dies sind Technologien, die seit vielen Jahren im Linux-Kernel enthalten sind. Es handelt sich also nicht unbedingt um eine vollständig innovative Technologie. Docker kapselt und isoliert den Linux-Prozess durch diese zugrunde liegenden Linux-Technologien. Und der isolierte Prozess wird auch als Container bezeichnet, der vom Hostprozess völlig unabhängig ist.

Docker ist daher eine Implementierung der Container-Technologie. Und eine Art Virtualisierung auf Betriebssystemebene. Es unterscheidet sich völlig von einer virtuellen Maschine, die das Betriebssystem über eine Reihe von Hardware installiert.

Docker ist die Isolation auf der Ebene des Betriebssystemprozesses. Während die virtuelle Maschine die Isolation auf der Ebene der physischen Ressourcen darstellt, sind diese völlig unterschiedlich. Wir können auch den grundlegenden Unterschied zwischen den beiden im Vergleich verstehen.