Synergieeffekte von virtuellen Maschinen und Containern für agile Betriebskonzepte

München, Starnberg, 19. Febr. 2021 - Die Speicherverwaltung ist weiterhin ein Thema; ohne Container bleiben Hybride- oder Multicloud-Optionen schwierig umzusetzen...

Zum Hintergrund: Beide Technologien - also virtuelle Maschinen und Container - adressieren im Prinzip jeweils eigene Herausforderungen, können sich in bestimmten Anwendungsszenarien jedoch ergänzen. Betreiber stehen vor der Herausforderung, Container im großen Maßstab über mehrere Cloud-Umgebungen hinweg einzusetzen und sicher zu verwalten, sowie den Storage sicher & flexibel handhaben zu können**. Kubernetes ist hier zur Erstellung, Verwaltung und Orchestrierung von Containern inzwischen eine extrem verbreitete Technologieoption und die Gründe dafür liegen auf der Hand: Mit Kubernetes bilden Container eine gemeinsame Plattform, die sowohl On-Premises als auch in den Public Clouds verfügbar ist. An der Plattform können Unternehmen ansetzen, um Applikationen unabhängig von ihrer Infrastruktur dorthin zu verlagern, wo sie gerade benötigt werden. Vorteil: Die aufwendige Konvertierung im Rahmen der Applikations-Modernisierung entfällt. Heute gelten Container als eine Schlüsseltechnologie auf dem Weg zu Mikroservices und Gartner geht davon aus, dass bis 2022 über 75 Prozent der globalen Unternehmen container-basierte Anwendungen in der Produktion einsetzen werden.


**Anmerkung: Der Wechsel auf Microservices-Architekturen ändert auch die Storage-Bereitstellung. Je stärker sich Mikroservices etablieren, desto wichtiger wird die zentrale Verwaltung von persistentem Storage über eine zentrale Steuerebene. Dies kann bedeuten, die Storage-Plattform selbst zu containerisieren; sie steht dann als Microservice über Storage-Container bereit. In diesem Szenario kann beispielsweise in OpenShift neben Applikations-Containern auch Storage bereitstehen, um über ein Framework wie Kubernetes verwaltet zu werden. IT-Organisationen benötigen zur Speicherverwaltung idealerweise Optionen, wie sie bereits bei virtualisierten Umgebungen existieren und sich dort bewährt haben. Eine der wichtigsten Anforderungen ist persistenter Speicher, um Applikationsdaten über den gesamten Lebenszyklus eines Containers zu speichern. Zustandsbehaftete (stateful) Apps erfordern, dass die Daten auch über den Lebenszyklus eines Containers hinaus verfügbar sind. Dies ist für Betreiber noch immer eine Herausforderung, wollen Sie sich nicht auf einzelne hochintegrierte, aber propietäre Plattformen konzentrieren. Querverweis / Link > https://kubernetes.io/docs/concepts/storage/persistent-volumes/


Für Marc Kleff, Director Solutions Engineering bei NetApp, zeichnet sich bei virtuellen Maschinen und Containern jedenfalls ein klarer Trend ab: Beide Ansätze drängen in die Welt des anderen. Woran sich das festmachen lässt, kommentiert der Datenexperte anhand der Vorteile beider Technologien und wie man diese im Parallelbetrieb bereits nutzt. Zitatauszug: "Wir beobachten bei NetApp den Trend, dass die beiden Welten ein Stück weit verschmelzen: Zum einen versuchen Unternehmen, Container in die Virtualisierung von Servern einzubinden. Zum anderen lassen sich mit Kubernetes, dem Standard-Tool für das Orchestrieren von Container-Umgebungen, auch VM's steuern." In der Konsequenz bedeutet seine Analyse, dass Container auch in der klassischen Unternehmens-IT ankommen müssen. Ansonsten fällt es schwer, die heute zunehmend geforderten Hybrid- oder Multicloud-Optionen effektiv umzusetzen. Die voranschreitende Containerisierung steht jedenfalls nach Ansicht des Experten nicht in Konkurrenz zur Virtualisierung.

Verschieben von Workloads in die Cloud

  • Hier setzten jeweils 28 Prozent der Unternehmen auf Technologien zur Virtualisierung oder Migrations-Tools; dies hat jedenfalls IDC in seiner Cloud-Studie 2020 für die DACH-Region ermittelt. (1) Die Cloud-nativen Container (23 Prozent) sowie ergänzende Orchestrierungswerkzeuge (22 Prozent) folgen dahinter, um den Schritt in die Cloud zu vollziehen. Aus dieser Bestandsaufnahme lesen die IDC-Analysten heraus, dass die Container-Adaption weiterhin schnell vorangeht. Demnach entwickeln sechs Prozent der befragten Unternehmen gezielt Container-kompatible Anwendungen. 13 Prozent der Studienteilnehmer nutzen Container in der Softwareentwicklung (DevOps), um automatisiert und überwacht Apps bereitzustellen (CI/CD). Ein weiteres Drittel verwendet die Technologie ergänzend in bereits virtualisierter Infrastruktur auf bestehenden Hypervisoren. Dort, wo der Hypervisor dann seine Funktion für virtuelle Maschinen (VM) nicht mehr erfüllt, rechnet IDC mit dem Wechsel auf eine Container-native Umgebung.

