Fedora CoreOS est une dis­tri­bu­tion de Linux utilisée en tant que système hôte pour con­te­neurs. Elle se base sur CoreOS Container Linux, ac­ti­ve­ment dé­ve­lop­pée et exploitée par l’en­tre­prise de dé­ve­lop­pe­ment amé­ri­caine Red Hat. Par con­sé­quent, le système embarque CoreOS Container Linux avec les solutions de Fedora Atomic Host. Ce dernier pilote par exemple la création de paquets et l’in­té­gra­tion de la sécurité SELinux.

Note

Le système d’ex­ploi­ta­tion serveur Fedora est le suc­ces­seur direct de Red Hat Linux. En anglais, « Fedora » désigne un chapeau en feutre, le célèbre emblème de Red Hat. L’objectif de cette dis­tri­bu­tion de Linux est de créer un système d’ex­ploi­ta­tion pour presque tous les champs d’ap­pli­ca­tion et groupes cibles. CoreOS Linux est aussi appelé « Container Linux », à ne pas confondre avec les con­te­neurs Linux. Container Linux est un système d’ex­ploi­ta­tion open source in­dé­pen­dant qui permet d’exécuter des ap­pli­ca­tions et leurs fonc­tion­na­li­tés minimales sous Linux.

En 2018, Red Hat a repris CoreOS et développé, avec Fedora CoreOS, un système Upstream visant à remplacer le classique Container Linux. Avec une promesse en tête : la con­fi­gu­ra­tion de Fedora CoreOS ne dure que cinq minutes.

Qu’est-ce que Fedora CoreOS ?

Fedora CoreOS est une dis­tri­bu­tion de Linux optimisée pour tra­vail­ler avec Ku­ber­netes et s’oriente vers l’exécution de tâches dans des con­te­neurs. Pour ce faire, le système propose un support agréable basé sur des mises à jour et cor­rec­tions au­to­ma­tiques et des mises à jour de sécurité ré­gu­lières.

En tant que produit combiné de CoreOS et Red Hat, Fedora CoreOS bénéficie des meilleurs outils de ces deux systèmes :

  • L’outil Ignition de Container Linux : cette tech­no­lo­gie sert à manipuler les disques durs pendant le processus de démarrage sur le système de fichiers source de la mémoire vive (initial ram fi­le­sys­tem), dans le but de démarrer Container Linux. Dans Fedora CoreOS, il est utilisé pour booter et con­fi­gu­rer les images de Fedora CoreOS.
  • rpm-ostree de Red Hat : ce système de gestion de paquets permet de créer des groupes de paquets que l’on peut, in fine, tra­vail­ler comme de vé­ri­tables images.

À ce stade, Fedora CoreOS a tout l’air d’être un simple système hôte pour les logiciels de con­te­neurs, similaire, en principe, à Docker ou à une de ses al­ter­na­tives comme OCI. On peut installer et exploiter les con­te­neurs comme avec les moteurs clas­siques Podman ou Moby. Fedora CoreOS se démarque surtout par sa stabilité et sa sécurité, dans le respect le plus strict des di­rec­tives de SELinux.

Note

rpm-ostree s’ac­com­pagne aussi d’une pro­tec­tion propre contre les attaques, les mises à jour erronées ou les paquets. En cas de problème, toutes les étapes sont ré­ver­sibles.

Après une ins­tal­la­tion rapide, simple et flexible, Fedora CoreOS peut s’utiliser sans né­ces­si­ter de main­te­nance. Ainsi, par exemple, toutes les mises à jour né­ces­saires sont ap­pli­quées au­to­ma­ti­que­ment. Pour éviter tout re­dé­mar­rage in­vo­lon­taire du système, qui pourrait, dans le pire des cas, entraîner des pertes de données, l’ad­mi­nis­tra­teur a toujours le dessus : il peut in­ter­ve­nir sur ce processus et commander le re­dé­mar­rage de plusieurs systèmes en un lieu cen­tra­lisé (pour conserver notre exemple).

Installer Fedora CoreOS

Fedora CoreOS peut être di­rec­te­ment installé sur un or­di­na­teur ou bien sur une machine virtuelle comme VMware, OpenStack et QEMU. Par ailleurs, il existe aussi des images de FedoraOS sur le Cloud pour tous les pres­ta­taires les plus courants, entre autres AWS, Microsoft Azure, Google Cloud et Alibaba Cloud.

L’ins­tal­la­tion standard de Fedora CoreOS sur un système Linux offre une version minimale, c’est-à-dire com­pre­nant uni­que­ment les ap­pli­ca­tions né­ces­saires à son uti­li­sa­tion. Lors du premier démarrage, Ignition lit au­to­ma­ti­que­ment les données de con­fi­gu­ra­tion et installe le système. Les pa­ra­mètres contenus dans ces données ren­seig­nent Ignition sur la manière dont est conçu le système. Ensuite, Les par­ti­tions sont ensuite définies, les uti­li­sa­teurs créés et les droits attribués. Si la con­fi­gu­ra­tion se trouve sur un Cloud, l’en­vi­ron­ne­ment d’ins­tal­la­tion est adapté à ce paramètre. Avec AWS, par exemple, la con­fi­gu­ra­tion est comprise dans le système d’ex­ploi­ta­tion, ce qui permet ef­fec­ti­ve­ment d’installer Fedora CoreOS en un clic.

