L'AVANTAGE RED HAT ENTERPRISE LINUX
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
LIVRE BLANC L’avantage Red Hat Enterprise Linux RÉSUMÉ Selon une définition que vous connaissez peut-être, un avion est un ensemble de millions de pièces volant en formation serrée. À l’instar d’un avion, Linux se compose de millions de lignes de code réparties dans des milliers de modules produits par des dizaines de milliers de développeurs. Et sa valeur ne réside pas dans ses pièces, mais plutôt dans sa capacité à relever les défis de ses clients de manière fiable et efficace. C’est sur cette philosophie que la société Red Hat repose. En tant que partenaire d’ingénierie multidisciplinaire fort de relations collaboratives, elle a développé Red Hat Enterprise Linux, la plate-forme n°1 pour les charges de travail d’entreprise. SOMMAIRE 2 Communauté open source 13 Cycle de vie 4 L’écosystème Linux ou l’inverse 13 Abonnements du statisme 14 Conclusion Le modèle Red Hat Enterprise Linux Innovation Instantané, intégration et stabilisation Support Versions mineures www.redhat.fr
LIVRE BLANC L’avantage Red Hat Enterprise Linux Selon une définition que vous connaissez peut-être, un avion est un ensemble de millions de pièces volant en formation serrée. À l’instar d’un avion, Linux se compose de millions de lignes de code réparties dans des milliers de modules produits par des dizaines de milliers de développeurs. Tout comme un avionneur, Red Hat rassemble toutes ses pièces et les réunit en un seul système fonctionnel prêt à supporter les charges de travail d’entreprise. Au-delà de l’intégration initiale, Red Hat continue à prendre en charge et à améliorer son produit. Pour poursuivre notre analogie avec l’aéronautique, la mission de Red Hat consiste à s’assurer que l’avion arrive à l’heure et en toute sécurité ainsi qu’à le surveiller et l’améliorer en permanence pour qu’il continue à voler correctement. Les versions majeures de Red Hat Enterprise Linux peuvent être comparées aux nouvelles générations d’avions de Boeing ou d’Airbus. Leur rôle de base est le même avec en plus des nouvelles améliorations rendues possibles grâce aux avancées technologiques. Et une fois de plus, à l’instar de Boeing ou d’Airbus, Red Hat continue d’exploiter les avions existants tout en développant des modèles améliorés. En aéronautique, il est important de ne pas oublier que la valeur ne réside pas dans les pièces ni dans l’avion en lui-même. La valeur, à savoir les avantages commerciaux, réside dans la capacité à pouvoir transporter des personnes et des biens de manière sûre et efficace. Bien qu’il soit facile de ne se focaliser que sur le concentré de technologie qu’est un avion, ces fonctionnalités ne sont importantes que dans la mesure où elles améliorent la sécurité et l’efficacité du transport des biens et des personnes. Les pièces qui composent un avion ne sont importantes que si elles fonctionnent ensemble pour assurer le transport. Autre similarité : les avionneurs ne créent pas des avions entiers eux-mêmes. Ils achètent des pièces fabriquées par de nombreuses autres sociétés et établissent des partenariats pour concevoir et fabriquer des sous-systèmes. Un avion de ligne est un ensemble trop grand et trop complexe pour une seule entreprise. Enfin, les compagnies aériennes n’achètent pas d’avions comme on achète une baguette de pain. La décision d’acheter un avion est un engagement à long terme vis-à-vis d’un avionneur. La sélection d’un avion plutôt qu’un autre est basée sur un ensemble de facteurs : mérite technique, confiance dans l’avionneur, non seulement comme fournisseur, mais aussi en tant que partenaire commercial. La compagnie aérienne compte en effet sur le fabricant pour poursuivre le développement de l’avion, en assurer le suivi, fournir des pièces de rechange, assurer la maintenance et résoudre les problèmes de sécurité identifiés. Elle doit pouvoir considérer l’avionneur comme un partenaire durable sur lequel elle peut s’appuyer pour mener à bien son activité de transport des personnes et des biens. Pour Linux, il est facile de ne se concentrer que sur les fonctionnalités des divers composants et paquetages logiciels qui forment une distribution de Linux. Mais, tout comme un avion, Linux n’a de l’importance en tant que plate-forme applicative que s’il est capable de relever les défis de ses clients. Et sa valeur ne réside pas dans ses pièces, mais plutôt dans sa capacité à résoudre les problèmes de ses clients et à leur procurer des avantages. Résoudre les problèmes des clients de manière fiable et efficace, aujourd’hui et demain. Assez de cette analogie. Examinons maintenant Linux et l’avantage que présente Linux et Red Hat Enterprise Linux. communauté open source Pour bien mesurer la réussite de Red Hat et la valeur de Red Hat Enterprise Linux, il faut comprendre ce qu’est la communauté open source à laquelle Red Hat participe largement et comprendre également la valeur qu’elle apporte. Red Hat en tant que contributeur assidu de la communauté peut tirer parti de ses investissements et obtenir un formidable retour sur investissement. www.redhat.fr 2
LIVRE BLANC L’avantage Red Hat Enterprise Linux Les logiciels open source ne doivent pas être confondus avec les freewares, ou logiciels L’open source est un modèle gratuits. Ils ne sont pas gratuits, mais libres. En d’autres termes, les utilisateurs sont libres économique et commercial d’exécuter, de copier, de distribuer, d’analyser, de modifier et d’améliorer les logiciels. Ces pragmatique. Les logiciels libertés sont un précepte essentiel à l’existence d’un modèle de développement collaboratif. open source sont le fruit de la N’importe qui peut utiliser, étudier et améliorer la technologie comme il l’entend sans coopération et de la confiance barrière aucune. plutôt que du contrôle et du Grâce à cette ouverture, chacun peut contribuer à la création d’un logiciel et en récolter les dirigisme. fruits. Chaque contributeur ne récolte pas seulement les fruits de son investissement, mais également ceux de l’investissement des autres participants. Ces investissements peuvent être « en nature » ou « financier ». Pour illustrer ce propos, prenons l’exemple d’une société qui emploie un ingénieur chargé d’écrire du code. La société ne tire alors parti que du travail d’une personne. Si dix entreprises emploient chacune un ingénieur participant à l’écriture du code d’un projet open source, chacune tire alors parti du travail de dix ingénieurs. De plus, ces dix sociétés ont la liberté d’utiliser ou de modifier le code comme elles l’entendent, sans aucun paiement supplémentaire. Ce modèle économique et commercial est on ne peut plus sensé. Les avantages qui découlent du travail collaboratif surpassent rapidement l’avantage économique obtenu en restreignant la liberté des utilisateurs. Ces avantages ont favorisé l’accélération de la participation et de la collaboration des communautés de développement open source dans le secteur informatique depuis plus de vingt ans. Red Hat dédie plus d’un millier de développeurs aux projets open source et tire parti du travail de dizaines de milliers d’ingénieurs qui collaborent sur les mêmes projets. Voilà la force du modèle open source et la raison pour laquelle Red Hat est capable de fournir des produits aussi puissants à si bas coûts. Outre le fait que la valeur ne se mesure pas toujours directement en termes financiers, une autre caractéristique des logiciels open source est que le travail est basé sur la coopération et la confiance plutôt que sur le contrôle et le dirigisme. Chez les éditeurs traditionnels, les décisions sont prises au sommet. Les ressources (budgétaires et humaines) sont allouées et le travail doit être réalisé avec ces contraintes. Les facteurs déterminants sont le pouvoir tactique et le pouvoir budgétaire. Les décisions peuvent être prises, et changées, rapidement par une poignée de personnes. A contrario, les projets open source sont pilotés selon un processus consensuel basé sur l’influence, la confiance, le partenariat et l’investissement direct des ressources des participants. Tirer parti de ce modèle et concrétiser des projets requiert une autre approche. Il faut en effet savoir établir et conserver sa crédibilité au sein de la communauté, préserver la confiance, pérenniser la collaboration, vendre des idées, s’employer à rechercher des solutions globales plutôt que tactiques, réfléchir à long terme et investir de manière sensée. Si cette approche est correctement mise en œuvre, le retour sur investissement est conséquent. En la matière, Red Hat dispose d’un immense savoir-faire. Red Hat est en effet un membre estimé et de confiance de la communauté Linux, un partenaire des principaux contributeurs à Linux et le plus grand contributeur au noyau Linux. Elle jouit d’une réelle influence au sein de la communauté et est à même de mener les projets les plus vastes. Sans nul doute, Red Hat tire parti du modèle open source, mais quand est-il de ses clients ? Nous venons d’expliquer pourquoi investir des ressources de développement dans la communauté est une alternative aux investissements financiers. La réciproque est également vraie. Une entreprise peut choisir d’investir de l’argent dans les abonnements Red Hat au lieu d’investir dans d’autres ressources. En ce faisant, l’entreprise et Red Hat tirent parti de Linux, soutiennent la croissance de Linux en tant que plate-forme de qualité et abordable, capable de répondre aux enjeux économiques, sans devoir investir du temps et des ressources dans les activités de la communauté. www.redhat.fr 3
LIVRE BLANC L’avantage Red Hat Enterprise Linux La décision d’opter pour Red Hat Enterprise Linux est également une décision tactique basée sur les mérites techniques de la plate-forme. Quoi de plus pragmatique que de décider d’utiliser une plate-forme d’entreprise stable tout en sachant que quelqu’un sera là pour résoudre les éventuels problèmes ? Et enfin, il s’agit aussi d’une décision stratégique pour avoir l’assurance que la plate-forme, sur laquelle reposeront les activités de votre entreprise, continuera de bénéficier d’améliorations et restera disponible longtemps encore. L’écosystème LinuX ou l’inverse du statisme Il existe une tension Red Hat Enterprise Linux est le juste équilibre entre innovation, d’une part et stabilité, d’autre dynamique, un conflit entre part. Red Hat est activement engagée dans le développement de nouvelles technologies l’innovation et la stabilité, tout en ayant le souci de fournir une base stable aux infrastructures d’entreprise. Cette qui est au cœur même de stratégie donne à nos clients le choix de standardiser leurs environnements informatiques l’écosystème Linux. C’est dans et de les exécuter avec des changements minimaux ou, au contraire, de tirer parti des la résolution de ce conflit que avancées réalisées dans les domaines du développement et des fonctionnalités. Flexibilité Red Hat fournit sa valeur. maximale, sans pénalité de coût. Le processus adopté par Red Hat se compose des phases d’innovation, de prise d’instantané, de stabilisation/d’intégration et de support allié à un modèle d’abonnement souple. En effet, celui-ci vous laisse le choix de la version de Red Hat Enterprise Linux que vous voulez utiliser et la possibilité de passer d’une version à une autre. Il existe une tension dynamique, un conflit entre l’innovation et la stabilité, qui est au cœur même de l’écosystème Linux. C’est dans la résolution de ce conflit que Red Hat fournit sa valeur. Commençons par la base de Red Hat Enterprise Linux, à savoir le noyau Linux. En constante évolution grâce aux contributions de milliers de développeurs, le noyau fait l’objet de trois à quatre versions par an. Les responsables, ou mainteneurs (comme ils se désignent eux- mêmes), du noyau Linux, sous la houlette de Linus Torvalds, sont dédiés à l’amélioration continue du code pour en préserver la grande qualité. Ces personnes sont parfaitement conscientes que certaines améliorations sont susceptibles d’avoir un impact significatif sur les interfaces et le comportement du noyau. Elles savent également que certaines améliorations et modifications peuvent impacter des applications et des outils existants. Il s’agit du prix qu’elles sont prêtes à payer si les avantages justifient le changement. Cela signifie que la dernière version de Linux peut ne pas fonctionner avec des applications existantes. Dans la mesure du possible, les mainteneurs évitent d’appliquer des modifications qui auront un impact sur les applications, mais sont prêts à les mettre en œuvre si des motifs l’exigent. Red Hat offre une solution à ce problème en garantissant la stabilité de chaque version majeure. Les changements importants sont répercutés uniquement lors de la sortie d’une version majeure. Le client peut alors choisir la version qu’il souhaite utiliser sans pénalité de coût. Bien qu’au final, il n’existe qu’une source du noyau Linux, les divers paquetages, outils, utilitaires et applications qui composent une distribution de Linux émanent de milliers de sources différentes. Ils sont développés de manière indépendante et en parallèle. Malgré les efforts de coordination, les diverses versions d’un paquetage présentent souvent des différences. Résoudre ces problèmes de versions et de dépendances constitue l’une des tâches principales de Red Hat Enterprise Linux. Le suivi des changements ne constitue pas un problème pour de nombreuses applications de l’écosystème Linux. Les développeurs maîtrisent le modèle de modifications du noyau Linux ainsi que le grand nombre d’outils, utilitaires et applications Linux. En fait, les modifications sont souvent souhaitées par les développeurs eux-mêmes. Les développeurs, et tout particulièrement les développeurs d’applications open source, considèrent le suivi des changements apportés au noyau et aux autres paquetages desquels ils dépendent comme une tâche normal du processus de maintenance. www.redhat.fr 4
LIVRE BLANC L’avantage Red Hat Enterprise Linux Toutefois, cette situation est source de défis. Le plus important d’entre eux est que les paquetages n’incorporent pas les changements en même temps. En résultent des milliers de paquetages d’une distribution de Linux qui doivent être harmonisés. Nous reviendrons sur ce point plus loin dans ce document. En outre, en raison des dépendances techniques entre paquetages, l’utilisateur ne bénéficie pas toujours des nouvelles fonctionnalités dont fait l’objet une application de la pile logicielle si ces fonctionnalités ne sont pas incorporées ailleurs. Ces changements sont d’autant plus difficiles à gérer sur certaines applications, principalement les applications commerciales disponibles sur plusieurs systèmes d’exploitation ou développées en interne qui ne bénéficient pas de développement ni de maintenance continus. Quel que soit le cas, le souhait général est de pouvoir utiliser une plate-forme qui fonctionne et qui ne change pas. En termes de gestion et d’exploitation des systèmes, la standardisation de l’infrastructure et de l’environnement présente des avantages significatifs : simplification de la gestion des systèmes tant pour les administrateurs que pour les outils, réduction des coûts d’exploitation, meilleure qualité (obtenue par une diminution des incohérences qui sont la source d’erreurs). Il existe une tension dynamique, un conflit entre l’innovation et la stabilité, au cœur même de l’écosystème Linux. C’est en résolvant ce conflit que Red Hat apporte une grande valeur à l’écosystème Linux. En proposant un environnement Linux complet stable, éprouvé et pris en charge, qui tire judicieusement parti des améliorations dont l’écosystème Linux bénéficie continuellement, Red Hat allie le meilleur des deux mondes. Le modèle Red Hat Enterprise Linux Innovation Le Projet Fedora ed Hat est à l’origine, d’une part, d’une distribution fruit d’un travail collaboratif et axée sur les innovations (le Projet Fedora) et, d’autre part, d’une plate-forme d’entreprise axée sur la stabilité (Red Hat Enterprise Linux). Cette approche permet d’équilibrer la tension dynamique entre innovation et stabilité. Le Projet Fedora (fedoraproject.org) désigne une distribution ouverte collaborative dédiée à l’innovation et au développement. Une nouvelle version de Fedora est disponible environ tous les six mois, et chaque version de Fedora intègre le noyau Linux le plus récent ainsi que les principaux paquetages. La mission de Fedora est de promouvoir le développement et l’amélioration de logiciels Linux. Citons à ce titre la page d’accueil du Projet Fedora : Fedora est un système d’exploitation basé sur Linux servant de vitrine aux logiciels libres les plus récents. Fedora est libre : tout le monde peut l’utiliser, le modifier et le distribuer. Il est construit de par le monde par des personnes regroupées autour d’une communauté : le Projet Fedora. Le Projet Fedora est un projet ouvert, tout le monde peut participer. Le Projet Fedora est leader dans le développement de logiciels et contenus libres. Le Projet Fedora est la principale source de développement du nouveau code de Red Hat. Le cycle de développement habituel est le suivant : une fonctionnalité est développée, puis intégrée en amont (voir la section consacrée au suivi en amont), incluse dans Fedora, puis dans la version appropriée de Red Hat Enterprise Linux. www.redhat.fr 5
LIVRE BLANC L’avantage Red Hat Enterprise Linux La vraie force du Projet Fedora vient d’une source surprenante. En effet, Fedora n’est pas un projet contrôlé par Red Hat. D’autres sociétés ont essayé de mettre en œuvre des projets communautaires, mais sans grand succès. Généralement, elles souhaitent garder la main mise sur le projet et ses contributions. Les personnes extérieures à l’entreprise rechignent à contribuer. La communauté peine souvent à trouver son essor. Le Projet Fedora, en revanche, est une organisation indépendante, dotée de son propre conseil d’administration. Red Hat est son plus grand sponsor et emploie des informaticiens qui travaillent directement sur des projets Fedora. En aucun cas, Red Hat ne contrôle ce projet. Au contraire, elle travaille en étroite collaboration avec l’équipe du Projet Fedora et sa communauté. Grâce à cette coopération, elle a su impulser un projet sain et une communauté active. Red Hat, en tant que partenaire et contributeur au Projet Fedora, récolte les fruits de cette relation qui profite aussi bien à Red Hat qu’à la communauté du Projet Fedora. Comme c’est souvent le cas d’une approche communautaire open source, Red Hat a très largement bénéficié de n’avoir pas gardé le contrôle et de travailler avec une vaste communauté. La communauté Fedora a fait maintes fois la preuve qu’elle était aux avant- postes en matière d’innovations technologiques tout en mettant au service de tous un système d’exploitation de grande qualité. Et qui en tire parti ? Red Hat, les clients de Red Hat et les partenaires de Red Hat. Contributions de Red Hat Un élément essentiel de ce mode de fonctionnement sont les contributions de Red Hat à l’écosystème Linux, tant sur le plan des contributions elles-mêmes que sur la façon dont elles sont mises en œuvre. Red Hat a pris l’engagement de fournir des logiciels sous licence open source. Parfois, cela implique de racheter un éditeur de logiciels propriétaires, logiciels qui seront ensuite fournis dans le cadre d’une licence open source. Dans d’autres cas, il peut arriver qu’un logiciel intègre des technologies disponibles sous licences propriétaires. Red Hat réalise un travail considérable pour pouvoir extraire une version open source de ce type de logiciel. Red Hat est un bon citoyen de la communauté open source. Comme nous l’avons déjà indiqué, l’ensemble du code doit être accepté en amont avant qu’il puisse être intégré à Red Hat Enterprise Linux. Le développement est réalisé au vu et au su de tous et ce n’est qu’une fois que le code a été accepté par les mainteneurs amont qu’il est inclus dans un produit Red Hat. Red Hat joint véritablement le geste à la parole. Pour Red Hat, l’open source est une philosophie, et non un buzzword. Le développement étant ouvert, il est normal que Red Hat travaille en étroite collaboration avec d’autres sociétés. Red Hat coopère avec des acteurs majeurs, tel qu’Intel, AMD, IBM, HP et Dell sur une large gamme de projets d’intérêt mutuel. Par exemple, Red Hat travaille avec Intel et AMD sur la norme ACPI. Il s’agit d’une spécification d’interface matérielle visant à limiter la consommation d’énergie des processeurs. La spécification inclut divers mécanismes, tels que la possibilité d’échanger à chaud un processeur, changer en temps réel la fréquence d’un processeur ou placer un processeur dans le mode veille approprié lorsqu’il n’est pas sollicité. L’interface ACPI ne peut être opérationnelle que si les fabricants l’intègrent à leur matériel. Le système d’exploitation doit ensuite être modifié pour que les fonctionnalités ACPI puissent être exploitées. Ici, ces modifications impliquent un travail conséquent au niveau des planificateurs système et d’autres sous-systèmes. www.redhat.fr 6
LIVRE BLANC L’avantage Red Hat Enterprise Linux Les constructeurs, tels qu’IBM, HP et Dell, sont eux-aussi amenés à prendre part au processus. En effet, ils doivent décider comment la gestion de l’alimentation doit être prise en charge par les systèmes et le BIOS. Les systèmes, bien que reposant sur le même processeur, peuvent présenter d’immenses différences. C’est pour cette raison que les constructeurs doivent travailler en collaboration. Enfin, la spécification ne peut être mise en œuvre que par le biais de nouveaux outils de contrôle de la gestion de l’alimentation. Ces outils doivent répondre à tous les scénarios d’utilisation : un utilisateur d’ordinateur portable configurera son système pour limiter au maximum la consommation d’énergie afin d’augmenter la durée de vie de la batterie. A contrario, une société de bourse devra, quant à elle, exploiter ses systèmes à plein régime pour limiter le temps de latence. Un autre exemple est la gestion de l’alimentation. Celle-ci ne peut progresser qu’au travers d’une solide coopération inter-entreprises pour développer et commercialiser des produits éco-énergétiques. Il ne peut s’agir d’un effort ad-hoc, mais d’un effort continu qui implique les fabricants de processeurs (ajout de fonctionnalités de gestion de l’alimentation), les fabricants de matériel (conception de nouveaux systèmes) et les développeurs du noyau Linux. Une des avancées les plus significatives dont a fait l’objet le système d’exploitation est le noyau tickless, autrement dit un noyau sans cycle d’horloge. Une nouveauté de Red Hat Enterprise Linux 6 à laquelle Red Hat a activement pris part, le noyau tickless révolutionne le fonctionnement du système d’exploitation. Auparavant, le noyau se réactivait des centaines, voire des milliers de fois par seconde (en fonction des cycles de l’horloge interne) pour vérifier s’il devait intervenir ou non. Le noyau tickless est quant à lui piloté par des interruptions. En d’autres termes, le système reste en veille tant qu’il n’est pas sollicité. Comme le mode veille est peu gourmand en énergie, plus un système est en veille, plus les économies d’énergie sont grandes. Le noyau tickless n’a pu voir le jour qu’au prix de changements massifs à plusieurs sous- systèmes Linux, une coopération étroite avec de nombreux fabricants et des tests poussés. Les utilitaires système et applications basés sur les cycles d’horloge, ont dû être modifiés pour pouvoir être pilotés par les interruptions. Heureusement, cette initiative a bénéficié de l’appui de l’ensemble de la communauté Linux. Au lieu qu’une société teste le matériel et les applications, détecte les bogues et le résolve, ce travail a été partagé par des milliers de personnes à travers le monde entier. Contrairement à un système d’exploitation commercial, qui ne voit le jour que lorsque tout est fin prêt, les membres de la communauté ont pu travailler sous Linux et le tester au cours de toutes les phases du développement du noyau tickless. Le résultat final peut être considéré comme une révolution qui procure des avantages substantiels et qui n’a pratiquement causé aucun problème. Notez les avantages offerts par le développement ouvert basé sur la coopération. Les fabricants peuvent désormais commercialiser des processeurs dotés non seulement de nouvelles fonctionnalités, mais d’une interface commune pour celles-ci. Cette interface commune permet d’innover en matière d’implémentation tout en facilitant le travail des fabricants de matériel et éditeurs de logiciels. Les fabricants de matériel peuvent tirer parti de ces nouvelles caractéristiques en les intégrant à leurs systèmes tout en s’assurant qu’elles seront prises en charge par le système d’exploitation. Quant aux éditeurs, ils peuvent tirer parti des nouvelles caractéristiques que présentent les processeurs et les systèmes en vue de les exploiter pleinement. Cette coopération réduit les efforts et les coûts engagés par chaque partie prenante et favorise la collaboration. En résultent des produits de grande qualité développés à un coût moindre. Nous venons de démontrer les avantages que confère le modèle de développement open source, qui est le fondement de la philosophie de Red Hat. Mais les avantages ne s’arrêtent pas là. www.redhat.fr 7
LIVRE BLANC L’avantage Red Hat Enterprise Linux Après tout, Red Hat est le premier contributeur au noyau Linux. Le dernier rapport de The Linux Foundation, intitulé Linux Kernel Development: How Fast it is Going, Who is Doing It, What They are Doing, and Who is Sponsoring It (linuxfoundation.org/publications), montre que la contribution de Red Hat pour l’ensemble des changements apportés au noyau s’élève à plus de 12 %, loin devant le deuxième contributeur (8 %). Ces chiffres démontrent clairement l’engagement de Red Hat vis-à-vis du développement open source. Red Hat voit aussi les choses à long terme. Trouver une solution rapidement peut procurer une grande satisfaction, mais est-ce vraiment un objectif ? Ne vaut-il pas mieux essayer de prendre le temps et de se donner les moyens ? Un exemple qui illustre ce propos est le projet Linux temps réel, dont Red Hat est le plus grand contributeur. Un système temps réel est un système capable de terminer une tâche dans le délai imparti1. 1 « Temps réel dur » est un L’objectif est d’éviter d’interrompre une tâche avant qu’elle ne se termine : un défi majeur terme propre aux systèmes de pour tout système multiusage, multitâche, multiutilisateur et multiprocesseur. contrôle des avions. Il garantit La mise en œuvre du temps réel dans Linux a nécessité la modification de centaines de qu’une tâche s’exécutera dans modules répartis dans des dizaines de sous-systèmes. Les développeurs travaillant sur un délai imparti. Il ne peut ce projet s’y sont attelés et sont parvenus à mettre au point un système Linux temps réel être mis en œuvre que dans opérationnel. Des dizaines de milliers de lignes de code ont fait l’objet de changements. des systèmes embarqués spécialisés. Linux fournit une Nombre de ces changements étaient invasifs. En d’autres termes, ils auraient pu avoir un fonctionnalité de temps réel impact sensible sur un système, en modifier le comportement et provoquer d’autres effets dit « mou » (soft real time par secondaires. C’est pourquoi ces changements ne peuvent être envisagés que s’ils sont opposition à hard real time) largement justifiés. Ils font l’objet d’analyses et de tests poussés et sont validés avec la désigné également par modèle plus grande attention. La personne ou le groupe qui propose des changements invasifs doit à faible temps de latence. être capable de convaincre ses pairs que les avantages surpassent le risque et les coûts engendrés. En outre, quelques-uns des correctifs mis au point par l’équipe Linux risquaient de modifier le comportement fondamental de Linux, ce qui ne présentait aucun avantage pour la majorité Red Hat Enterprise Linux est des utilisateurs de Linux. intégré et configuré pour Et pourtant, l’implémentation de ces changements dans le noyau Linux offrait de réels les plus grands systèmes avantages. Les patchs concernant le temps réel ont malgré tout été gérés à l’écart du disponibles. noyau. Il a fallu intégrer ces changements dans chaque nouvelle version du noyau. Si les changements avaient été inclus d’emblée dans le noyau standard, le travail d’intégration aurait été plus rapide, mais la stabilité n’aurait pas été assurée. Les développeurs dédiés à Linux temps réel ont entrepris un programme de cinq ans pour intégrer ces changements à Linux. Ils ont d’abord identifié ceux qui profiteraient le plus aux utilisateurs Linux. Une centaine de changements, par exemple, aurait affecté une grande partie d’une seule version du noyau. Toutefois, en ciblant une dizaine de changements dans chaque version du noyau (et il en existe trois à quatre par an), l’intégration d’une centaine de changements a pris plus de trois ans. L’intégration des changements par incrément est le mode de fonctionnement que la communauté Linux a choisi d’adopter. Les développeurs de l’équipe Linux temps réel ont également identifié les changements qui ne devaient pas faire partie du noyau principal. Ils ont ensuite œuvré pour que ces changements soient aussi faciles que possible à intégrer, en vue de réduire le travail nécessaire pour harmoniser les noyaux. Ce processus a permis d’intégrer une partie des changements au noyau Linux principal dont ont pu tirer parti les utilisateurs généraux et d’intégrer le reste rapidement. Les responsables du programme Linux temps réel ont pu mettre en œuvre les changements qu’ils souhaitaient sans affecter les utilisateurs. Comme les changements font désormais partie intégrante du noyau Linux principal, c’est toute la communauté Linux qui peut tester, prendre en charge et améliorer ce composant. Rien n’à voir avec ce qu’aurait pu fournir l’équipe Temps réel www.redhat.fr 8
LIVRE BLANC L’avantage Red Hat Enterprise Linux seule. L’exemple que nous venons de présenter n’est qu’un des nombreux avantages qu’offre le modèle de développement open source. Ce modèle, allié avec patience et pugnacité, est extrêmement positif. Il illustre également la vue à long terme de Red Hat. En effet, Red Hat investit au long cours et travaille avec ses partenaires pour fournir un nouveau produit qui bénéficie à ses clients. Suivi amont L’autre élément fondamental du modèle d’innovation de Red Hat est la notion de suivi amont2. Dans le cadre du noyau Linux, cela signifie que Red Hat utilise le code issu de kernel. org. Red Hat n’ajoute aucune fonctionnalité en dehors du processus de développement 2 Le mainteneur amont ou public. Toutes les nouvelles fonctionnalités développées par Red Hat sont d’abord soumises responsable amont (en anglais et validées par les mainteneurs du noyau (au final Linus Torvalds), puis intégrées à Red Hat upstream maintainer) est une Enterprise Linux. Red Hat Enterprise Linux demeure entièrement compatible avec le code personne ou un groupe qui Linux officiel, ce qui simplifie grandement le support Red Hat Enterprise Linux. C’est aussi le détermine quel code doit être gage que les clients de Red Hat ne sont pas dépendants de fonctionnalités propres à Red Hat. intégré à la version officielle d’un paquetage. Bien que Red Hat tire automatiquement parti de tous les contributeurs au noyau Linux ainsi que de quiconque puisse apporter tous les paquetages intermédiaires. Et pour cela, Red Hat s’y emploie de deux manières. des changements aux logiciels Tout d’abord, via le Projet Fedora. Une nouvelle version Fedora sort environ tous les six mois. open source, les changements Chaque version de Fedora inclut la dernière version du noyau Linux ainsi que la dernière doivent être acceptés de version de nombreux paquetages importants. Grâce à cela, Fedora est une plate-forme de manière formelle avant qu’ils développement idéale, car elle est en lien étroit avec les développements en amont, fournit ne puissent être repris dans les la base du développement des nouvelles fonctionnalités et constitue une boucle de feedback versions en cours et suivantes. rapide. Il s’agit d’un mécanisme Toutefois, de nombreuses sociétés estiment que Fedora change trop rapidement pour essentiel et souvent négligé les environnements d’entreprise. C’est pour cette raison que Red Hat propose Red Hat du monde de l’open source Enterprise Linux uniquement en deux versions : majeures et mineures. Les versions majeures et le seul moyen d’apporter sortent tous les deux à trois ans. Chacune d’elle est suivie pendant au minimum sept ans. des améliorations lors du Les versions mineures sortent environ tous les six mois pendant le cycle de vie d’une version processus de développement majeure et leur développement est encadré par des règles strictes qui stipulent ce qui peut d’un paquetage. être modifié ou non. Instantané, intégration et stabilisation À l’instar des versions Fedora, chaque version majeure de Red Hat Enterprise Linux comporte un nouveau noyau et une nouvelle version de la plupart des paquetages. Il peut s’agir de changements importants apportés aux bibliothèques et interfaces, fichiers de configuration, structures des données sur disque et du noyau, etc. La première étape d’une version majeure de Red Hat Enterprise Linux commence par la prise d’un instantané du noyau et des dernières versions stables des milliers de paquetages qui forment une distribution Linux. La phase suivante se compose des processus d’intégration et de stabilisation. Elle requiert des mois de travail d’ingénierie qui vise à : • vérifier que tous les paquetages fonctionnent ensemble, • rechercher et corriger les bogues, • créer les fichiers de configuration appropriés pour Red Hat Enterprise Linux, • réaliser des tests sur un large panel de systèmes et de périphériques, • configurer les paramètres système, • vérifier que le produit est conforme à l’identité de Red Hat Enterprise Linux. www.redhat.fr 9
LIVRE BLANC L’avantage Red Hat Enterprise Linux Les partenaires de Red Hat prennent part à cette phase pour s’assurer que la plate-forme répond à leurs besoins et à ceux de leurs clients. Un exemple est la prise en charge du matériel. La grande majorité des développeurs Linux travaillant sur de petits systèmes, Linux est optimisé pour ces systèmes. (Un petit système de nos jours est un ordinateur tout de même doté de 4 à 16 processeurs et de 8 à 32 Go de mémoire.) Les serveurs modernes sont bien plus puissants et il est nécessaire de vérifier que Linux fonctionne correctement sur ces systèmes. Red Hat a considérablement investi pour tester et configurer ses produits sur de gros systèmes. La société en possède une douzaine dans ses laboratoires : systèmes équipés d’au moins 64 processeurs et 100 Go de mémoire, réseaux SAN ou réseaux Ethernet et Infiniband Gbit/s. Red Hat recourt à des suites de tests automatisées qui incluent les applications d’entreprise les plus répandues. La société compte aussi des experts en conception et en configuration de gros systèmes. Elle a tissé des liens étroits avec des entreprises, telles que IBM, HP, Dell, Intel, AMD, SGI et d’autres, pour vérifier que toute nouvelle version de Red Hat Enterprise Linux est capable d’exploiter leurs systèmes et technologies. Outre le suivi amont que nous avons évoqué, la phase d’intégration et stabilisation est le secteur dans lequel Red Hat investit le plus en termes d’ingénierie. Il s’agit aussi de la phase la plus importante, car elle est ce qui distingue le plus Red Hat Enterprise Linux des autres systèmes d’exploitation Linux. Parmi les héros méconnus de Red Hat, une équipe d’ingénieurs chargée des performances repousse les limites des tests, tant matériels que logiciels, en s’appuyant sur de nombreux benchmarks et charges de travail applicatives. Ce n’est qu’en exécutant des charges de travail lourdes et complexes qu’il est possible de mettre à jour les problèmes de performances, tout particulièrement avec les systèmes actuels. Des facteurs, tels que le nombre d’UC élevé, les quantités astronomiques de mémoire, les goulots d’étranglement des communications, la bande passante et la latence des E/S, les sous-systèmes de stockage, la virtualisation, l’architecture système et les paramètres système, doivent tous être pris en compte pour les nouveaux systèmes et nouvelles versions de Red Hat Enterprise Linux. L’équipe d’ingénieurs chargée des performances chez Red Hat excelle dans la recherche et la résolution des problèmes de performances, avant qu’ils n’affectent les clients. Si un client rencontre un problème de performance, l’équipe a toute l’expérience requise pour le répliquer, et, via le processus d’assistance fournie dans le cadre d’un abonnement Red Hat Enterprise Linux, peut proposer des suggestions ou travailler avec l’équipe d’ingénieurs de Red Hat pour le résoudre. Ce travail d’intégration et d’optimisation des performances est beaucoup plus important qu’il n’y paraît. Prenons l’exemple d’un serveur de base de données. Supposons qu’il ait fonctionné correctement pendant des années. Les performances se sont dégradées à en devenir inacceptables en raison de l’augmentation du volume de données et du nombre d’utilisateur. La décision est prise de le remplacer par un serveur doté de deux fois plus de processeurs et de quatre fois plus de mémoire. Malgré cela, le nouveau serveur est plus lent que l’ancien. Que s’est-il passé ? De nombreuses possibilités sont envisageables allant d’une mauvaise configuration du matériel au changement d’algorithmes fondamentaux du système d’exploitation en raison de l’augmentation de la mémoire et du nombre de processeurs. Ce problème n’est pas si anodin, quel que soit le système d’exploitation. La seule façon de le résoudre est d’exécuter les charges de travail sur de nouveaux systèmes, rechercher les problèmes de performances et d’évolutivité, puis de les corriger. Nul besoin de préciser que cette démarche exige d’importants investissements et un grand savoir-faire de la part de l’éditeur du système d’exploitation. C’est là que se démarque Red Hat Enterprise Linux des distributions pour ordinateur de bureau et/ou communautaires. www.redhat.fr 10
LIVRE BLANC L’avantage Red Hat Enterprise Linux Une grande partie du travail de création d’une plate-forme d’entreprise se fait dans l’ombre, mais est absolument nécessaire. En effet, il faut tester, configurer, corriger le logiciel sur un large panel de matériels, configurations et applications. Jour après jour, il faut vérifier le moindre détail et s’assurer que les « pièces mobiles » fonctionnent ensemble. Un travail d’ampleur nécessitant des personnes, des processus, des systèmes et une infrastructure. Et surtout, ce travail ne peut s’accomplir qu’avec les ressources de l’entreprise et la volonté de bien faire les choses. Ce travail ne fait jamais l’objet de communiqués de presse ni n’est mis en valeur dans des documents marketing. De nombreux observateurs le trouvent plutôt ennuyeux. S’il est correctement réalisé, c’est le résultat qui est ennuyeux. Des systèmes qui fonctionnent. UUn comportement prévisible. Pas de panne sensationnelle. Et des administrateurs système qui peuvent dormir sur leurs deux oreilles ! Comme tout un chacun a accès au code Linux, il peut être difficile de reconnaître les entreprises capables de fournir ce travail et celles qui se cantonnent à recycler le travail des autres. Et pourtant, il existe de bons indices. Premièrement, consultez l’historique des sources (commits) du noyau Linux et des principaux Chaque version majeure de paquetages. Il est facile de déterminer qui contribue à la maintenance et au développement Red Hat Enterprise Linux offre de Linux. Consultez également le type de correctifs soumis. Si ceux-ci incluent de nouvelles une plate-forme stable et fonctionnalités, concernent de grands systèmes (grande capacité de mémoire et nombre cohérente pour exécuter des important de processeurs), portent sur une infrastructure commune, l’engagement de applications. l’entreprise envers Linux est réel. Au contraire, si l’entreprise propose peu de correctifs, ne travaille pas sur de grands systèmes ou si elle ne se concentre que sur les fonctionnalités qui l’intéressent directement, il est normal d’avoir des doutes. Deuxièmement, évaluez la relation de travail entre la société et les acteurs du monde technologique. Travaille t-elle avec d’autres entreprises pour s’assurer que le nouveau matériel est pris en charge dès sa commercialisation ? Se procure-t-elle les derniers systèmes ? Reçoit-elle des feuilles de route et des mises à jour régulières ? Ses partenaires principaux missionnent-ils des ingénieurs dans ses locaux pour faciliter la coordination ? Troisièmement, prêtez attention au processus de qualification et de certification du matériel. La société a-t-elle établi un programme permettant de tester et de qualifier les systèmes qu’elle prend en charge ou s’appuie-t-elle sur des certifications externes ? Les systèmes sont- ils véritablement testés ou la société ne se base-t-elle que sur des hypothèse ? Combien de systèmes ont été certifiés ? Quand le système de certification a-t-il été établi ? Quatrièmement, la société s’est-elle engagée auprès de la communauté ou souhaite-t-elle uniquement apporter des nouveautés et des changements de manière ponctuelle ? Croit- elle en les avantages à long terme de la compatibilité avec la communauté en amont ou est- elle prête à apporter des changements incompatibles pour atteindre des objectifs à court terme ? Support Au terme des phases de prise d’instantané, d’intégration et de stabilisation, la nouvelle version de Red Hat Enterprise Linux est disponible. À ce stade, la version majeure de Red Hat Enterprise Linux commence à bifurquer du développement aval. Plus précisément, c’est le développement aval qui se poursuit et bifurque de Red Hat Enterprise Linux. Le noyau Linux et les logiciels associés continuent leur évolution, la version de Red Hat Enterprise Linux reste stable. www.redhat.fr 11
LIVRE BLANC L’avantage Red Hat Enterprise Linux Cela signifie que chaque version majeure de Red Hat Enterprise Linux offre une plate- forme stable et cohérente pour exécuter des applications. Dès lors qu’une version majeure est disponible, Red Hat s’engage à assurer la stabilité des interfaces API, ABI et KABI ainsi que de l’ensemble des paquetages pendant toute la durée de vie de la version. Cela signifie également que les mises à jour contenues dans les versions mineures de Red Hat Enterprise Linux n’auront pas d’incidence sur les applications et les outils. En fait, Red Hat se donne beaucoup de mal pour que les versions mineures n’entraînent aucun dysfonctionnement des applications. Tout problème éventuel est considéré comme un bogue qui doit être corrigé. Versions mineures Les versions majeures de Red Hat Enterprise Linux sont mises à jour régulièrement. On parle alors de versions mineures. Celles-ci sortent environ tous les six mois. Chaque version majeure fait l’objet de plusieurs versions mineures. Les versions mineures de Red Hat Enterprise Linux sont le vecteur de nouvelles 3 Le rétroportage ou fonctionnalités, correctifs de bogues et prises en charge matérielles. Le code aval est alors backporting est le processus rétroporté (ou backporté)3. Toutes les modifications sont soigneusement examinées pour selon lequel un correctif est vérifier qu’elles sont compatibles avec la version majeure et n’affectent pas les applications. modifié pour fonctionner avec Les nouvelles fonctionnalités sont généralement ajoutées dans les deux ans qui suivent la une version plus ancienne sortie d’une version majeure de Red Hat Enterprise Linux. Elles sont d’abord intégrées en d’un paquetage ou d’une aval, puis rétroportées. La plupart d’entre elles sont intégrées à une version Fedora, puis application. testées dans celle-ci avant d’être incluses dans Red Hat Enterprise Linux. Fedora constitue un environnement de développement et un banc d’essai de choix des nouvelles fonctionnalités avant qu’elles ne soient incorporées à Red Hat Enterprise Linux. Ce processus permet d’améliorer sensiblement la qualité et la stabilité de Red Hat Enterprise Linux. Red Hat déploie beaucoup d’efforts pour s’assurer que les nouvelles versions sont compatibles. Les fonctionnalités sont des ajouts au code existant (plutôt que des modifications). La phase dite de hardware enablement ou médiation avec le matériel consiste à assurer le bon fonctionnement des nouveaux processeurs et des périphériques, tels que les contrôleurs réseau, de stockage, graphiques, entre autres. La plupart des nouveaux périphériques sont pris en charge via l’ajout de pilotes ou l’extension de pilotes existants. Les nouveaux processeurs requièrent parfois des modifications du noyau qui touchent à la gestion de la mémoire, des ressources, de l’alimentation ou bien encore à l’affinité de processeurs ou à la topologie système. Lorsque les processeurs implémentent de nouvelles instructions, il est parfois nécessaire de modifier le compilateur gcc et toolchain associé. Cette phase doit répondre à deux objectifs : prendre en charge les nouveaux périphériques et ne pas nuire aux périphériques et applications existants. Red Hat s’y attelle principalement au cours des quatre premières années du cycle de vie d’une version majeure. La plupart des modifications apportées à chaque version mineure sont des correctifs. Les bogues critiques sont rapidement corrigés par le biais d’errata asynchrones alors que la majorité des correctifs sont inclus dans la version mineure suivante. Chaque version mineure fait l’objet de tests poussés, comprenant l’analyse de l’interaction possible entre les différents correctifs. www.redhat.fr 12
Vous pouvez aussi lire