LackyVis - stock.adobe.com

Wie Windows-Server- und Hyper-V-Container funktionieren

Für den Einsatz von Windows-Server- und Hyper-V-Container sollten die spezifischen Anforderungen, Einsatzmöglichkeiten und Management-Praktiken klar sein.

Die Virtualisierung von Servern mit herkömmlichen Technologien hat mehrere Nachteile. Der größte ist, dass die Betriebssysteme auf den virtuellen Servern Last verursachen, die mit der virtualisierten Anwendung nichts zu tun hat. Schließlich muss jeder virtuelle Server eine Kopie des Betriebssystems nutzen, das vollständig installiert ist. Container lösen das Problem. Die Technologie erlaubt vereinfach gesagt die Virtualisierung von Server- und Cloud-Anwendungen ohne unnötigen Betriebssystemballast.

Microsoft hat den Nutzen von Containern erkannt. Ein großer Vorteil von Windows Server 2016 ist die Möglichkeit, Container hinzufügen zu können, die ähnliche Funktionen haben wie die der führenden Open-Source-Anbieter. Die Microsoft-Plattform bietet aktuell zwei verschiedene Arten von Containern: Windows-Server-Container und Hyper-V-Container.

Bevor Sie sich entscheiden, welcher der beiden Container-Optionen Ihren Bedürfnissen am besten entspricht, werfen Sie einen Blick auf die folgenden kurzen Tipps. Sie vermitteln ein Verständnis für Container-Architektur, Deployment und Performance-Management.

Windows-Server-Container versus Hyper-V-Container

Obwohl Windows-Server-Container und Hyper-V-Container prinzipiell dasselbe leisten und auf die gleiche Weise verwaltet werden, ist der Grad der Isolierung, den sie bieten, unterschiedlich.

Windows-Server-Container teilen sich den zugrunde liegenden Betriebssystem-Kernel, wodurch sie kleiner als virtuelle Maschinen (VM) sind, da sie nicht alle eine Kopie des Betriebssystems benötigen. Die Sicherheit kann jedoch ein Problem darstellen, denn wenn ein Container kompromittiert wird, können das Betriebssystem und alle anderen Container gefährdet sein.

Hyper-V-Container und ihre Abhängigkeiten befinden sich in Hyper-V VMs und bieten eine zusätzliche Isolierungsschicht. Als Referenz haben Hyper-V-Container und Hyper-V VMs unterschiedliche Anwendungsfälle. Container werden typischerweise für Microservices und stateless Anwendungen (zustandslose Anwendungen) verwendet, da sie vom Design her absetzbar sind und keine persistenten Daten speichern. Hyper-V VMs, die typischerweise mit virtuellen Festplatten ausgestattet sind, eignen sich hingegen besser für unternehmenskritische Anwendungen.

Die Rolle von Docker auf Windows Server

Um Windows Container Images zu verpacken, auszuliefern und zu verwalten, muss Docker auf den Windows Server 2016 heruntergeladen und installiert werden. Docker Swarm wird von Windows Server unterstützt und bietet Orchestrierungsfunktionen, die bei der Cluster-Erstellung und der Planung von Workloads helfen. Nachdem Docker installiert wurde, muss man es für Windows konfigurieren. Dazu gehört, gesicherte Verbindungen auszuwählen und Festplattenpfade festzulegen.

Ein wesentlicher Vorteil von Docker für Windows ist die Unterstützung der Container-Image-Automatisierung. Sie können Container-Images für kontinuierliche Integrationszyklen verwenden, da sie als Code gespeichert sind und bei Bedarf schnell wiederhergestellt werden können. Sie können auch ein Modul herunterladen und installieren, um PowerShell zur Verwaltung der Docker Engine zu erweitern. Bevor Sie dies tun, sollten Sie sich vergewissern, dass Sie die neuesten Versionen von Windows und PowerShell installiert haben.

