La sobriété numérique est à l’agenda de tous les responsables informatiques. Elle requiert néanmoins une prise de conscience de l’impact environnemental des infrastructures informatiques, incitant les entreprises à adopter des pratiques responsables pour réduire leur empreinte carbone. Et pour les aider dans leur quête d’un environnement IT plus durable, elles peuvent se tourner vers l’open source.
Aujourd’hui, les entreprises s’intéressent de plus en plus à la question de durabilité écologique. Cependant, limiter les voyages d’affaires et instaurer des dispositifs au sein de l’entreprise ne suffira pas à atteindre les objectifs de durabilité fixés, car les émissions de CO2 sont aussi fortement influencées par les outils logiciels.
Le secteur IT est déjà engagé dans une amélioration significative de son impact environnemental, que ce soit lors de la fabrication ou de l’utilisation de ses produits. Il est essentiel que les entreprises prennent également conscience de l’impact de leur infrastructure informatique sur le changement climatique et des pratiques exemplaires ainsi que des changements qu’elles peuvent mettre en œuvre pour améliorer leur empreinte carbone.
Quelles sont les actions pratiques que les entreprises peuvent envisager pour progresser vers une infrastructure informatique plus durable ?
Comment déployer, utiliser et mettre à l’échelle les plateformes ?
Les enjeux liés au déploiement, à l’utilisation et à la mise à l’échelle des plateformes sont complexes car ils s’articulent autour des considérations liées à l’architecture. Cela concerne notamment les technologies open source centrées sur l’emploi et l’expansion tel que Knative (architecture Serverless en environnement Kubernetes).
Dans un environnement Kubernetes, la norme est d’adopter le principe de « un cluster par application« , parfois étendu à « plusieurs clusters (staging/prod/dev) par application« . Dans ces configurations, les charges de travail peuvent parfois être faibles. Cela signifie que même si un déploiement évolue jusqu’à atteindre un usage de ressources nul, les entreprises ont toujours une charge liée au fonctionnement du cluster Kubernetes, à laquelle s’ajoute l’empreinte carbone de tout le matériel. Bien que cela puisse permettre de réduire la consommation d’énergie de la charge de travail, l’impact positif sur le bilan climatique global reste limité. Par conséquent, les entreprises doivent examiner attentivement leur configuration globale avant d’investir dans des technologies supplémentaires pour une application spécifique.
L’objectif principal est de réduire au maximum l’empreinte écologique de la plateforme pour des applications représentatives, qu’il s’agisse des environnements de développement, de tests, de production, etc. Il est recommandé d’optimiser la conception de ces environnements avec, par exemple, l’usage systématique de l’automatisation afin d’en maximiser l’utilisation.
Un autre avantage majeur concerne les technologies capables de gérer les pics de charge. Par exemple, la gestion des pipelines de déploiement et d’intégration continue peut se faire de deux manières : de manière ‘statique’, en allouant à l’avance les ressources nécessaires, ou de manière ‘élastique’, en ajustant dynamiquement la capacité pour répondre aux pics de charge ou aux besoins spécifiques. Ces méthodes utilisent des technologies telles que Tekton.
Il peut être avantageux d’ajuster l’architecture matérielle en fonction du type de charge pour réduire au minimum ou optimiser la consommation d’énergie. Par exemple, cela peut impliquer une transition du x86 vers ARM ou l’utilisation de FPU/GPU pour les calculs intensifs.
Un code efficace
« Le code le plus efficace est celui qui n’a pas besoin d’être écrit. Et le meilleur moment pour identifier les charges de travail inutiles est le plus tôt possible dans le processus de conception« , résume la Green Software Foundation.
Néanmoins, les nouvelles architectures applicatives – notamment à base de micro-services, possiblement en serverless – offrent une optimisation notable de l’utilisation des ressources matérielles.
Modifier ou mettre à jour les runtimes et/ou les langages de programmation peut apporter des avantages positifs en réduisant l’utilisation du CPU, de la mémoire voire du disque pour une charge de travail similaire. Par exemple, l’utilisation de Quarkus dans le processus de modernisation des anciennes applications Java.
Les atouts du cloud
La capacité à déployer différentes plateformes et applications sur l’ensemble des fournisseurs de cloud computing offre un modèle élastique et évolutif, capable de s’ajuster en temps réel en fonction de l’utilisation, ce qui réduit les problèmes de surconsommation lors des pics de charge.
Avec ces évolutions, choisir le fournisseur de services cloud ayant la meilleure empreinte énergétique pour une région et une période données devient possible. Pour sélectionner la plateforme la plus adaptée à une application, il est crucial de disposer d’outils de mesure améliorant la prise de décision.
Pour accompagner cette évolution, un nombre croissant de projets open source voient le jour afin d’aider les entreprises à atteindre leurs objectifs de durabilité. Ces initiatives interviennent notamment en collectant des données sur la consommation énergétique des plateformes utilisées par les entreprises, offrant ainsi une vision plus claire et une meilleure compréhension de leur impact environnemental. Les mesures doivent être précises et détaillées, idéalement collectées fréquemment au niveau de l’application ou du container, sans ajouter de charge excessive liée à la collecte d’informations ; c’est notamment ainsi que fonctionne le projet Open Source Kepler.
En utilisant ces mesures, certains projets peuvent automatiser l’arrêt des ressources pendant les périodes d’inactivité pour économiser de l’énergie, chaque économie étant précieuse à ce stade. Pour garantir l’efficacité d’une mesure, il est essentiel de définir préalablement des objectifs et de choisir des métriques pertinentes pour les évaluer.
___________________
Par David Szegedi, CTO France, Red Hat