Réflexions autour de CentOS

Réflexions autour de CentOS

Cela n'a pas échappé au monde du logiciel libre ces dernières semaines, l'annonce de Red Hat arrêtant le développement de CentOS (le repacking gratuit de RHEL) au profit de CentOS Stream (la branche qui se veut upstream de RHEL) a provoqué un raz de marée de réactions plus ou moins virulentes.

centos

Que s'est-il passé ?

Pour ceux qui n'ont pas suivi, voici quelques clés de compréhension de l'histoire :

  • Red Hat Enterprise Linux (RHEL) est la distribution Linux commerciale développée par l'entreprise éponyme depuis une vingtaine d'année.
  • Red Hat a été rachetée en 2019 par IBM pour 34 milliards de dollars
  • RHEL possède un projet upstream depuis des années : la distribution Fedora.
  • Fedora est avant tout un laboratoire de tests des technologies les plus récentes qui finiront par arriver (ou pas) dans RHEL (RHEL 8 est basée sur Fedora 28 par exemple)
  • CentOS était un projet communautaire qui a finalement été intégré par Red Hat
  • Avec l'arrivée de CentOS 8 en 2019, le projet a annoncé une nouvelle branche de développement : CentOS Stream
  • CentOS Stream se plaçait entre Fedora et RHEL : upstream et terrain d'essai pour les versions intermédiaires de RHEL en gardant Fedora comme upstream des versions majeures
  • CentOS est beaucoup utilisée en entreprise parce qu'il s'agit d'une version rebuild de Red Hat bénéficiant du même support de 10 ans, gratuitement

Ce que contient l'annonce de Red Hat :

  • Le développement de CentOS 8 est arrêté, le support de la distribution initialement prévu jusqu'en 2029 s'arrêtera fin 2021
  • Le support de CentOS 7 reste prévu jusqu'en 2024 jusqu'à la mort de RHEL 7.
  • CentOS Stream est désormais l'unique version de CentOS, avec une branche par version majeure (Stream 8, Stream 9, etc), supportée 5 ans

Avis personnel

Ayant presque tous mes serveurs personnels sous CentOS 8, l'annonce de la fin du support est pour moi la plus grande erreur de Red Hat. Actuellement, l'éditeur préconise de passer sur la branche Stream ... Soit. Mais d'un, le support est réduit, de deux, la garantie de stabilité est amoindrie puisque CentOS Stream est celle qui va essuyer les plâtres en premier là où avant c'était RHEL. Je tenterai dans un premier temps pour voir ce que ça donne... Mais si la stabilité se dégrade, je serai contraint de changer de distribution. A titre personnel, j'estime que Red Hat aurait du maintenir CentOS 8 comme prévu et annoncer son changement pour CentOS 9 afin de laisser le temps aux utilisateurs de repenser leur stratégie.

Il me paraît difficile d'imaginer que Red Hat souhaite transformer les utilisateurs de CentOS en clients RHEL. Il ne faut pas se voiler la face, le choix de CentOS est principalement fait parce que c'est une distribution gratuite offrant un support à long terme très apprécié des entreprises. S'ils ne payent pas pour celle-ci, pourquoi iraient-ils payer une autre ?

Beaucoup ont suggéré que ce changement de politique est opéré parce qu'IBM a racheté Red Hat et qu'il faut rentabiliser l'investissement ... D'autres évoquent que CentOS faisait de l'ombre à Red Hat.

Je ne suis pas de cet avis pour les raisons évoquées précédemment : un utilisateur de CentOS n'ira pas acheter de la licence Red Hat. Si le comité de direction de Red Hat a cru ceci, alors il est vraiment naïf. De même, si le but était de faire mourir CentOS, dans ce cas Red Hat n'avait qu'à les laisser dans leur coin. Le manque de financement et de sponsoring aurait naturellement tué la distribution. CentOS pouvait potentiellement faire de l'ombre à Red Hat, mais d'autres clones gratuits existaient déjà avant donc je doute que ce soit l'une des causes racines de ce choix.

Depuis l'annonce, CentOS essaye d'éteindre l'incendie. La décision a été reçue de manière extrêmement négative et j'ai du mal à comprendre comment on aurait pu s'attendre à autre chose. Les tentatives de rassurer sont vaines et les explications ne convainquent personne, le mal est fait. Le comité de CentOS a essayé de calmer le jeu en disant que CentOS Stream répond à la majorité des cas d'usages des utilisateurs de CentOS ... Mais il semble avoir oublié que l'un des cas d'usages les plus appréciés est jeté à la poubelle : les 10 ans de support. Ils ne savent clairement pas comment assumer ce choix et les excuses ne prennent pas.

De mon point de vue, Red Hat et CentOS ont commit une grave erreur tactique qui vient de détruire toute la confiance que les utilisateurs de CentOS pouvaient avoir en celle-ci. Le contrat de confiance me paraît définitivement perdu avec une annonce aussi unilatérale et les conséquences qui en découlent. Je ne pense pas non plus que RHEL sera impactée par cette mauvaise presse, la base de clientèle étant différente, mais l'image de Red Hat vient d'en prendre un sacré coup alors que l'entreprise fait partie de celles qui ont une grande aura dans le domaine du logiciel libre.

Cette histoire permet de aussi de remettre en lumière un élément souvent oublié par les consommateurs de logiciels libres : ils ne sont pas acquis. Même si CentOS bénéficiait d'un sponsor de premier choix avec Red Hat, maintenir et fournir une distribution Linux complète est une activité très consommatrice en temps, moyens financiers et humains. Parmi les réactions, certains demandaient ce qui justifiait que l'équipe de CentOS ne puisse maintenir la branche stable et la branche Stream, mais je pense que les ressources allouées au projet devaient être bien trop limitées pour cela.

J'ai cru voir sur des commentaires de certains articles que Red Hat aurait annoncé aussi des changements de plans pour la souscription de RHEL avec des accès gratuits ou à tarif réduits. N'ayant pas trouvé de sources en ce sens, je n'irai pas plus loin et garde cette information comme peu fiable. Aujourd'hui, RHEL possède une formule gratuite mais il s'agit simplement d'une licence développeur rattachée à une personne et non à un équipement. Elle exclu donc de principe un déploiement. La licence payante de base n'inclus pas de support et il me semble qu'elle ne permet pas la virtualisation. Bref, ça chiffre vite.

Maintenant, quelles sont les possibilités ?

J'ai tendance à ne pas céder aux réactions impulsives et à laisser reposer pour voir ce qu'il se passe. Clairement, je doute que Red Hat revienne sur sa décision. Les shitstorms dans le domaine du logiciel libre sont souvent de fortes batailles d'ego et il y a peu de chances de voir un changement de position.

Parmi les réactions à ce changement, un projet basé sur ce qui avait fait l'essence de CentOS a été lancé dans un foulée : Rocky Linux. Le projet a été monté par Gregory Kurtzer, l'un des co-fondateurs de CentOS, et nommé en l'honneur de Rocky McGaugh, l'un des autres co-fondateurs. A voir ce que celui-ci donnera car il vient tout juste de démarrer.

Il existe un autre rebuild de RHEL distribué gratuitement, à savoir Oracle Linux. Une différence se situe néanmoins dessus avec deux Kernel proposés : le standard fourni par Red Hat et le "UEK" pour Umbreakable Enterprise Kernel qui est une branche disposant d'améliorations maison d'Oracle. Cela fait partie de leur argumentaire de vente pour justifier que leurs bases de données tournent mieux sur Oracle Linux plutôt que CentOS. Une offre de support commercial est également de la partie, mais la distribution reste installable librement sans contrepartie. Après, Oracle est loin d'être une entreprise très appréciée dans le monde du Libre... Si vous demandez l'avis général, vous aurez possiblement une certaine unanimité :

robot devil

Un autre nom qui revient assez souvent est Springdale Linux, clone de RHEL maintenu par l'Université de Princeton. Le projet semble assez ancien puisqu'il indique dater d'avancer CentOS et il n'est pas affilié à une société commercial. Ce sont des arguments plutôt rassurant vis à vis du contexte actuel.

CloudLinux est également un clone de RHEL, mais celui-ci est par contre fourni de manière commerciale. Néanmoins, l'éditeur semble avoir saisi l'opportunité de proposer son fork personnel de RHEL 100% compatible pour le premier trimestre 2021, appelé Lenix. Mais ici aussi CloudLinux est un Red Hat bis comme Oracle. Donc le risque d'un choix commercial emportant avec lui la pérennité du système est présent.

Pour ma part, j'attendrai d'abord de voir ce que ça racontera en début d'année 2021. Je pense que j'évaluerai différentes pistes allant de tester CentOS Stream à basculer sur une autre version.

Ce que je retiens surtout de cette histoire, c'est que Red Hat a totalement raté sa communication en annonçant de manière aussi brutale l'arrêt de support de CentOS 8. Plutôt que d'amener une transition douce, ils ont préféré casser les genoux des utilisateurs de la distribution et je doute que ceux-ci accordent leur confiance dans leurs projets à l'avenir.