The Eye of the Tiger
10 juin 2024 Rédigé par Linuxine
Je voulais intituler ce billet "comment casser son serveur en une étape simple" mais c'était un peu long comme titre, et un peu négatif aussi. Maintenant que le pire est dernière moi, je peux me concentrer sur le positif !
Alors pourquoi ce titre, me direz-vous ? Parce nous allons parler du passage de mon serveur sous l'OS Rocky Linux ! :D
Ceux qui me suivent depuis longtemps savent qu'après 9 ans chez Online, j'avais migré mon serveur perso chez Heztner, pour un serveur de seconde main, carrément moins cher et plus puissant (et avec une très bonne offre de sauvegarde, nous y reviendrons). Serveur qui héberge, entre autres, ce blog, mon instance Mastodon (enfin Pleroma) et mon instance Matrix.
Passage sous CentOS 8
J'avais alors passé quelques jours à tout réinstaller proprement, et j'étais contente de pouvoir bénéficier de la dernière version de CentOS, la version 8, après des années à rester sur une CentOS 7 qui était bientôt en fin de vie. Hélas, peu de temps après cette migration, Red Hat, racheté par IBM, avait annoncé mettre fin au support de CentOS.
Je venais donc de changer de serveur, pour bénéficier d'un nouvel OS plus à jour avec des mises à jour de sécurité, pour apprendre quelques semaines plus tard que... il n'y aurait plus aucune mise à jour de sécurité fournie sur cet OS... le timing parfait !
La seule façon de bénéficier de quelques mises à jour de sécurité, au moins les critiques, étaient de passer de CentOS 8 à CentOS 8 Stream, une nouvelle version plus orientée "testing" et donc à priori moins stable, et donc moins adaptée pour un serveur en production. Cette migration qui consistait, à l'époque, à juste changer les adresses des repo pour aller chercher les mises à jour avec dnf. Ce n'était donc pas très compliqué, mais pas très efficace non plus: une fois passé sous Stream, le nombre de mises à jour que je pouvais installer chaque semaine était très réduit.
Bref, mon serveur végétait depuis quelques années, et j'avais noté dans ma "to do list" qu'il faudrait refaire une migration, cette fois-ci pour installer un OS plus activement maintenu. Suite à l'abandon de CentOS par Red Hat, 2 nouveaux systèmes d'exploitation, basés sur l'architecture Red Hat, avaient fait leur apparition: Alma Linux et Rocky Linux.
Passage sous CentOS 9
La migration de CentOS 8 vers Rocky ou Alma n'étant pas officiellement supportée, je me suis dit que je pouvais tenter au moins de passer de CentOS 9, la dernière version, et espérer avoir des mises à jour de sécurité. La procédure était en théorie relativement simple, à base de quelques commandes dnf. Il y avait quelques erreurs de packages obsolètes, mais tout semblait s'être bien passé. Jusqu'au redémarrage de la machine... qui ne s'est pas très bien passé, puisque, cas de figure que je n'avais jamais vu, le reboot s'est effectué sur un noyau... qui n'était pas présent physiquement sur le système de fichiers.
Aucun noyau CentOS 9 n'ayant été trouvé, un obscur noyau CentOS 8 qui devait sans doute être resté en mémoire a été utilisé pour démarrer l'OS. A partir de là, autant dire que le système était dans un état assez instable. A priori, lors de la mise à jour, la configuration grub a été complètement corrompue : après des tentatives de réinstall de grub et de re-génération de sa configuration infructueuses, le redémarrage suivant a, sans surprise, été fatal, plus aucun noyau n'étant trouvé. Il a donc fallu se rendre à l'évidence: il allait falloir réinstaller complètement le système.
Passage sous Rocky 9
C'est à ce moment que j'ai été très contente que Hetzner propose une offre de sauvegarde efficace: avant de réinstaller la machine, j'ai pu vérifier que tous les fichiers importants étaient bien sauvegardés. Ensuite, j'ai tenté de faire une installation de Rocky sur mon serveur en écrasant toutes les données, en utilisant l'interface Heztner dédiée. Hélas, l'installation échouait, comme par hasard au moment de paramétrer la configuration grub... la poisse, on vous dit ! J'ai tenté plusieurs fois la procédure, avec différentes versions de Rocky et Alma, et à chaque fois, échec au moment de l'installation de grub.
Arrivé à ce stade, il me restait 2 choix: tenter contacter l'assistance Hetzner pour leur expliquer mon souci, ou bien carrément souscrire à un nouveau serveur pour y faire ma nouvelle installation. Avec l'augmentation des prix de l'énergie, le prix de mon serveur actuel avait pas mal augmenté l'année passée. J'ai eu la bonne surprise de constater que je pouvais avoir un serveur encore mieux sur tous les aspects (CPU, RAM, disques) pour moins cher par mois... J'ai donc dit banco ! A partir de là, la poisse a cessé : l'installation de Rocky s'est bien passée, j'ai réussi à migrer toutes mes applications sur le nouveau serveur, et en moins de 2 jours, tout était revenu en ligne.
Epilogue
Cette fois-ci, mon timing n'était pas si mauvais: j'ai cassé mon serveur pile le 31 mai 2024, soit... le jour officiel de la fin de vie de CentOS 8 Stream. Donc j'ai maintenant un serveur plus puissant, plus récent, avec un OS qui m'offre des mises à jour et qui le fera pendant des années. Bref, un vrai happy end ! ;)