Ruhe in Frieden, Rocket

Projekt rkt offiziell eingestellt: Eine Reminiszenz an eine Container-Engine

Dominik Mohilo

© Shutterstock / arleksey

Nicht weniger als gigantisch waren die Ambitionen, die das CoreOS-Team 2014 dazu bewegten, mit Rocket (rkt) einen Docker-Konkurrenten zu erschaffen. Heute, rund 5 Jahre später, wissen wir, dass man Docker zwar nicht schlagen, sich wohl aber eine Koexistenz erstreiten konnte. Wir lassen die wichtigsten Ereignisse der letzten Jahre noch einmal Revue passieren.

Wir schreiben das Jahr 2014. Die USA und Kuba machen einen gewichtigen Schritt in Richtung Diplomatie, Deutschland wird Fußball-Weltmeister und Maryam Mirzakhani erhält als erste Frau die Fields-Medaille. Doch 2014 ist auch für die IT-Branche ein wichtiges oder zumindest interessantes Jahr: Im Dezember erscheint mit Rocket (rkt) ein Prototyp, der den Platzhirsch Docker herausfordern soll.

Rocket

Bei Rocket handelt es sich um eine CLI-basierte App-Container-Runtime. Deren Docker-Gegenstück ist die Runtime runC (später: containerd). Schon damals wurde von Seiten der Macher von CoreOS, die auch für Rocket verantwortlich zeichnen, klargemacht, worum es geht, nämlich die Herausforderung von Docker:

We cannot in good faith continue to support Docker’s broken security model without addressing these issues. Additionally, in the past few weeks Docker has demonstrated that it is on a path to include many facilities beyond basic container management, turning it into a complex platform. Our primary users have existing platforms that they want to integrate containers with. We need to fill the gap for companies that just want a way to securely and portably run a container.

Quelle: CoreOS

Dass es früher oder später zum Konflikt kommen würde, war abzusehen. Dennoch koexistierten die beiden Container-Runtimes für lange Zeit nebeneinander und findige Entwickler machten natürlich möglich, dass man sich auch nicht wirklich entscheiden musste, welche Runtime man als Nutzer lieber einsetzen mochte.

Container Wars: rkt vs. containerd

2015, also im Jahr nach dem initialen Release von rkt, gründeten einige IT-Giganten die Open Contaner Initiative (OCI). Unter anderem waren daran IT-Giganten wie Amazon, Google, IBM, Alibaba und Microsoft unmittelbar beteiligt. Im gleichen Jahr wurde runC von Docker als eigenständiges Tool veröffentlicht.

Im Folgejahr, also 2016, wurde dann containerd als Antwort auf die Nachfrage der Community nach einer kleineren und schnelleren Runtime bereitgestellt. Doch die neue Runtime konnte nicht über die Aufregung in der Community hinweghelfen, die durch Dockers Entscheidung hervorgerufen wurde, Docker Swarm in die Kern-Engine zu implementieren.

Als Reaktion kündigte Solomon Hykes, der Gründer von Docker, die Auslagerung von containerd als eigenständiges Projekt und die Spende an eine (zu dem Zeitpunkt noch nicht klar benannte) gemeinnützige Organisation an:

What we heard from the community is that the OCI specification was limited, meanwhile we heard that there was demand for a feature complete container runtime and basically runC is just too small. That is where containerD comes in, where we’re carving out more code from the Docker platform.

Quelle: eWeek

Drei Monate später, im März 2017, war es dann soweit: Docker spendete seine Runtime containerd der Cloud Native Computing Foundation (CNCF). Die Überraschung war nicht gering, denn auch CoreOS spendete mit rkt die eigene Container-Engine, der (zugegeben nicht wirklich heftig) tobende Krieg war damit beendet. Ebenfalls im Jahr 2017 wurde von der OCI dann die „Spezifikation 1.0“ definiert und öffentlich bereitgestellt, was bis heute als Meilenstein für die Containerisierung gilt.

The Aftermath

Wirklich glücklich wurde CoreOS mit der ganzen Geschichte allerdings nicht: rund ein halbes Jahr später gingen die Lichter bei den rkt-Machern aus – das Unternehmen wurde für 250 Millionen US-Dollar von Red Hat übernommen. Und auch für das Projekt rkt erklingen nun die Friedhofsglocken, seit rund einem Monat ist klar: Rocket ist tot, im Repository prangt ein entsprechender Warnhinweis:

This project has ended, and all development/maintenance activities have halted.
As it is free software, people are free and welcome to fork and develop the codebase on their own. However, to avoid any confusion, the original repository is archived and we recommend any further fork/development to proceed with an explicit rename and rebranding first. We encourage all interested parties to mirror any relevant bits as we can’t actively guarantee their existence in the future.

Im Issue 4024 geht Luca Bruno ein wenig zu den Hintergründen ins Detail. Offenbar wurde das ursprüngliche CoreOS-Team nach der Akquise durch Red Hat mittlerweile aufgelöst und seitens des Open-Source-Unternehmens scheint es kein weiteres Committment zu geben, rkt weiterzuentwickeln. Das gilt im Übrigen auch für CoreOS Container Linux, das ab 26. Mai 2020 keine Updates mehr bekommen und in den Ruhestand geschickt werden wird.

Doch nicht nur Red Hat muss sich an die eigene Nase fassen, dass dieser Schritt nun konsequenterweise durchgezogen wird: Auch von der Community kam, so Bruno, in den vergangenen Monaten wenig bis gar kein Engagement, das Projekt am Leben zu erhalten. Wir sagen daher: Ruhe in Frieden, Rocket, es war ein wilder Ritt auf der Rakete.

Geschrieben von
Dominik Mohilo
Dominik Mohilo
Dominik Mohilo studierte Germanistik und Soziologie an der Goethe-Universität in Frankfurt. Seit 2015 ist er Redakteur bei S&S-Media.
Kommentare

1
Hinterlasse einen Kommentar

avatar
4000
1 Kommentar Themen
0 Themen Antworten
0 Follower
 
Kommentar, auf das am meisten reagiert wurde
Beliebtestes Kommentar Thema
1 Kommentatoren
Gunnar Hilling Letzte Kommentartoren
  Subscribe  
Benachrichtige mich zu:
Gunnar Hilling
Gast
Gunnar Hilling

Tatsächlich entwickelt Red Hat CoreOS als neues Produkt „Red Hat CoreOS“ durchaus weiter. Und es gibt auch eine „upstream“ Variante Fedora Core ….