Skalierende Container
Felix: Aber um in Kubernetes zu laufen, muss jede Anwendung erstmal containerisiert werden, richtig?
Laura: Ja. Und um deinen nächsten Einwand vorwegzunehmen: Das ist Aufwand, der einmal gemacht werden muss und für viele oder gar die meisten Anwendungen wohl recht gering ist.
Microservice, Monolith, Self-contained System: Alles lässt sich in Kubernetes betreiben. Natürlich spielt Kubernetes seine Stärke bei Microservices aus, aber das (Heraus-)Schneiden von Microservices fällt leichter, wenn der Monolith schon im Kubernetes-Cluster läuft und man nicht noch über Cluster-Grenzen hinweg kommunizieren muss.
Und einen zentralen Punkt haben wir noch gar nicht angesprochen.
Felix: So? Welchen denn?
Laura: Skalierung.
Felix: Skalierung? Du meinst diese automatische Skalierung, von der alle sprechen? Ich habe dieses Argument schon oft gehört, aber konkret tun das doch nur die wenigsten. Schließlich ist das äußerst komplex, wenn man das zuverlässig implementieren will, oder?
Laura: Ja und nein. Vollautomatische Skalierung inklusive Vergrößerung und Verkleinerung des Clusters ist in der Tat sehr komplex. Aber schon manuell verwaltete Skalierung ist in Kubernetes so viel einfacher als auf VMs. Wir haben ja schon über den "Totraum" gesprochen.
Andererseits kannst du mit sehr, sehr wenig Aufwand sowohl vertikal (genau wie in der VM) als auch horizontal skalieren. Die horizontale Skalierung in Kubernetes ist allerdings unabhängig von konkreten VM-Größen. Dedizierte VM-Neustarts aufgrund von Ressourcenänderung fallen also weg. Wird es eng im Cluster, werden einfach neue Nodes hinzugefügt. Und schon können wieder beliebig viele Pods (= Container-Gruppen aller Art) gestartet werden.
Das ultimative Betriebssystem
Die Kaffeetassen von Laura und Felix sind längst ausgetrunken. Da kommt Dominik zur Kaffeemaschine, bemerkt die beiden und klingt sich in das Gespräch ein:
Dominik: Nanu, habe ich euch beide nicht eben schon hier gesehen? Was gibt's denn bei euch so Spannendes?
Felix: Nichts weniger als das neue allumfassende IT-Betriebssystem!
Laura: Deinen sarkastischen Unterton kannst du dir sparen, Felix!
Aber eigentlich hast du Recht. Kubernetes ist nicht nur Container-Orchestrierung, sondern bietet auch Dinge wie Netzwerk-Routing, strikte Isolation von Komponenten/Systemen, die Installation vorgefertigter Softwarepakete und einiges mehr. Dabei bleibt die Verwaltung stets übersichtlich und beherrschbar.
Ich würde also in der Tat sagen: Kubernetes ist das neue ultimative IT-Betriebssystem. Es lässt sich quasi jede Anwendung in Kubernetes betreiben – und das ohne die Grenzen und Nachteile von dedizierten VMs.
Jochen R. Meyer arbeitet seit über 15 Jahren in der Softwareentwicklung; zuletzt mit dem Schwerpunkt Devops. In seiner aktuellen Rolle als Head of Devops & ITops arbeitet er mit seinem Team an effizienter Provisionierung von (virtueller) Infrastruktur und darauf aufbauender Developer Experience. Unter dem Team-Motto "We deploy on Fridays!" steht dabei Qualität, Zuverlässigkeit und Nachhaltigkeit an erster Stelle.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
YAML for the win! |
Hehe was? Natürlich muss das der Entwickler machen. Das ist Teil der Software-Architktur...
Ich würde nicht sagen, dass sich das das ausschließt. Es gibt ja beispielsweise in Azure...
Das ist der Punkt. Es macht super viel Spaß die Bestandteile der Anwendung in Kubernetes...
Es heißt OPC UA, das ist eine Schnittstelle und Kommunikationsprotokoll für intelligente...
Kommentieren