Deux années se sont écoulées depuis notre article sur l'automatisation des mises à niveau sur place de Red Hat Enterprise Linux (RHEL). Au cours de cette période, nous avons vu des dizaines de clients mettre à niveau des centaines de milliers de systèmes à l'aide de notre approche prescriptive et automatisée afin de réaliser des mises à niveau RHEL à grande échelle. Dans cet article, nous allons rapidement passer en revue les principales fonctions qui permettent d'accélérer le déploiement de l'automatisation de la mise à niveau de RHEL. Nous parlerons de ce qui a bien fonctionné, mais également de certains défis et de certaines leçons tirées de l'expérience.
L'enseignement clé : échouez rapidement, itérez et réessayez. Le principal avantage de cette approche est de rendre le processus de mise à niveau moins intimidant, permettant une récupération rapide à l'état d'origine lorsque les choses ne se déroulent pas parfaitement du premier coup.
Un défi à relever
La plupart de nos principaux clients disposent d'environnements RHEL de grande taille qui se sont développés et ont évolué au cours des décennies, depuis que l'adoption de Linux par les entreprises a décollé au début des années 2000. Bien que les entreprises aient essayé de virtualiser et de conteneuriser avec les meilleures intentions de moderniser la façon dont elles déploient et gèrent les charges de travail d'applications, certaines d'entre elles utilisent encore un grand nombre d'hôtes RHEL qui n'ont pas encore suivi le rythme. Ces applications s'exécutent sur des serveurs de type « pet » (animal de compagnie) qui ont été soigneusement entretenus au fil des ans par des modifications manuelles, entraînant une accumulation importante d'écarts non suivis.
La difficulté d'apporter des modifications à ces environnements d'applications maintient les organisations bloquées sur les versions antérieures de RHEL. Le changement de plateforme vers une nouvelle version de RHEL est généralement simple pour les équipes chargées de l'infrastructure et de l'exploitation, mais le redéploiement des applications de type « pet » est une tâche fastidieuse pour les équipes chargées des applications. S'attaquer à l'ensemble de la dette technique pour déterminer comment redéployer leurs charges de travail en toute sécurité s'avère très coûteux et comporte de nombreux risques. C'est pourquoi le fait d'échouer rapidement et d'apprendre constitue un élément central du processus.
En résumé : il existe un moyen simplifié de déplacer des environnements vers une nouvelle version de RHEL sans toucher aux applications. À grande échelle, les économies réalisées dans l'ensemble de l'entreprise s'accumulent rapidement.
La solution
Notre approche pour mettre à l'échelle les mises à niveau RHEL consiste à automatiser avec Red Hat Ansible Automation Platform et le contenu validé pour Ansible. Ces processus automatisés peuvent gérer des mises à niveau allant de RHEL 6 à RHEL 7, jusqu'aux versions RHEL 9 à RHEL 10, et toutes les versions intermédiaires. Nous avons même vu des clients automatiser des mises à niveau en plusieurs sauts, comme RHEL 7 vers RHEL 9, dans une seule fenêtre de maintenance.
La solution s'appuie sur quatre fonctions essentielles.
1. Automatisation complète
L'automatisation de bout en bout pour les mises à niveau RHEL rend le processus disponible et reproductible en tant que service clé en main et facile à utiliser pour les équipes d'exploitation et d'applications.
2. Instantané avec restauration
Il s'agit d'une fonctionnalité essentielle de l'approche, car elle minimise les risques d'impact sur les applications. Il n'y a donc jamais d'excuse pour ne pas procéder à la mise à niveau. Les instantanés peuvent être automatisés à l'aide du gestionnaire de volumes logiques (LVM), d'instantanés VMware ou de sauvegardes relax-and-recover (ReaR), selon l'environnement. Les restaurations vous permettent spécifiquement d'échouer rapidement et de réessayer.
3. Modules personnalisés
Bien que le framework RHEL Leapp mette à niveau le système d'exploitation lui-même, il est nécessaire de développer des processus automatisés personnalisés pour gérer les spécificités de votre environnement, notamment les outils et agents tiers standard.
4. Tableau de bord de rapports (facultatif, mais très utile)
Le tableau de bord de rapports suit les résultats des mises à niveau dans l'ensemble du parc RHEL. Il visualise les rapports générés avant la mise à niveau par Leapp, ce qui facilite l'analyse des résultats et des indicateurs de mesure agrégés sur le volume, ainsi que sur la progression des mises à niveau.
Ce qu'il faut retenir de l'automatisation d'un million de mises à niveau RHEL sur place
Si nous avons appris quelque chose en aidant nos clients à mettre en œuvre cette approche, c'est que rien ne fonctionnera parfaitement la première fois. Il est impossible d'anticiper les configurations en « flocon de neige », les effets des produits tiers de base, les facteurs environnementaux externes, etc. Nous avons constaté qu'il est judicieux de se lancer directement dans des essais de mises à niveau, en commençant par des environnements de laboratoire et de développement de niveau inférieur.
C'est ce que nous appelons l'approche « fail-fast » qui permet de développer rapidement la solution pour qu'elle gère toutes les variations propres à votre environnement. Cette méthode permet un apprentissage et une itération rapides en tentant intentionnellement des mises à niveau en s'attendant à des échecs, en observant ces échecs, en rétablissant rapidement l'état précédent et en utilisant les leçons tirées pour fiabiliser l'automatisation.
Voici pourquoi l'approche « fail-fast » est cruciale pour l'automatisation des mises à niveau sur place de RHEL :
- Réduction des risques et renforcement de la confiance
- La capacité de restauration des instantanés constitue un élément essentiel de réduction des risques. Ceci atténue la crainte qu'une mise à niveau ne présente trop de risques pour les équipes chargées des applications. En cas de problème, le système peut rapidement revenir à son état antérieur sans provoquer d'interruption prolongée. Cette capacité de récupération rapide permet aux équipes chargées des applications de procéder rapidement à des mises à niveau et de résoudre un problème majeur en matière d'exigences de conformité et de réglementation dans des secteurs comme la banque.
- Chez un client bien connu, une équipe chargée des applications a testé plusieurs fois la mise à niveau et la restauration d'un hôte, juste pour gagner en confiance dans le processus d'instantané. Ils ont même intentionnellement provoqué des pannes avant de revenir en arrière, juste pour prouver l'efficacité de l'approche.
- De la même manière, un grand client bancaire a considéré un « accroc » survenu lors de sa première mise à niveau de systèmes bare metal comme une réussite, car la restauration a fonctionné, validant ainsi la méthodologie « fail-fast ».
- Un autre client, disposant d'un parc plus restreint, a réussi à mettre à niveau l'ensemble de ses 60 hôtes RHEL en seulement deux semaines, dans l'esprit du « go fast, break stuff » (bougez vite et cassez des choses), et en s'appuyant sur l'automatisation et la restauration.
- Accélération du développement et de l'affinage de l'automatisation
- L’approche « fail-fast » accélère le développement de processus automatisés personnalisés en permettant aux équipes de réaliser des itérations rapides. Au lieu d'essayer de prévoir tous les problèmes possibles, l'approche encourage l'exécution de la mise à niveau, l'observation des défaillances, la restauration, l'automatisation d'une correction, puis la répétition du processus.
- Cela permet d’identifier et d’affiner les solutions pour répondre à des exigences personnalisées complexes, telles que la gestion d’outils, d’agents et de middlewares tiers qui pourraient ne pas être compatibles avec la nouvelle version de RHEL. Par exemple, une autre banque cliente a utilisé cette approche pour identifier les paquets de fournisseurs tiers supprimés lors des mises à niveau et automatiser leur réinstallation.
- L'approche permet de découvrir les « écureuils du monde réel » (c'est-à-dire les dérives et variations inattendues d'un environnement), puis d'affiner l'automatisation pour les traiter.
- Relever les obstacles organisationnels
- Il peut exister un stigmate associé à l'échec, ce qui conduit à un comportement excessivement averse au risque. L'approche « fail-fast », soutenue par une capacité de restauration robuste, aide à surmonter cet obstacle en démontrant que les échecs peuvent non seulement être rapidement et sûrement corrigés, mais aussi qu'ils constituent une approche d'apprentissage rapide.
- Lorsque Red Hat rencontre des hésitations de la part d'équipes informatiques centrales ou d'exploitation sceptiques, il est utile de mettre l'accent sur l'approche « fail-fast » et ses avantages pour les équipes chargées des applications. Elle montre comment la solution leur offre les moyens d'agir sans forcer un changement de plateforme coûteux.
- Activation de la mise à l'échelle
- Grâce à l'identification et la résolution rapides des problèmes par le biais de tests itératifs, les entreprises peuvent accélérer la mise à niveau de leurs systèmes. Par exemple, un client qui gère un parc RHEL de plus de 100 000 instances a obtenu 8 000 mises à niveau chaque mois dans le monde grâce à des processus automatisés en libre-service qui ont accéléré les itérations et les restaurations.
- La possibilité de tester et d'affiner facilement l'automatisation dans des environnements inférieurs (laboratoire et développement) avant de passer en production constitue une pratique exemplaire pour éviter les pannes et réaliser un grand nombre de mises à niveau.
Voici les détails des composants clés qui soutiennent l'approche « fail-fast » :
- Capacités automatisées d'instantané et de restauration : c'est la base de l'approche « fail-fast ». Les options incluent les instantanés LVM ou les instantanés VMware. Les sauvegardes ReaR peuvent également être utilisées pour une approche de type « ceinture et bretelles », au cas où la restauration d'un instantané ne fonctionnerait pas.
- Modules personnalisés et automatisation : Les référentiels de mise à niveau du système Leapp officiels et leurs acteurs gèrent la mise à niveau du système d'exploitation, mais des tâches Ansible personnalisées ou des acteurs Leapp supplémentaires sont nécessaires pour gérer les outils, les agents et les solutions de middleware tiers spécifiques à l'environnement du client. Ces processus automatisés sont affinés au moyen des itérations « fail-fast ».
- Tableaux de bord de rapports : des outils comme Elastic ou Splunk peuvent visualiser les résultats avant la mise à niveau et suivre l'avancement des mises à niveau. Les équipes peuvent ainsi identifier les problèmes courants et affiner leurs processus automatisés.
En savoir plus sur les mises à niveau RHEL
Avec l'adoption d'une approche « fail-fast », la tâche parfois intimidante des mises à niveau RHEL à grande échelle se transforme en un processus itératif qui privilégie l'apprentissage et la sécurité, permettant ainsi une vélocité accrue et une amélioration rapide de la conformité.
- Comment automatiser les mises à niveau avant la fin de la maintenance de RHEL 7
- La fin de la période de maintenance approche pour Red Hat Enterprise Linux 7
- infra.leapp Git repo : ensemble de rôles Ansible pour l'automatisation des mises à niveau RHEL sur place, soutenu par une communauté florissante en amont. Ces rôles fournissent des méthodes standardisées pour utiliser le framework Leapp dans le cadre de l'analyse préalable à la mise à niveau et de la mise à niveau de RHEL elle-même. Lorsque vous êtes prêt à développer vos propres playbooks personnalisés pour exécuter des mises à niveau pour votre entreprise, envisagez d'utiliser les rôles de cette collection Ansible pour vous faciliter la tâche.
- infra.lvm_snapshots Ansible collection : élément de base clé pour l'automatisation de la mise à niveau sur place de RHEL, fournissant les rôles spécifiques pour la gestion des instantanés LVM. Cette collection fournit des fonctionnalités essentielles telles que snapshot_create pour créer des ensembles définis de volumes d'instantané LVM, snapshot_remove pour les supprimer et snapshot_revert pour rétablir instantanément un système dans un état précédemment capturé. Il inclut également des rôles tels que shrink_lv pour réduire en toute sécurité la taille des volumes logiques afin de libérer de l'espace pour les instantanés, et bigboot pour augmenter la partition de démarrage.
- ripu-splunk repo : fournit une implémentation de référence pour les tableaux de bord de rapports conçus pour améliorer les solutions d'automatisation de mise à niveau de RHEL. Cette collection Open Source fournit des exemples pouvant être importés dans Splunk Dashboard Studio, notamment un résumé avant la mise à niveau, un rapport détaillé avant la mise à niveau et un calendrier de progression de la mise à niveau.
Assistance et conseils
Dans le cadre de l'évolution automatisée des mises à niveau ces dernières années, Red Hat Consulting Services a joué un rôle déterminant en aidant de nombreux clients à déployer la solution. Si la mise à niveau d'un environnement volumineux vous dépasse ou si vous ne savez pas par où commencer, Red Hat Consulting Services peut partager son expertise et ses conseils pour vous aider à y parvenir, et potentiellement vous faire gagner du temps et de l'argent.
Essai de produit
Red Hat Ansible Automation Platform | Essai de produit
À propos des auteurs
Bob is an industry veteran with a lifetime of experience in IT dating back to the 1980s. Before coming to Red Hat in 2022, he held software consulting roles at DEC/HP and later moved to the banking industry as a pioneer leading Wall Street's early adoption of Linux. Today as a member of Red Hat's Customer-led Open Innovation team, he is committed to growing the community that's developing automation to make RHEL in-place upgrades successful at enterprise scale.
Bob Handlin has helped build and promote products in various parts of the tech industry for more than 20 years. He currently focuses on RHEL migrations and upgrades, but also assists with storage technologies and live patching.
Plus de résultats similaires
IT automation with agentic AI: Introducing the MCP server for Red Hat Ansible Automation Platform
How Banco do Brasil uses hyperautomation and platform engineering to drive efficiency
Technically Speaking | Taming AI agents with observability
You Can’t Automate Cultural Change | Code Comments
En savoir plus
- Livre numérique : L'entreprise automatisée
- Testez Red Hat Ansible Automation Platform dans le cadre d'ateliers en autonomie
- Red Hat Ansible Automation Platform : le guide du débutant
Parcourir par canal
Automatisation
Les dernières nouveautés en matière d'automatisation informatique pour les technologies, les équipes et les environnements
Intelligence artificielle
Actualité sur les plateformes qui permettent aux clients d'exécuter des charges de travail d'IA sur tout type d'environnement
Cloud hybride ouvert
Découvrez comment créer un avenir flexible grâce au cloud hybride
Sécurité
Les dernières actualités sur la façon dont nous réduisons les risques dans tous les environnements et technologies
Edge computing
Actualité sur les plateformes qui simplifient les opérations en périphérie
Infrastructure
Les dernières nouveautés sur la plateforme Linux d'entreprise leader au monde
Applications
À l’intérieur de nos solutions aux défis d’application les plus difficiles
Virtualisation
L'avenir de la virtualisation d'entreprise pour vos charges de travail sur site ou sur le cloud