© Liashko/Shutterstock.com
Entwickler Magazin
Kubernetes anwenderfreundlich machen, aber wie?

Kubernetes hat ein Imageproblem

Kubernetes ist populär wie nie zuvor. Kein Wunder, denn der Containerorchestrator bietet begehrte Features wie Rolling Updates, Zero Downtime, Self-Healing und Auto-Scaling. Zudem verspricht er ein nie zuvor dagewesenes Maß an Portabilität zwischen Plattformen. Doch je größer das Wertversprechen von Kubernetes wird, desto größer wird das Imageproblem, das über die Jahre entstanden ist.

Lukas Gentele


Von vielen Entwicklern wird Kubernetes als zu komplex und kaum beherrschbar wahrgenommen. Kubernetes hat ein Imageproblem. Wenn Anwendungsentwickler aus diesem Grund Kubernetes meiden, dann werden die Vorteile von Kubernetes kaum realisierbar sein, denn es wird schlicht an Anwendungen fehlen, die für den Betrieb mit Kubernetes entwickelt werden.

Die mehr als 2 000 Contributors von Unternehmen wie Google, Microsoft oder Red Hat haben Kubernetes zur mächtigsten Technologie für den Betrieb und die Skalierung von Containern gemacht. Kubernetes löst einige der kompliziertesten Probleme beim Betrieb von Software auf sehr intelligente Weise, aber zur gleichen Zeit macht es sehr simple Aufgaben deutlich komplizierter. In Zeiten von Microservices und DevOps möchten Entwicklerteams kleine Anwendungen schnell aufbauen und in den Betrieb überführen. Nutzt man hierbei Kubernetes, muss der Entwickler plötzlich neben dem Konzept des Containers auch verstehen, was ein Pod ist und wie ein solcher durch ein ReplicaSet gesteuert wird, das wiederum von einem Deployment oder einem StatefulSet erzeugt wurde. Um eine Anwendung dann nach außen verfügbar zu machen, müssen zusätzlich noch Networkingressourcen wie Services, Ingresses oder Load Balancer konfiguriert werden. Die Anforderungen, die die Nutzung von Kubernetes mit sich bringt, sind selbst bei kleinsten Anwendungen so hoch, dass es insbesondere für Anwendungsentwickler zur Herausforderung werden kann, Kubernetes effizient einzusetzen.

Warum Kubernetes so komplex sein muss

Grundsätzlich ist Kubernetes als Containerorchestrator kein klassisches Entwicklertool, sondern überwiegend eine Technologie für Systemadministratoren. Dass Kubernetes entwicklerfreundlicher werden muss, stand bisher kaum im Fokus und daher ist es verständlich, dass Kubernetes als kompliziert und das Ökosystem als kaum zu überblicken gilt. Als Kubernetes 2014 von Google als Open-Source-Software auf GitHub veröffentlicht wurde [1], konnte wohl kaum einer ahnen, dass sich ein riesiges Ökosystem um diesen Containerorchestrator entwickeln würde. Heute zählt die Cloud Native Computing Foundation (CNCF), die im August 2018 die operative Kontrolle über das Kubernetes-Projekt übernommen hat [2], zu den aktivsten Initiativen innerhalb der Linux Foundation. Die CNCF hat mittlerweile knapp 100 Kubernetes-Distributionen, -Plattformen und -Installer zertifiziert [3] und listet mehr als 600 Projekte auf der CNCF Landscape [4], in deren Entwicklung bereits mehr als 40 ...

Entwickler Magazin
Kubernetes anwenderfreundlich machen, aber wie?

Kubernetes hat ein Imageproblem

Kubernetes ist populär wie nie zuvor. Kein Wunder, denn der Containerorchestrator bietet begehrte Features wie Rolling Updates, Zero Downtime, Self-Healing und Auto-Scaling. Zudem verspricht er ein nie zuvor dagewesenes Maß an Portabilität zwischen Plattformen. Doch je größer das Wertversprechen von Kubernetes wird, desto größer wird das Imageproblem, das über die Jahre entstanden ist.

Lukas Gentele


Von vielen Entwicklern wird Kubernetes als zu komplex und kaum beherrschbar wahrgenommen. Kubernetes hat ein Imageproblem. Wenn Anwendungsentwickler aus diesem Grund Kubernetes meiden, dann werden die Vorteile von Kubernetes kaum realisierbar sein, denn es wird schlicht an Anwendungen fehlen, die für den Betrieb mit Kubernetes entwickelt werden.

Die mehr als 2 000 Contributors von Unternehmen wie Google, Microsoft oder Red Hat haben Kubernetes zur mächtigsten Technologie für den Betrieb und die Skalierung von Containern gemacht. Kubernetes löst einige der kompliziertesten Probleme beim Betrieb von Software auf sehr intelligente Weise, aber zur gleichen Zeit macht es sehr simple Aufgaben deutlich komplizierter. In Zeiten von Microservices und DevOps möchten Entwicklerteams kleine Anwendungen schnell aufbauen und in den Betrieb überführen. Nutzt man hierbei Kubernetes, muss der Entwickler plötzlich neben dem Konzept des Containers auch verstehen, was ein Pod ist und wie ein solcher durch ein ReplicaSet gesteuert wird, das wiederum von einem Deployment oder einem StatefulSet erzeugt wurde. Um eine Anwendung dann nach außen verfügbar zu machen, müssen zusätzlich noch Networkingressourcen wie Services, Ingresses oder Load Balancer konfiguriert werden. Die Anforderungen, die die Nutzung von Kubernetes mit sich bringt, sind selbst bei kleinsten Anwendungen so hoch, dass es insbesondere für Anwendungsentwickler zur Herausforderung werden kann, Kubernetes effizient einzusetzen.

Warum Kubernetes so komplex sein muss

Grundsätzlich ist Kubernetes als Containerorchestrator kein klassisches Entwicklertool, sondern überwiegend eine Technologie für Systemadministratoren. Dass Kubernetes entwicklerfreundlicher werden muss, stand bisher kaum im Fokus und daher ist es verständlich, dass Kubernetes als kompliziert und das Ökosystem als kaum zu überblicken gilt. Als Kubernetes 2014 von Google als Open-Source-Software auf GitHub veröffentlicht wurde [1], konnte wohl kaum einer ahnen, dass sich ein riesiges Ökosystem um diesen Containerorchestrator entwickeln würde. Heute zählt die Cloud Native Computing Foundation (CNCF), die im August 2018 die operative Kontrolle über das Kubernetes-Projekt übernommen hat [2], zu den aktivsten Initiativen innerhalb der Linux Foundation. Die CNCF hat mittlerweile knapp 100 Kubernetes-Distributionen, -Plattformen und -Installer zertifiziert [3] und listet mehr als 600 Projekte auf der CNCF Landscape [4], in deren Entwicklung bereits mehr als 40 ...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang