Wird Kubernetes durch seine eigene Komplexität vernichtet?

Kubernetes wäre nicht das erste große Open-Source-Projekt, das unter seinem eigenen Gewicht zusammenbricht, doch seine Verfechter sind da anderer Meinung. [...]

Kubernetes mentaler Vorgänger Hadoop ist an seiner eigenen Komplexität gescheitert. droht dieses Schicksal nun auch Kubernetes? (c) Pixabay.com

Kubernetes mag der aktuelle Liebling der Open-Source-Crowd sein, aber Hadoop wurde vorher nicht weniger verehrt. Hadoop ging letztendlich das Benzin aus, weil es unglaublich schwer zu benutzen war. Kubernetes macht zwar Fortschritte, bleibt aber „kein Keinerspiel bei der Benutzung“, wie Bernard Golden von Capital One erklärte. Das ist eine sehr diplomatische Art zu sagen, dass Kubernetes „eine verfluchte Nervensäge sein kann“.

Fährt Kubernetes auf einen Exit im Hadoop-Stil zu?

Wahrscheinlich nicht. Während Hadoop mit dem Alter immer komplizierter wurde, wird Kubernetes immer einfacher. Obwohl Kubernetes an sich wahrscheinlich nie „einfach“ sein werden, unterscheidet sich seine Komplexität in kritischer Hinsicht von der von Hadoop und ebnet den Weg dafür, dass Kubernetes für die kommenden Jahre ein Industriestandard bleiben wird.

Hadoop, das komplexe Geschenk, das immer weiter zugelegt hat

Lassen Sie uns zuerst Klarheit über Hadoop schaffen. Oder nicht klar, wie es in diesem Fall sein mag. Apache Hadoop war schon kompliziert genug, als es grob in „MapReduce“ übersetzt wurde. Im Laufe der Zeit entwickelte es sich jedoch ständig weiter, und während diese Entwicklung zu leistungsfähigeren Optionen führte, wurden auch diese Optionen immer größer. Sie waren auch nicht unbedingt leicht dazu zu bringen, miteinander zu funktionieren. Wie Tom Barber schrieb: „Was macht Hadoop eigentlich? MapReduce wurde durch Spark ersetzt, durch andere Dinge und so weiter. Natürlich kann man viel hineinstecken, aber es ist trotzdem klobig.“

Warum klobig? VMware’s Jared Rosoff erfasst das Problem gut: „Die Komplexität von Hadoop ergibt sich aus der Tatsache, dass ein typisches Hadoop-Setup im Wesentlichen aus Dutzenden von unabhängigen und komplizierten Systemen besteht, die unterschiedliche Lebenszyklen und Managementmodelle aufwiesen.“ Flume, Chukwa, Hive, Pig, ZooKeeper, und so weiter. Schlaue Namen, aber ein Albtraum, wenn man alles zum Laufen bringen wollte. Hadoop ist ein „komplexer Stapel von Lösungen“, argumentiert Dave Kellogg, CEO von Host Analytics, und all diese Komplexität wird vom Benutzer getragen.

Vielleicht am unterschiedlichsten zu Kubernetes, ist jedoch das Modell zur Erweiterung von Hadoop. Rosoff bemerkt: „Hadoop hat nicht darüber nachgedacht, wie die Leute es erweitern würden, und das Ergebnis war ein Ökosystem von inkompatiblen Erweiterungen.“ Im Gegenzug fährt er fort: „Kubernetes hat ganz Recht, wenn es darum geht, die Art und Weise, wie es erweitert wird, zu strukturieren. Die Betreiber, CRI/CSI/CNI, stellen sicher, dass, wenn mehr Anbieter auftauchen, sie dies auch auf vernünftige Weise tun.“ Mit anderen Worten, im Gegensatz zu Hadoop und seinen inkompatiblen Erweiterungen, „Kubernetes mit Dutzenden von Betreibern ist immer noch Kubernetes“.

Kubernetes: Komplexität, auf die Sie sich verlassen können

Das heißt nicht, dass Kubernetes einfach ist. Als einer der Schöpfer des Kubernetes ist Joe Beda von Heptio (VMware) in der Lage, zu erklären: „Kubernetes ist ein komplexes System“. Diese Komplexität ist einigermaßen notwendig, fährt er fort, denn „es bewirkt viel und bringt neue Abstraktionen“. Braucht jeder all diese Abstraktionen (und Glocken und Pfeifen) die ganze Zeit? Nein. „Ich bin sicher, dass es viele Leute gibt, die Kubernetes benutzen, die auch mit etwas Einfacherem auskommen könnten.“

Aber für diejenigen, die Kubernetes brauchen, betont Beda, ist es nicht unbedingt komplexer als ein anderes System, mit dem die Leute bereits vertraut sind. Es ist vielleicht einfach „neuer“ komplex im Gegensatz zu „alt und komfortabel“ komplex:

[A]s Ingenieure neigen wir dazu, die Komplexität, die wir selbst erzeugen, gegenüber der Komplexität, die wir lernen müssen, zu ignorieren. Wenn Sie ein komplexes Bereitstellungssystem mit Jenkins, Bash, Puppet/Chef/Salt/Ansible, AWS, Terraform, etc. erstellen, erhalten Sie eine einzigartige Art von Komplexität, mit der Sie sich wohl fühlen. Es ist organisch gewachsen, damit es sich eben nicht komplex anfühlt.

Aber es ist schwierig, neue Leute für die Hilfe bei einem solchen organisch gewachsenen System zu gewinnen. Sie kennen vielleicht einige der Tools, aber die Art und Weise, wie Sie sie zusammengestellt haben, ist einzigartig. Dies ist ein Bereich, in dem IMO und Kubernetes einen Mehrwert schaffen. Kubernetes bietet eine Reihe von Abstraktionen, die eine Reihe von Problemen lösen können. Wenn die Menschen ihr Verständnis und ihre Fähigkeiten rund um diese Probleme herum aufbauen, sind sie in einer Vielzahl von Situationen produktiver. Die Lernkurve ist immer noch steil! Aber diese Fähigkeiten sind heutzutage wertvoll und portabel zwischen Umgebungen, Projekten und Jobs.

Im Gegensatz zu der Komplexität, die in einem bestimmten Bereitstellungssystem steckt, das Sie bei Unternehmen X aufgebaut haben (und das für dieses Unternehmen einzigartig ist), kann die Art der Komplexität, die Sie mit Kubernetes beherrschen lernen, Sie von Unternehmen zu Unternehmen begleiten. Auf diese Weise wird es viel weniger komplex als die anderen Systeme, da das Wissen portabel ist. Anders ausgedrückt, „einmal lernen, überall anwenden“.

Zugehöriges Video: Was ist Kubernetes?

In diesem 90-Sekunden-Video erfahren Sie mehr über Kubernetes, das Open-Source-System zur Automatisierung containerisierter Anwendungen, von einem der Erfinder der Technologie, Joe Beda, Gründer und CTO bei Heptio.

YouTube

Mit dem Laden des Videos akzeptieren Sie die Datenschutzerklärung von YouTube.
Mehr erfahren

Video laden

Einmal lernen, überall anwenden

Dieses Lernen wiederum ist viel einfacher als es Hadoop je war. Kubernetes ist, im Gegensatz zu Hadoop, ein einfacheres System, mit dem man sich vertraut machen kann, zum Teil weil es überall laufen kann. Wie Gareth Rushgrove schreibt: „Man kann Kubernetes lokal viel, viel einfacher (Docker Desktop, Kind, MicroK8s) betreiben als die anderen vergleichbaren Beispiele. Die Senkung der Eintrittsbarriere erleichtert das Kennenlernen, was der wahrgenommenen Komplexität entgegenwirkt.“

Es hilft auch, wie Chris Aniszczyk, Geschäftsführer der Cloud Native Computing Foundation, betonte, dass verteilte Systeme zwar von Natur aus komplex sind, der Vorteil bei Kubernetes aber darin besteht, dass jeder große weltweite Cloud-Anbieter und zahlreiche Anbieter eine verwaltete konforme/zertifizierte Version davon anbieten (keine Forks), die den meisten Benutzern bei der Komplexität der Verwaltung im Maßstab hilft“. Dennoch, vielleicht ist die berechtigte Frage, wie Tamal Saha anführt, ob „Kubernetes komplex angesichts des Problems [ist], das es zu lösen gilt“. Für ihn lautet die Antwort nein.

Das ist die gleiche Antwort wie auf die Frage: „Wird Kubernetes hadooptiert werden?“ Kubernetes ist bereits weit über diese Phase hinaus. Ja, wie ein Kommentator festgestellt hat, ist Kubernetes „ein komplexes Orchestrierungswerkzeug und nicht für alle Anwendungsfälle ideal. Wie so viele der Tools in unserem Bereich braucht es außerdem Zeit, um es zu lernen, zu nutzen und zu verstehen. „Ein paar Stunden“ werden nicht ausreichen.“ Es ist ein komplexes Tool, das ein komplexes Problem lösen kann. Aber es gibt „absichtliche Komplexität und zufällige Komplexität“, wie Beda argumentiert. Hadoop litt unter letzterer, während Kubernetes die erstere mit einbezieht.

Aus diesen und anderen Gründen sollten wir dafür sorgen, dass Kubernetes als Industriestandard für die Orchestrierung von Containern weiterhin erfolgreich ist.

*Matt Asay schreibt unter anderem für Infoworld.com


Mehr Artikel

Thomas Brandstätter, Head of Custom-made Business Solutions DCCS. (c) DCCS
Kommentar

Fertigungsindustrie: Wie digitale Services und Produkterweiterungen zusätzliche Wertschöpfung ermöglichen

Der Schlüssel für zukünftige Produktinnovationen und eine erfolgreiche Weiterentwicklung des Kundenangebots heißt digitales Service und Add-ons. Thomas Brandstätter, Head of Custom-made Business Solutions bei DCCS, erklärt, warum nicht mehr das Produkt selbst, sondern damit verbundene Dienstleistungen und Erweiterungen im Fokus stehen. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*