Dockers Platz in der Cloud

Dockers Platz in der Cloud

Wenn wir AWS ECS und andere Containerdienste für einen Moment beiseite lassen, ist ein Docker-Host, der auf einer VM in der Cloud läuft, irrelevant?

Container sollen das Gastbetriebssystem optimieren, aber da Sie bereits mit VMs arbeiten, ist das nicht so etwas wie „Hut auf dem Hut“?

Welche Vorteile hätte es beispielsweise, 4 Container auf zwei mittelgroßen VMs zu hosten, anstatt nur 4 kleine VMs, die mit Packer bereitgestellt werden?

Antwort1

Es wird Vorteile geben.

Stellen Sie sich beispielsweise einen Fall vor, in dem eine virtuelle Maschine Docker mit Container-Apps hostet. Obwohl mit Thin VMs ein ähnliches Setup erreicht werden kann, ist dies möglicherweise nicht so praktisch wie mit Docker. Außerdem sind VMs immer noch nicht so Thin wie Container, sie verschwenden mehr Ressourcen, da auf jeder ein vollwertiges Betriebssystem mit eigenem Kernel und vollständiger Umgebung ausgeführt wird, im Gegensatz zu einem Docker-Setup, bei dem nur ein Betriebssystemkernel und ein Satz Systemdienste ausgeführt werden.

Wenn Sie Docker mit seinen Apps hingegen in eine dedizierte VM legen, wird all das von anderen Diensten auf dem Host isoliert, und Sie können dann andere VMs auf diesem Host ausführen, die nicht einmal wissen, dass Docker in der Nähe ist. Dies verbessert die Verwaltbarkeit erheblich. Außerdem können Sie damit eine hohe Verfügbarkeit im „IaaS“-Stil implementieren, da diese Docker-VM von der Hardware entkoppelt ist und bei Bedarf auf einen anderen Host migriert werden kann. Bei sorgfältiger Einrichtung würde dies die Gesamtverfügbarkeit verbessern (zusätzlich zu „PaaS“, das Docker selbst implementiert).

Im Allgemeinen soll Virtualisierung eine Reihe von Problemen lösen, während Containerisierung andere löst. Es gibt einige Überschneidungen im Bereich der vollständigen Systemcontainerisierung, wie sie beispielsweise bei Proxmox VE stattfindet. Es führt eine dedizierte Umgebung mit LXC für einen Container aus. Aber angesichts von PVE und der Notwendigkeit, Docker auszuführen, werde ich dennoch eine VM dafür einrichten, nur um sicherzugehen, dass es nicht mit Clustern usw. in Konflikt gerät.

verwandte Informationen