Revolution für die Softwareentwicklung

Managed Kubernetes oder „Container as a Service“ (CaaS) – mit Containern zum Erfolg

Managed Kubernetes oder Docker Swarm – um beides einordnen zu können, braucht es eine kurze Einführung in die Besonderheiten der Container-Technik. Denn sowohl Softwareentwickler als auch Systemadministratoren (DevOps-Teams) müssen hier eine völlig neue Herangehensweise an die Virtualisierung beherzigen.

Managed Kubernetes, Container und Docker sind in aller Munde, aber was verbirgt sich dahinter?

Managed Kubernetes im Vergleich

Virtuelle Maschinen (VMs), wie sie bisher im Einsatz waren, brauchen einen Host mit Betriebssystem und einen Hypervisor, der die Ressourcen des Hosts zur Verfügung stellt. Auch die VMs, auf denen zahlreiche Applikationen und Dienste für unterschiedliche Geschäftsprozesse zur Verfügung gestellt werden, benötigen ein Gast-Betriebssystem.

Container hingegen benötigen kein eigenes Betriebssystem. Die Container Engine stellt den Zugriff auf den Kernel des Host-Betriebssystems (Host-OS) sicher. In den Containern werden einzeln lauffähige, voneinander unabhängige Microservices zur Verfügung gestellt. Jeder einzelne Service kann getrennt eingerichtet, implementiert, skaliert und upgegradet werden.

Container können daher sehr schnell bereitgestellt, gestartet und gestoppt werden. Benötigt man mehr Kapazitäten für einen Dienst, werden neue Container zur Verfügung gestellt. Umgekehrt können Container sofort gelöscht werden, wenn diese nicht mehr benötigt werden.

Container-Vorteil am Beispiel eines Neustarts:

Der Neustart einer VM ist dem Neustart eines Servers gleichzusetzen, während der Neustart eines Containers dem Start eines Prozesses auf dem Server entspricht. Entsprechend schneller ist der Neustart eines Containers.

Das monolithische System der VMs wird ersetzt durch Container mit einzelnen Microservices, auf die schneller und leichter zugegriffen werden kann.

Hier kommt Docker ins Spiel, denn Docker ist eine Open Source Software zur Isolierung von Anwendungen mit Containervirtualisierung. Um viele Container aber organisieren zu können, braucht es ein Orchestrierungstool: Kubernetes, das wir als Managed Kubernetes für Sie betreiben.

Kubernetes (K8S) – Container-Orchestrierung für die intelligente Logistik

Wussten Sie schon?

Der Begriff Kubernetes kommt aus dem Alt-Griechischen und bezeichnet‚ 'eine Person, die ein Schiff lenkt‘…
Die Verwendung des Begriffs ist also logisch, denn jedes Containerschiff braucht einen Steuermann oder im Neu-Griechischen einen Kapitän.
Kubernetes ist ein Open-Source-Tool, das von Google entwickelt wurde und heute unter der Schirmherrschaft der Cloud Native Computing Foundation (CNCF) steht.

Kubernetes ist wie Docker Swarm eine Grundlage für CaaS. Containerbasierte Anwendungen sind damit in einer cloudbasierten Container-Umgebung einfach zu erstellen, hochzuladen, und zentral zu verwalten. Kubernetes liefert eine grafische Oberfläche und eine Plattform zur Orchestrierung komplexer Containerarchitekturen.

Kubernetes als Orchestrierungstool organisiert folgende Funktionen:

  • Verteilung von Containern, auch auf mehrere ortsunabhängige Hosts
  • Anordnung von Containern in logischen Einheiten
  • Skalierung von Containern
  • Zuteilung von Speicherkapazitäten
  • Schnittstelle für die Kommunikation zwischen Containern
Warum Kubernetes und nicht Docker Swarm?

Mehr und mehr setzt sich Kubernetes in der Orchestrierung und im Management durch, denn Kubernetes orchestriert alle Container, während Docker Swarm für die Orchestrierung von Docker entwickelt wurde.

Migration zu Managed Kubernetes, das ist keine Ebenmal-Aktion

Die Umstellung auf Managed Kubernetes, also Container und Microservices, darf man sich nicht wie die Einführung einer neuen Software oder einer neuen Programmiersprache vorstellen. Es ist ein Paradigmenwechsel mit einer gänzlich neuen Struktur im technischen, aber auch im Teambereich. Vielleicht etwa vergleichbar mit der Umstellung von klassischem Projektmanagement hin zu agilem Projektmanagement. Es treffen Welten aufeinander und man muss entscheiden, welches der jeweils bessere Weg ist.

Wir empfehlen Ihnen, Managed Kubernetes zunächst mit einem kleineren Projekt zu beginnen und die Umstellung auf Container und Microservices vorab zu testen.

Container-Technik – Ihr Vorteil in der Softwareentwicklung

Container und Managed Kubernetes eignen sich besonders im Bereich der Softwareentwicklung.

Werden mehr Ressourcen benötigt, lassen sich die Container bei Bedarf sofort deployen und genauso schnell verwerfen, wenn sie nicht mehr gebraucht werden.

Managed Kubernetes und

Container-Vorteile

konsistente Umgebung überall ausführbar Isolation/Sandboxing weniger Speicher erforderlich geringerer Administrationsaufwand

Docker Swarm gewünscht?

Der Markt tendiert mittlerweile klar zu Kubernetes, auf Wunsch bieten wir Ihnen auch Docker-Swarm-Lösungen an.