CTO de Coralogix : pourquoi le DevOps cloud repose sur l’infrastructure as code

Yoni Farin, de Coralogix, met en lumière les préoccupations et les avantages de l’IaC au sein des équipes DevOps.

Mar 18, 2022
6 minute read
enterprise infrastructure
Enterprise Networking Planet Le contenu et les recommandations de produits sont indépendants de la rédaction. Nous pouvons gagner de l'argent lorsque vous cliquez sur des liens vers nos partenaires. En savoir plus

Au cours des cinquante dernières années, les réseaux ont évolué à travers plusieurs ères de connectivité (client-serveur, entre autres), tandis que les plateformes, les processus et les procédures se sont adaptés aux tendances actuelles et aux nouvelles innovations.

La dernière tendance en matière d’architecture réseau est le concept d’infrastructure as code (IaC). 

L’IaC est un modèle descriptif qui permet de définir et de provisionner la structure d’un réseau informatique, ainsi que ses capacités de stockage des données et ses fonctions associées.

Il permet aux utilisateurs de définir les structures des serveurs, les équilibreurs de charge et d’autres niveaux de gestion logicielle. Bien qu’elle ne soit pas couramment utilisée dans le développement d’applications, l’IaC s’applique à la couche inférieure de l’informatique dont dépendent les utilisateurs.

Des topologies de connexion définies

En termes de forme et de fonction, l’infrastructure as code se présente généralement sous la forme de fichiers texte, écrits dans des langages logiciels dédiés, notamment Terraform, AWS’ CloudFormation, et d’autres. Contrairement aux réseaux construits à l’aide de câbles et de fils, ce type de réseau est constitué de fichiers de code source descriptifs qui définissent les topologies de connexion.

Alors que l’IaC tend à devenir une composante établie de l’écosystème cloud, les entreprises et les équipes informatiques doivent se préparer à son impact sur les structures et les systèmes qu’elles utilisent au quotidien.

À lire également : Automatiser le DevOps avec l’IA et le ML

Impact sur le DevOps et la cohérence des environnements de production

L’IaC est particulièrement adaptée aux équipes informatiques centrées sur le cloud, qui ont besoin de mécanismes pour automatiser la création de leur infrastructure, déployer de nouveaux environnements et servir de documentation évolutive afin de suivre tout ce qu’elles ont créé. Elle peut répondre à une grande partie, voire à la totalité de ces besoins, car elle couvre tous les niveaux de l’environnement de production, notamment le développement, la préproduction, les tests et la production.

Les environnements multiples sont utiles pour tester les modifications du code avant leur déploiement en production. Cependant, la cohérence entre les environnements, du développement à la production, constitue une préoccupation majeure, comme l’a expliqué Yoni Farin, CTO et cofondateur de Coralogix, une entreprise connue pour sa plateforme d’analytique de flux avec état, qui produit des informations en temps réel et analyse les tendances à long terme sans dépendre du stockage ni de l’indexation.

Advertisement

« Avec l’IaC, au lieu de créer manuellement chaque environnement en espérant qu’ils soient cohérents, vous effectuez votre modification dans votre base de code et l’appliquez à chaque environnement », a déclaré Farin. « Vos environnements peuvent ainsi rester parfaitement cohérents, à condition que vos ingénieurs respectent le code. »

Les changements causés par la dérive des fonctions du code

Farin explique que, pour parvenir à des changements cohérents, nous devons comprendre que la dérive des fonctions du code survient traditionnellement de manière systématique. Les changements peuvent se manifester en production en raison de zones de déploiement distinctes, de la complexité inhérente aux systèmes et de simples erreurs humaines.

« Mais avec l’IaC, vous savez que si votre changement a fonctionné dans un environnement, et que vos environnements sont cohérents, ce même changement devrait fonctionner dans l’environnement suivant », a déclaré Farin. « Des changements cohérents renforcent la confiance et réduisent le taux d’erreur, ce qui accroît à son tour la fréquence des déploiements. »

Compte tenu de l’essor du développement low-code/no-code et de l’émergence du développeur citoyen, du data scientist citoyen, etc., il n’y a peut-être aucune raison de ne pas s’attendre à voir apparaître des ingénieurs réseau citoyens. Les changements susceptibles d’influencer le comportement des structures système pouvant provenir de davantage de sources, nous avons besoin d’un moyen d’obtenir une visibilité sur tous les services et leur infrastructure sous-jacente.

À lire également : Utiliser le low-code pour fournir une automatisation réseau

L’IaC comme vecteur essentiel de visibilité

Farin, de Coralogix, estime que l’IaC peut servir de vecteur de visibilité pour les services et leur infrastructure.

« À un moment donné, quelqu’un va vous poser une question simple sur votre architecture cloud : “Alors, qu’utilisons-nous exactement ?” », a déclaré Farin. « Cela devrait être une question simple, mais malheureusement, à mesure que votre architecture évolue, il devient difficile d’y répondre.

« L’IaC fournit cette visibilité, car toutes les modifications doivent passer par la base de code. Vous pouvez examiner le code et comprendre comment votre architecture s’articule. Cela sert de documentation évolutive, conçue pour rester à jour. »

