Container auf Windows- und Linux-Servern

Hybrid Clouds mit Docker Swarm und Ansible

| Autor / Redakteur: Thomas Joos / Stephan Augsten

Mit Docker Swarm und Ansible lassen sich Cloud-Umgebungen und Container komfortabel in hybriden Netzwerken betreiben.
Mit Docker Swarm und Ansible lassen sich Cloud-Umgebungen und Container komfortabel in hybriden Netzwerken betreiben. (Bild: krzysztof-m - Pixabay.com / Docker / Ansible / CC0)

Linux- und Windows-Server werden in immer mehr Netzwerken parallel eingesetzt. Administratoren und Entwickler benötigen daher Werkzeuge, um Container über beide Betriebssysteme hinweg effektiv einsetzen zu können.

Docker Swarm und Ansible lassen perfekt miteinander kombinieren, wenn es darum geht Cloud-Umgebungen und Container in hybriden Netzwerken zu betreiben. Vor allem beim gemeinsamen Einsatz von Linux und Windows können die beiden Lösungen für einheitliche Verwaltung und Entwicklung sorgen.

Die Automatisierung von Entwicklungs-Prozessen ist einer der zentralen Bestandteile von DevOps. Nur dadurch ist sichergestellt, dass neue Versionen möglichst fehlerfrei, einheitlich und effizient bereitgestellt werden können. Auch die Produktionsumgebung sollte dem gleichen Stand entsprechen.

Hier helfen Tools wie Ansible, Chef, Puppet oder Saltstack. Durch die Pipeline wird sichergestellt, wie die Bereitstellung des neuen Codes zu erfolgen hat. Die Continuous-Automation-Plattform Chef bietet auch die automatisierte Durchführung von Compliance-Tests.

Ansible baut auf Python auf, im Gegensatz zur Ruby-Basis von Chef und Puppet. Auf den Ziel-Systemen ist keine Erweiterung notwendig, um Anwendungen mit Puppet automatisiert bereitzustellen. Außerdem ist nicht zwingendermaßen ein eigener Server notwendig. Die Skripte, auch Playbooks genannt, werden in Ansible mit YAML verfasst. Dabei arbeitet YAML aber nicht deklarativ, so wie Chef und Puppet. Ansible und Docker Swarm lassen sich also parallel einsetzen.

Docker Swarm bietet im Vergleich zu Kubernetes den Vorteil, dass die Lösung direkt in Docker integriert ist. Das macht die Bereitstellung einfacher, vor allem wenn es nicht um riesige Installationen geht. Wenn aber Container auf unterschiedlichen Hosts betrieben werden, ist ein Orchestrierungswerkzeug nahezu unerlässlich.

Im Vergleich zu Kubernetes ist das Einlernen in Docker Swarm wesentlich einfacher, da bekannte Docker-Werkzeuge genutzt werden. Natürlich können Unternehmen jederzeit zu Kubernetes wechseln. Allerdings ist hier einiges an Einarbeitung und Konfiguration notwendig.

Container orchestrieren

Docker Swarm ist ein Orchstrierungswerkzeug für Container, ähnlich wie Kubernetes. Die Lösung kann große Menge an Container-Hosts und Container parallel verwalten. Container sind generell nur dann sinnvoll, wenn diese in großer Anzahl im Unternehmen eingesetzt, und gleichzeitig zentral verwaltet werden. In diesem Fall ist eine Orchestrierungslösung wie Kubernetes oder Docker Swarm notwendig, um alle Funktionen optimal zu nutzen.

Docker Swarm unterscheidet sich von Kubernetes vor allem darin, dass die generelle Struktur der Lösung, also Architektur und Ebenen wesentlich einfacher gehalten ist. Bei Docker werden Anwendungen direkt als Services (Microservices) zur Verfügung gestellt. Dazu nutzt Docker Swarm ebenfalls ein Cluster. Anwendungen, die sich über mehrere Container erstrecken werden mit YAML definiert.

Mit Docker können Entwickler YAML-Vorlagen erstellen. Dienste können global oder repliziert bereitgestellt werden. Globale Dienste laufen auf allen Knoten. Replizierte Dienste führen Repliken der Dienste über Knoten aus. So kann zum Beispiel ein MySQL-Dienst mit drei Repliken auf maximal drei Knoten laufen. Aufgaben können nach oben oder unten skaliert und parallel bereitgestellt werden.

Ansible und Docker Swarm kombinieren

Setzen Entwickler auf Ansible und Docker Swarm, lassen sich Container im kompletten Netzwerk einheitlich bereitstellen und verwalten. Da Windows Server 2016 und dessen Nachfolger Windows Server 1709/1803 und Windows Server 2019 ebenfalls stark auf Container setzen, profitieren Unternehmen, die Windows-Container auf Docker-Basis nutzen, von den Möglichkeiten von Ansible und Docker Swarm. Hier ist aber auch Kubernetes als Ersatz für Docker Swarm denkbar, da vor allem Windows Server 2019 mit einer umfassenden Kubernetes-Unterstützung erscheinen wird.

Hybride Umgebungen managen

Auch wenn es Administratoren oft nicht recht ist, müssen in vielen Windows-Netzwerken Windows-Server parallel mit Linux-Servern eingesetzt werden. Oft müssen die beiden Server-Systeme miteinander kommunizieren, wenn Teile der Server-Anwendung auf Linux und andere auf Windows setzen.

Für das Unternehmen spielt es eine wichtige Rolle, dass die Workloads und Server-Anwendungen problemlos funktionieren. Welches Betriebssystem den Servern zu Grunde liegt, spielt häufig keine Rolle. Daher ist es notwendig, dass eine zentrale Lösung alle Container verwalten kann, und eine Lösung für die Bereitstellung von Apps aus Code den Code auf den Containern als App bereitstellen kann.

Docker Swarm kommt optimal mit Windows Server 2016 aus. Die Lösung lohnt sich also vor allem für Unternehmen, die auf Docker-Container in Windows Server 2016 setzen. Erst mit den Nachfolgern Windows Server 1709/1803 und Windows Server 2019 verbessert sich die Unterstützung für Kubernetes merklich.

Automatisierte Bereitstellung erhöht die Effektivität

Im Fokus von Container-Umgebungen in denen eigene Anwendungen oder Micro-Services bereitgestellt werden steht die Automatisierung. Sowohl die Bereitstellung der Apps, als auch die Bereitstellung der Container, die dazu benötigt werden, sollten automatisiert werden. Ansible ist mit etwas Einarbeitung sogar dazu in der Lage, mit Docker Swarm die Automatisierung der Container-Bereitstellung durchzuführen. Hier ist etwas Einarbeitung in die Möglichkeiten von Ansible notwendig.

Fazit

Microsoft geht seit einiger Zeit neue Wege und unterstützt Linux, Open-Source-Projekte und Standards wesentlich besser als früher. Vor allem in aktuellen Windows-Server-Versionen zeigt Microsoft, dass Linux kein Gegner mehr ist, sondern ein Partner, der auch in Microsoft-Netzwerken unterstützt wird.

Aus diesem Grund können Unternehmen problemlos beide Betriebssysteme gemeinsam einsetzen. Ansible kann Windows Server 2016 umfassend automatisieren und mit Docker Swarm erhalten Administratoren und Entwickler ein Werkzeug, mit dem sich mehrere Container-Hosts parallel betreiben und gemeinsam verwalten lassen.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45270803 / Betriebssysteme)