Fedora CoreOS ist eine Linux-Dis­tri­bu­ti­on, die als Container-Host zum Einsatz kommt. Sie baut auf CoreOS Container Linux auf und wird aktiv von der ame­ri­ka­ni­schen Ent­wick­ler­fir­ma Red Hat ent­wi­ckelt und ver­trie­ben. In der Folge bündelt das System das CoreOS-Container-Linux-System mit den Lösungen von Fedora Atomic Host. Letzteres steuert bei­spiels­wei­se die Pa­ke­tie­rung und die SELinux-Security-In­te­gra­ti­on.

Hinweis

Das Server-Be­triebs­sys­tem Fedora ist der direkte Nach­fol­ger von Red Hat Linux. „Fedora“ ist im Übrigen der englische Begriff für den Filzhut, das bekannte Mar­ken­zei­chen von Red Hat. Das Ziel der Linux-Dis­tri­bu­ti­on ist es, ein Be­triebs­sys­tem für nahezu alle Ein­satz­ge­bie­te und Ziel­grup­pen zu schaffen. CoreOS Linux wird auch „Container Linux“ genannt – nicht zu ver­wech­seln mit Linux-Con­tai­nern. Hinter Container Linux steckt nämlich ein ei­gen­stän­di­ges Open-Source-Be­triebs­sys­tem, das An­wen­dun­gen in Mi­ni­mal­funk­tio­nen unter Linux laufen lassen kann.

2018 hat Red Hat CoreOS über­nom­men und mit Fedora CoreOS ein Upstream-System ent­wi­ckelt, dass das klas­si­sche Container Linux ersetzen soll. Ein erstes Ver­spre­chen lautet: Fedora CoreOS lässt sich in nur fünf Minuten kon­fi­gu­rie­ren.

Was ist Fedora CoreOS?

Fedora CoreOS ist eine Linux-Dis­tri­bu­ti­on, die für die Arbeit mit Ku­ber­netes optimiert ist und den Fokus auf die Aus­füh­rung von con­tai­ner­ba­sier­ten Arbeiten richtet. Dafür bietet es einen an­ge­neh­men Support aus au­to­ma­ti­schen Updates und Kor­rek­tu­ren sowie re­gel­mä­ßi­gen Si­cher­heits­up­dates.

Als ge­mein­sa­mes Produkt aus CoreOS und Red Hat besitzt Fedora CoreOS die besten Tools aus beiden Systemen:

  • Das Werkzeug Ignition von Container Linux: Es dient dazu, Fest­plat­ten während des Boot-Vorgangs über das Aus­gangs­da­tei­sys­tem im Ar­beits­spei­cher (initial ram file­sys­tem) zu ma­ni­pu­lie­ren, um Container Linux zu starten. In Fedora CoreOS wird es für das Booten und Kon­fi­gu­rie­ren der Fedora-CoreOS-Images benötigt.
  • Red Hats rpm-ostree: Dieses Paket-Ma­nage­ment-System erlaubt, Pa­ket­grup­pen zu­sam­men­zu­stel­len, mit denen man im Anschluss wie mit einem Image als Ganzes arbeiten kann.

Bis hierhin klingt Fedora CoreOS wie ein schlankes Wirts­sys­tem für Software-Container, also im Prinzip wie Docker oder eine Docker-Al­ter­na­ti­ve wie OCI. Die Container lassen sich auch wie in den Container-Klas­si­kern mit Podman oder Moby in­stal­lie­ren und verwalten. Fedora CoreOS überzeugt dabei ins­be­son­de­re durch die Punkte Sta­bi­li­tät und Sicherheit – unter strenger Ein­hal­tung der SELinux-Richt­li­ni­en.

Hinweis

Auch rpm-ostree bietet einen eigenen Schutz gegen Angriffe, feh­ler­haf­te Updates oder Pakete: Im Notfall können alle Schritte rück­gän­gig gemacht werden.

Nach einer schnellen, un­kom­pli­zier­ten und flexiblen In­stal­la­ti­on lässt sich Fedora CoreOS komplett war­tungs­frei betreiben. So erfolgen etwa alle nötigen Si­cher­heits­up­dates au­to­ma­tisch. Um hier un­ge­plan­te Neustarts des Systems zu ver­hin­dern, die im schlimms­ten Fall zu Da­ten­ver­lus­ten führen können, hat der Ad­mi­nis­tra­tor trotz allem die Oberhand: Er kann in diese Prozesse ein­grei­fen und, um bei dem Beispiel zu bleiben, einen Neustart zentral für mehrere Systeme steuern.

In­stal­la­ti­on von Fedora CoreOS

Die In­stal­la­ti­on von Fedora CoreOS kann entweder direkt auf der Hardware erfolgen oder in vir­tu­el­len Maschinen wie VMware, OpenStack und QEMU. Darüber hinaus gibt es auch Cloud-Images von Fedora CoreOS für alle gängigen Anbieter, u. a. für AWS, Microsoft Azure, Google Cloud und Alibaba Cloud.

Eine In­stal­la­ti­on von Fedora CoreOS läuft auf einem Linux-System stan­dard­mä­ßig im Mi­ni­mal­be­trieb, also nur mit den An­wen­dun­gen, die für den Betrieb benötigt werden. Ignition liest beim ersten Boot au­to­ma­tisch die Kon­fi­gu­ra­ti­ons­da­tei aus und richtet das System ein. Die in dieser Datei vor­han­de­nen Parameter lassen Ignition wissen, wie das System be­schaf­fen ist. Daraufhin werden Par­ti­tio­nen definiert, Benutzer angelegt und Rechte vergeben – befindet sich die Kon­fi­gu­ra­ti­ons­da­tei in einer Cloud, wird hier die In­stal­la­ti­ons­um­ge­bung angepasst. Bei AWS bei­spiels­wei­se ist die Kon­fi­gu­ra­ti­on gemeinsam mit dem Be­triebs­sys­tem enthalten, sodass Fedora CoreOS tat­säch­lich mit nur einem Klick in­stal­liert werden kann.

Auf der eigenen Hardware oder einem eigenen Hy­per­vi­sor nimmt man die Kon­fi­gu­ra­ti­on manuell mit dem Kom­man­do­zei­len-Tool fcct (Fedora CoreOS Con­fi­gu­ra­ti­on Tool) vor. Zuerst erstellt man hierfür eine YAML-Datei und for­ma­tiert sie in JSON. An­schlie­ßend erhält die Datei die Endung .fcc (Fedora CoreOS Con­fi­gu­ra­ti­on). In der fertigen .fcc-Datei macht sich der Ad­mi­nis­tra­tor dann mit dem passenden SSH-Schlüssel erkennbar.

Hinweis

Die Ignition-Datei ist nicht nur für die In­stal­la­ti­on, sondern auch für die Kon­fi­gu­ra­ti­on von Fedora CoreOS gedacht: Ver­zeich­nis­se und Dateien sowie deren Inhalte können damit spe­zi­fi­ziert werden, sogar direkt bei der In­stal­la­ti­on.

Sobald das System läuft und man sich über den SSH-Schlüssel an­ge­mel­det hat, lassen sich die ge­wünsch­ten Container ganz normal in­stal­lie­ren, z. B. über Podman oder Moby. Fedora CoreOS ist kom­pa­ti­bel mit Docker und Spe­zi­fi­ka­tio­nen der Open Container In­itia­ti­ve. CoreOS kann aber auch als einzelne In­stal­la­ti­on betrieben und mit Ku­ber­netes verwaltet werden.

Wo kommt Fedora CoreOS zum Einsatz?

Wie Fedora Atomic Host ist auch Fedora CoreOS als hoch­ver­füg­ba­res, sicheres und flexibles Container-Gast­sys­tem im Einsatz. Auch wenn die In­stal­la­ti­on tat­säch­lich in fünf Minuten ab­ge­schlos­sen werden kann, ist die Arbeit mit Fedora CoreOS kei­nes­falls Ein­stei­gern zu empfehlen. Wer noch keine Er­fah­run­gen im Red-Hat-Universum gesammelt hat, muss zu Anfang eine Menge Geduld mit­brin­gen.

Aber wo genau kommt Fedora CoreOS zum Einsatz? Die Antwort ist: Bei Con­tai­ner­sys­te­men, die war­tungs­frei arbeiten sollen. Das ist u. a. es­sen­zi­ell, wenn Ser­ver­diens­te in Con­tai­nern betrieben werden, die sich idea­ler­wei­se auch selbst­stän­dig ak­tua­li­sie­ren können. Ein ge­wöhn­li­ches Be­triebs­sys­tem kann das oft nicht leisten. Fedora CoreOS nimmt den Ad­mi­nis­tra­to­ren diese zeit­in­ten­si­ve Arbeit ab und läuft sogar am besten, wenn keine weiteren Eingriffe erfolgen. Die Spiel­wie­se von Fedora CoreOS sind re­pro­du­zier­ba­re Server; hier ersetzt das Be­triebs­sys­tem fort­lau­fend Pakete und Container durch ak­tu­el­le­re Versionen.

CoreOS – ein letzter Rückblick

Was Fedora CoreOS kann, schaffte CoreOS sei­ner­zeit im Kleinen. Das schlanke Open-Source-Be­triebs­sys­tem nutzte einen Linux-Kernel und war für die Aus­füh­rung von An­wen­dun­gen innerhalb von Docker spe­zia­li­siert. CoreOS war ebenfalls für den Betrieb von Linux-Con­tai­nern zuständig und konnte auch Kon­fi­gu­ra­tio­nen verteilen. 2013 ver­öf­fent­licht, schrieb CoreOS schnell Er­folgs­ge­schich­te, deren Höhepunkt der Verkauf an Red Hat für 250 Millionen Dollar war. Am 26. Mai 2020 wurde es als ei­gen­stän­di­ges Projekt ein­ge­stellt, sodass es offiziell nur noch als Be­stand­teil von Fedora CoreOS wei­ter­läuft.

Die Vorteile von Fedora CoreOS in der Zu­sam­men­fas­sung

Ein sicheres, flexibles und absolut stabiles System für Container Linux in unter fünf Minuten – diese Punkte machen Fedora CoreOS aus:

  • mit nur wenigen Klicks ist alles kon­fi­gu­riert,
  • ein Einloggen per SSH, und sofort werden Container in­stal­liert,
  • das System arbeitet grund­sätz­lich völlig selbst­stän­dig.

Im Vergleich zum Vorgänger CoreOS sind die Ein­satz­mög­lich­kei­ten und damit auch das Publikum we­sent­lich breiter.

Die au­to­ma­ti­schen Updates werden aber nicht von allen Nutzern als Vorteil angesehen, da be­fürch­tet wird, dass dadurch Prozesse zerstört werden könnten. Al­ler­dings wird jedes Update in einem separaten Prozess sorgsam überprüft: Ein aktuelles Paket wird zunächst im Next Stream, einem Testfeld, das den aktuellen Ent­wick­lungs­stand von Fedora CoreOS wi­der­spie­gelt, getestet. Ent­wick­ler sammeln darin alle kommenden Updates für das Be­triebs­sys­tem, lassen sie laufen und be­ob­ach­ten die Abläufe. Erst, wenn alles rei­bungs­los läuft, werden die Pakete zum Stable Stream geschickt, woraufhin Fedora CoreOS die Updates zieht und au­to­ma­tisch in­stal­liert.

Zum Hauptmenü