Ce code peut également être analysé, par exemple à l’aide de graphes terraform pour générer des diagrammes dot. Cela ouvre la voie à toute une série de diagrammes, de workflows et d’autres visualisations susceptibles d’automatiser en grande partie le processus de documentation et de suivi des décisions d’infrastructure.

Advertisement

L’objectif est ici de pouvoir appréhender des modules de code réutilisables. Même une équipe DevOps dotée de compétences exceptionnelles, de discipline et d’un grand dévouement bénéficiera de la possibilité de réutiliser le code chaque fois que cela est possible.

Dans le développement cloud, les équipes informatiques cliquent souvent sur l’interface utilisateur pour effectuer encore et encore les mêmes tâches, ou des tâches similaires. Cependant, ce n’est ni une manière productive ni une manière rentable d’utiliser le temps précieux de l’équipe. Elles devraient plutôt chercher à automatiser ces clics.

« L’IaC permet aux équipes DevOps de créer des modules de code qui génèrent des ressources cloud, comme des bases de données, des infrastructures serverless, des serveurs et bien plus encore », a déclaré Farin. « Ces modules sont parfaits pour automatiser des tâches qui deviendraient autrement monotones. »

Pour aller plus loin dans l’objectif de maintenir la gestion du cycle de vie, l’IaC offre encore d’autres possibilités.

Réduire la complexité du démantèlement du cloud

« Lorsque les gens évoquent l’infrastructure cloud, ils réfléchissent presque jamais à ce qu’ils devront faire lorsqu’il faudra tout démanteler », a déclaré Farin. « La gestion du cycle de vie est une entreprise complexe, généralement ajoutée à mi-parcours d’un projet, quand elle l’est, car elle a été reléguée au second plan au profit d’autres fonctionnalités.

« Démanteler une infrastructure cloud, en particulier lorsque plusieurs produits se trouvent dans un même compte, n’est pas une tâche facile. Il faut parcourir et supprimer de nombreuses ressources spécifiques, dans le bon ordre, afin d’éviter les erreurs et les ralentissements. »

Mais l’IaC permet aux équipes informatiques de transformer les démantèlements en une seule commande. Farin et son équipe citent ici un exemple dans lequel l’équipe pourrait notamment utiliser terraform, pour exécuter la commande « terraform destroy » . Cette commande supprimera toute l’infrastructure concernée par un module donné.

Advertisement

« Cela signifie que, même lorsque plusieurs projets se trouvent dans le même compte cloud, vous pouvez supprimer chirurgicalement vos composants, dans le bon ordre et de manière totalement automatisée », a déclaré Farin. « Cela garantit un démantèlement fluide, tout en vous assurant de ne pas affecter les autres projets dont l’infrastructure peut coexister avec la vôtre. »

Une capacité d’observabilité

Enfin, l’IaC permet d’atteindre un niveau supérieur d’observabilité, et donc d’améliorer le contrôle de la surveillance et de la gestion des systèmes et de l’infrastructure.

« Lorsque votre infrastructure est exécutée sous forme de code, vous devez pouvoir déclarer vos règles d’observabilité dans ce code, a déclaré Farin. « Cela vous permettra non seulement de décrire le fonctionnement du système, mais aussi la manière dont il est surveillé.

« Intégrer les règles opérationnelles dans votre code est un mécanisme extrêmement puissant pour faire évoluer et gérer votre infrastructure. »

L’avenir de l’infrastructure as code s’annonce indéniablement prometteur. Cette approche des couches de base des réseaux bénéficie de nombreuses opinions favorables et, puisqu’il est beaucoup plus simple de rechercher les erreurs de configuration du cloud, l’IaC offre également un contrôle de sécurité convaincant.

Pour les raisons présentées ici et bien d’autres facteurs, l’IaC devrait probablement continuer à s’imposer comme une solution d’infrastructure attrayante pour les entreprises grandes et en pleine croissance. 

À lire ensuite : Concilier l’ingénierie de fiabilité des services (SRE) et le DevOps

Adrian Bridgwater

Adrian Bridgwater is a technology journalist with three decades of press experience. Primarily he works as a news analysis writer dedicated to a software application development ‘beat’; but, in a fluid media world, he is also an analyst, technology evangelist, and content consultant. As the previously narrow discipline of programming now extends across a wider transept of the enterprise IT landscape, his own editorial purview has also broadened. He has spent much of the last 10 years also focusing on open source, data analytics and intelligence, cloud computing, mobile devices, and data management.

Enterprise Networking Planet Logo

Enterprise Networking Planet aims to educate and assist IT administrators in building strong network infrastructures for their enterprise companies. Enterprise Networking Planet contributors write about relevant and useful topics on the cutting edge of enterprise networking based on years of personal experience in the field.

Propriété de TechnologyAdvice. © 2026 TechnologyAdvice. Tous droits réservés

Divulgation publicitaire : Certains des produits qui apparaissent sur ce site proviennent d'entreprises dont TechnologyAdvice reçoit une compensation. Cette compensation peut influencer la façon dont les produits apparaissent sur ce site, notamment l'ordre dans lequel ils apparaissent. TechnologyAdvice n'inclut pas toutes les entreprises ou tous les types de produits disponibles sur le marché.