Die Hyper-V-Container-Anforderungen erfüllen

Wenn Sie lieber Hyper-V-Container verwenden möchten, stellen Sie sicher, dass Sie Server Core oder Windows Server 2016 zusammen mit der Hyper-V-Rolle installiert haben. Es gibt außerdem eine Liste der minimalen Ressourcenanforderungen, die für den Betrieb von Hyper-V-Containern erforderlich sind.

Zunächst benötigen Sie mindestens vier GB Speicherplatz für die Host-VM. Außerdem brauchen Sie einen Prozessor mit Intel VT-x und mindestens zwei virtuelle Prozessoren für die Host-VM. Leider unterstützen AMD Nested Virtualization (verschachtelte Virtualisierung) noch nicht.

Auch wenn diese Anforderungen relativ umfassend aussehen, ist es wichtig, die Ressourcenzuweisung und Workloads, die Sie auf Hyper-V-Containern ausführen wollen, vor der Bereitstellung sorgfältig abzuwägen. Wenn es um Container-Images geht, haben Sie zwei Möglichkeiten: ein Windows Server Core Image und ein Nano Server Image.

OS-Komponenten beeinflussen beide Containertypen

Portabilität ist ein entscheidender Vorteil von Containern. Da eine Anwendung und alle ihre Abhängigkeiten innerhalb des Containers gebündelt sind, sollte es einfach sein, sie auf anderen Plattformen zu implementieren.

Leider gibt es mehrere Elemente, die sich negativ auf die Flexibilität der Bereitstellung auswirken können. Während Container den zugrunde liegenden OS-Kernel gemeinsam nutzen, enthalten sie ihre eigenen OS-Komponenten, auch bekannt als OS-Layer. Wenn diese Komponenten nicht mit dem OS-Kernel auf dem Host zusammenpassen, wird der Container wahrscheinlich blockiert.

Das von Microsoft verwendete vierstufige Notationssystem für die Versionen umfasst die Major-, Minor-, Build- und Revisions-Stufe. Bevor Windows-Server-Container oder Hyper-V-Container auf einem Windows-Server-Host ausgeführt werden, müssen die Major-, Minor-, Build-Level mindestens übereinstimmen. Wenn der Revisions-Level nicht übereinstimmt, werden die Container immer noch gestartet, aber sie funktionieren möglicherweise nicht richtig.

Anti-Malware-Tools und Container-Performance

Aufgrund von gemeinsam genutzten Komponenten, wie denen der OS-Layer, können Anti-Malware-Tools die Container-Performance beeinträchtigen. Die Komponenten oder Layer werden über die Verwendung von Platzhaltern geteilt. Wenn diese Platzhalter gelesen werden, werden die Lesezugriffe auf die zugrunde liegende Komponente umgeleitet. Wenn der Container eine Komponente modifiziert, ersetzt der Container den Platzhalter durch die modifizierte.

Anti-Malware-Tools kennen die Umleitung nicht und wissen nicht, welche Komponenten Platzhalter sind und welche Komponenten modifiziert werden. Damit werden dieselben Komponenten am Ende mehrfach gescannt.

Glücklicherweise gibt es eine Möglichkeit, Anti-Malware-Tools auf diese Aktivität hinzuweisen. Sie können das Container-Volume ändern, indem Sie einen Parameter an das Create CallbackData -Flag anhängen und die Exchange Control Panel (ECP) Umleitungs-Flags überprüfen. ECP zeigt dann entweder an, dass die Datei von einem Remote Layer aus oder von einem lokalen Layer geöffnet wurde.

Folgen Sie SearchDataCenter.de auch auf Twitter, Google+, Xing und Facebook!

Nächste Schritte

Das ist beim Einsatz von Docker-Containern wichtig.

Container absichern und sicher betreiben.

Welche Rolle spielt das Host-Betriebssystem für Container?

Erfahren Sie mehr über Serverbetriebssysteme