Womit die Technologien jeweils punkten

  • So wirkt das VM-Prinzip weiter, bei der eine Software von der Hardware abstrahiert wird, über ein eigenes Betriebssystem verfügt und die eigene Anwendung mit Ressourcen versorgt. Die Virtualisierung macht uns unabhängiger von der Hardware. Sie gibt uns die Flexibilität, Hardware effizienter auszureizen. Ohne das Wissen, ob ein Workload mehr CPU oder RAM benötigt, lassen sich kaum die passenden Hardware-Kapazitäten bereitstellen. VM bieten die Flexibilität, verschiedene Kubernetes-Cluster auf derselben Hardware zu betreiben und ihnen Hardware-unabhängig die benötigten Ressourcen zuzuteilen.

  • Genauso richtig ist, dass neue Anwendungsarchitekturen keine ganze Maschine, sondern mehrere Container benötigen. Diese bilden Software-technisch eine Laufzeitumgebung für eine App. Das ist ideal für Softwareentwickler, weil sie so ihre Anwendung in Microservices zerlegen und mit ihnen schrittweise sowie schneller den Quellcode für eine Anwendung kompilieren können. Im weiteren Vergleich zur Servervirtualisierung befreien uns Container von Abhängigkeiten wie dem Betriebssystem, Frameworks, Java-Versionen und anderen.

Container-Auftrag an IT-Teams und das Cloud-Argument

  • Container haben sich zum Standard bei Cloud-nativen DevOps-Teams entwickelt. In der klassischen Unternehmens-IT kommen sie jedoch erst langsam an. Die IT-Abteilungen müssen sich jetzt darauf vorbereiten, den Schritt zu Container-Umgebungen in den nächsten Jahren zu vollziehen. Dafür sprechen zwei Gründe: So ist langfristig damit zu rechnen, dass Container den Großteil der Anwendungen abdecken werden. Die Technologie bringt viele Vorteile, bedeuten jedoch auch Komplexität. Unternehmen stehen deshalb vor einer steilen Lernkurve, die Zeit beansprucht. Beispielsweise hat die Virtualisierung von Servern etwa acht bis zehn Jahren gedauert.

  • Als zweites Argument kommen nach Ansicht von Marc Kleff Hybrid- und Multiclouds ins Spiel, wohin Container den Weg ebnen. Mit Kubernetes als Orchestrierungslösung bilden Container eine gemeinsame Plattform, die sowohl On-Premises als auch in den Public Clouds der großen Hyperscaler verfügbar ist. An dieser Plattform können Unternehmen anknüpfen, um Applikationen unabhängig von ihrer Infrastruktur dorthin zu verlagern, wo sie benötigt werden. Die aufwendige Konvertierung der Anwendungen entfällt.

Beide Technologien lösen also unterschiedliche Probleme, weshalb sie sich ergänzen, zusammen oder nacheinander zum Einsatz kommen. Eine gängige Kombination ist, auf einem Bare-Metal-Server mehrere VM zu betreiben, während in einer von diesen ein Container läuft. In der Praxis verbreitet ist zudem, eine Testumgebung auf Containerbasis aufzubauen. Geht die App in den Produktivbetrieb, wird sie über eine VM bereitgestellt, weil diese stärker isoliert und sicherer ist.

Abb. 1: What is Kubernetes. Container versus Virtualized and Traditional Deployment (Bildquelle: kubernetes.io)

Blick in die Zukunft

VM sterben nicht aus, aber die Containerisierung setzt sich rasant fort, falls die Marktprognosen eintreffen sollten. IDC z.B. prognostiziert für 2023, dass weltweit die Hälfte aller Unternehmensapplikationen in Container-basierten Hybrid- oder Multiclouds bereitgestellt werden, um die Agilität und das Management von Anwendungen zu verbessern. Darüber hinaus zeichnet sich deutlich ab: Besonders zustandsorientierte Anwendungen, die Daten erheben, generieren, verarbeiten oder darauf zugreifen müssen, kommen stärker in der Container-Welt an. Diese Technologie wird mit der Virtualisierung verschmelzen. Die spannende Frage aus technologischer Sicht ist, ob eher Container in den Bereich der VM vordringen oder die Virtualisierung von Servern stärker auf Container-Plattformen übergreift. Zu erwarten ist daneben eine steigende Nachfrage nach flexiblen Betriebsoptionen für Container-Umgebungen. Diese verlangen nach flexibler Skalierung und Agilität über die Infrastrukturgrenzen hinweg, da sich datenintensive Anwendungen von Cloud zu Cloud bewegen und skalieren lassen müssen.


Querverweis: