Kubernetes: Ein Jahrzehnt voller Innovation und Wachstum
Entdecken Sie die Entwicklung von Kubernetes und seine Bedeutung für die Cloud-Native-Welt in den letzten 10 Jahren.
Vor zehn Jahren, am 6. Juni 2014, wurde der erste Commit von Kubernetes auf GitHub veröffentlicht. Dieser erste Commit, der 250 Dateien und 47.501 Zeilen Go, Bash und Markdown umfasste, läutete das Projekt ein, das wir heute kennen. Wer hätte damals gedacht, dass Kubernetes zehn Jahre später zu einem der größten Open-Source-Projekte mit über 88.000 Mitwirkenden aus mehr als 8.000 Unternehmen in 44 Ländern heranwachsen würde?
Dieser Meilenstein ist nicht nur für Kubernetes bedeutend, sondern auch für das Cloud-Native-Ökosystem, das daraus entstanden ist. Innerhalb der CNCF existieren nahezu 200 Projekte, mit Beiträgen von über 240.000 individuellen Mitwirkenden und noch vielen weiteren in der erweiterten Community. Kubernetes wäre nicht dort, wo es heute steht, ohne diese Gemeinschaft, die über 7 Millionen Entwickler und die noch größere Benutzerbasis umfasst, die alle geholfen haben, das Ökosystem zu gestalten, das wir heute kennen.
Die Anfänge von Kubernetes – ein Zusammenspiel von Technologien
Die Ideen, die Kubernetes zugrunde liegen, begannen lange vor dem ersten Commit oder sogar dem ersten Prototypen (der 2013 entstand). In den frühen 2000er-Jahren war das Moore’sche Gesetz in vollem Gange. Die Rechenhardware wurde immer leistungsfähiger, und die Anwendungen wurden zunehmend komplexer. Diese Kombination aus Hardware-Kommodifizierung und Anwendungs-komplexität wies auf den Bedarf hin, Software weiter von Hardware zu abstrahieren, und Lösungen begannen zu entstehen.
Wie viele Unternehmen damals skalierte auch Google rasant, und die Ingenieure waren daran interessiert, eine Form der Isolation im Linux-Kernel zu schaffen. Der Google-Ingenieur Rohit Seth beschrieb das Konzept in einer E-Mail im Jahr 2006:
Wir verwenden den Begriff Container, um eine Struktur zu kennzeichnen, gegen die wir die Nutzung von Systemressourcen wie Speicher, Aufgaben usw. für eine Arbeitslast verfolgen und abrechnen.
Im März 2013 wurde in einem 5-minütigen Lightning Talk mit dem Titel “Die Zukunft der Linux-Container,” präsentiert von Solomon Hykes auf der PyCon, ein bevorstehendes Open-Source-Tool namens “Docker” vorgestellt, das die Erstellung und Nutzung von Linux-Containern erleichtert. Docker brachte eine Benutzerfreundlichkeit in die Linux-Container, die sie für mehr Benutzer zugänglich machte als je zuvor, und die Beliebtheit von Docker und damit von Linux-Containern schoss in die Höhe. Durch Docker wurde die Abstraktion von Linux-Containern für alle zugänglich, und das Ausführen von Anwendungen auf viel tragbarere und wiederholbare Weise wurde plötzlich möglich, doch die Frage des Maßstabs blieb.
Das Borg-System von Google zur Verwaltung der Anwendungsorchestrierung in großem Maßstab hatte Linux-Container übernommen, als sie in den mittleren 2000er Jahren entwickelt wurden. Seitdem hatte das Unternehmen auch an einer neuen Version des Systems mit dem Namen “Omega” gearbeitet. Ingenieure bei Google, die mit den Borg- und Omega-Systemen vertraut waren, erkannten die Beliebtheit der Containerisierung, die durch Docker vorangetrieben wurde. Sie erkannten nicht nur die Notwendigkeit eines Open-Source-Container-Orchestrierungssystems, sondern auch dessen “Unvermeidlichkeit”, wie es Brendan Burns in diesem Blogbeitrag beschrieb. Diese Erkenntnis im Herbst 2013 inspirierte…
Quelle: Kubernetes Blog