Sur votre propre or­di­na­teur ou hy­per­vi­seur, la con­fi­gu­ra­tion s’effectue ma­nuel­le­ment avec l’outil de lignes de commandes fcct (Fedora Core OS Con­fi­gu­ra­tion Tool). Il faut tout d’abord créer un fichier YAML et le formater en JSON. Enfin, il faut donner à ce fichier l’extension .fcc (Fedora CoreOS Con­fi­gu­ra­tion). Une fois le fichier .fcc terminé, l’ad­mi­nis­tra­teur est identifié par la clé SSH cor­res­pon­dante.

Note

Le fichier Ignition n’est pas conçu pour installer mais pour con­fi­gu­rer Fedora CoreOS : les registres et fichiers et leurs contenus peuvent y être spécifiés, même dès l’ins­tal­la­tion.

Dès que le système s’exécute et que l’uti­li­sa­teur s’est identifié avec la clé SSH, celui-ci peut installer les con­te­neurs souhaités nor­ma­le­ment, par exemple avec Podman ou Moby. Fedora CoreOS est com­pa­tible avec Docker et les spé­ci­fi­ca­tions de l’Open Container Ini­tia­tive. CoreOS peut aussi être utilisé comme ins­tal­la­tion in­dé­pen­dante et ad­mi­nis­tré avec Ku­ber­netes.

Dans quels cas utiliser Fedora CoreOS ?

Tout comme Fedora Atomic Host, Fedora CoreOS est un système hôte pour con­te­neurs très dis­po­nible, sûr et flexible. Bien que son ins­tal­la­tion ne demande ef­fec­ti­ve­ment que cinq minutes, son uti­li­sa­tion n’est ab­so­lu­ment pas con­seil­lée aux débutants. Sans ex­pé­rience dans l’univers Red Hat, il faudra s’armer de patience pour commencer.

Dans quels cas peut-on con­crè­te­ment utiliser Fedora CoreOS ? Tout sim­ple­ment pour les systèmes de con­te­neurs qui doivent tra­vail­ler sans main­te­nance. C’est, entre autres, essentiel pour exécuter un service de serveur dans des con­te­neurs, idéa­le­ment capables de s’ac­tua­li­ser par eux-mêmes. En général, un système d’ex­ploi­ta­tion tra­di­tion­nel ne peut pas le faire. Fedora CoreOS libère les ad­mi­nis­tra­teurs de cette tâche chro­no­phage et fonc­tionne de manière optimale lorsqu’on n’opère aucune in­ter­ven­tion sup­plé­men­taire. Les serveurs re­pro­duc­tibles sont le domaine de pré­di­lec­tion de Fedora CoreOS : dans ce cas, le système d’ex­ploi­ta­tion remplace en continu les paquets et con­te­neurs par leurs versions les plus récentes.

CoreOS – ré­tros­pec­tive

Ce que Fedora CoreOS est capable de faire, CoreOS le faisait à petite échelle en son temps. Ce système d’ex­ploi­ta­tion open source léger utilisait un noyau Linux et se spé­cia­li­sait dans l’exécution d’ap­pli­ca­tions dans Docker. CoreOS était d’ailleurs res­pon­sable de l’ex­ploi­ta­tion des con­te­neurs Linux et pouvait aussi répartir les con­fi­gu­ra­tions. Publié en 2013, CoreOS a ra­pi­de­ment connu le succès, culminant avec son rachat par Red Hat pour 250 millions de dollars. Le 26 mai 2020, son statut de projet in­dé­pen­dant prend fin et la solution devient of­fi­ciel­le­ment un composant de Fedora CoreOS.

Les avantages de Fedora CoreOS en résumé

Système de con­te­neurs Linux sûr, flexible et d’une stabilité absolue en moins de cinq minutes, Fedora CoreOS se démarque par ses atouts suivants :

  • tout est configuré en quelques clics ;
  • il suffit de s’iden­ti­fier avec une clé SSH et les con­te­neurs sont im­mé­dia­te­ment installés ;
  • le système fonc­tionne de façon autonome.

Comparé à son pré­dé­ces­seur CoreOS, ses pos­si­bi­li­tés d’uti­li­sa­tion et son public sont nettement plus vastes.

Les mises à jour au­to­ma­tiques ne seront pas un avantage pour tous ses uti­li­sa­teurs, car on peut redouter qu’elles entravent les processus. Cependant, chaque mise à jour est mi­nu­tieu­se­ment contrôlée dans un processus séparé : un paquet est tout d’abord testé dans Next Stream, un en­vi­ron­ne­ment d’essai, qui reproduit l’état de dé­ve­lop­pe­ment actuel de Fedora CoreOS. Les dé­ve­lop­peurs y compilent toutes les mises à jour prévues pour le système d’ex­ploi­ta­tion, les exécutent et observent les résultats. C’est uni­que­ment lorsque tout fonc­tionne par­fai­te­ment que les paquets sont envoyés sur Stable Stream, où Fedora CoreOS récupère les mises à jour et les installe au­to­ma­ti­que­ment.

Aller au menu principal