DevOps : 4 tendances qui émergent face à la crise du Covid-19 ?

Dans un monde qui doit se repenser, les tendances du DevOps devraient se renforcer, boostées par la recherche d'agilité.

La crise sanitaire actuelle va profondément altérer de nombreux secteurs et industries. Dans un monde qui doit se repenser, les tendances du DevOps devraient se renforcer, boostées par la recherche d’agilité. En premier lieu, la capacité des entreprises à fournir des services hébergés dans le cloud, à très grande échelle, continuera de s’imposer comme l’une des principales tendances de la décennie. Plus spécifiquement, voici, selon moi, les 4 tendances du moment. 

1. Site Reliability Engineering

De plus en plus d’entreprises utilisent le cloud pour héberger leurs services. Comment font-elles pour gérer leurs bases de données utilisateurs à travers le monde sans avoir d’équipe de déploiement disponible 24/24h et 7/7jours ?  Dans une logique de performance  et au regard des technologies exploitées par les géants que sont Google, Netflix et Spotify, les entreprises se tournent vers le "site reliability engineering (SRE)" pour trouver des solutions.

Le principe du SRE est de concilier compétences en développement et responsabilités en terme de déploiement. Un mariage réussi se traduira par la possibilité d'accroître sensiblement les capacités d’un service tout en conservant un effectif humain constant pour maintenir un même niveau de service. Pour y parvenir, le SRE ne compte plus sur les efforts manuels  mais sur le développement logiciel et l’automatisation pour garantir la continuité de service.

Si un arrêt de service survient, comme pour une boîte noire, le SRE utilise les datas pour procéder à une analyse post-mortem d’incident. Il examine en profondeur ce qui s’est passé avant, pendant et après l’incident critique pour identifier les réparations à mettre en place afin de réduire le risque de récurrence. Le SRE cherche donc à tirer les leçons des erreurs, en intégrant à ses services les enseignements des pannes, sous forme d'améliorations logicielles. Empruntées aux secteurs de la santé et de l’aérospatiale, les techniques post-mortem considèrent les pannes comme une occasion d’apprendre grâce à une analyse précise de chaque incident.

Ce modèle de gestion opérationnelle est intéressant pour les entreprises qui cherchent à avoir une portée internationale. De plus en plus, les experts du SRE intègrent les équipes d'ingénierie ou travaillent en parallèle de celles-ci. Organisées selon le modèle DevOps, les équipes d’ingénierie deviennent responsables de la disponibilité de leur service, et non sont plus perçues comme une équipe de déploiement externe.

Dans ce secteur encore émergent, trouver la forme de SRE qui convient à la taille et à la culture spécifique d’une entreprise sera un vrai défi.  Ce qui marche pour un groupe comme Google ne fonctionnera peut-être pas pour une autre entreprise. Le rôle du SRE et sa place au sein d'une entreprise restent encore à définir. Toutefois, une chose est sûre : le SRE va avoir une importance critique pour les entreprises dans les années à venir et cela se ressent déjà sur le marché de l'emploi.

2. L’adoption de Kubernetes

En 2019, la communauté des développeurs et moi-même prévoyions  une adoption croissante de Kubernetes, soutenue par le développement des micro-services. Au cours de l'année écoulée, ces prévisions se sont avérées justes et tout indique que son adoption va continuer de croître.

Un signe qui ne trompe pas, c’est la part grandissante des logiciels conçus avec Kubernetes. De plus en plus, les entreprises développent nativement leurs logiciels avec Kubernetes. Dans le passé, Linux était la référence pour développer un logiciel open source ; aujourd’hui Kubernetes devient LA plateforme phare pour le développement.

Un des moteurs de cette tendance est la maturité du support de la plateforme, quel que soit le type de travail. D'un côté, on parle de plus en plus de travail sans serveur à l'aide de Knative - un grand sujet de discussion au  KubeCon de cette année - et de l'autre, l'utilisation d'opérateurs permet aux fournisseurs de service de proposer facilement leurs logiciels sur la plateforme. Ce nouveau marché permet aux fournisseurs de service et aux consommateurs d’utiliser des conteneurs d’applications et de les mettre en production.

La croissance sera soutenue par l'intérêt des entreprises pour les plateformes commerciales qui réduisent l’effort d’exploitation comme Kubernetes. Les distributeurs sont de plus en plus matures et offrent une meilleure expérience aux développeurs: autrement dit un cycle de production plus court et une maintenance de leur IT plus facile. Cette année, il y a de bonnes chances pour que l’ensemble de l’industrie coordonne les clusters de serveurs Kubernetes et le déploiement de solutions multicloud. Au regard de la communauté Kubernetes, déjà importante et en pleine croissance, nous devrions également assister à une augmentation de la vitesse et du volume des sorties.

3 - Les service mesh

L'adoption des micro-services présente de nombreux avantages pour les entreprises. Les développeurs les utilisent, par exemple, pour créer des architectures de portabilité. Cependant, il est indéniable que leur adoption met à rude épreuve les équipes DevOps qui gèrent des déploiements hybrides et multicloud de grande envergure. L'essor des micro-services a entraîné un boom parallèle des services mesh promettant de réduire la complexité de ces déploiements.

Un service mesh offre la possibilité d'observer et de contrôler un réseau de micro-services et ses interactions. Il fournit une vue d'ensemble de votre service et aide les équipes DevOps et SRE qui ont à répondre à des exigences opérationnelles complexes, comme les A/B testing, les canary rollouts, le contrôle d'accès et l'authentification end-to-end.

Je prévois une augmentation du nombre d'offres et de leur adoption car elles deviennent un facteur clef du succès de l'exploitation des micro-services. Si une entreprise est sur le point de passer d’un logiciel monolithe aux micro-services, elle va bientôt croiser le chemin des service mesh.

4 - AIOps

Le secteur de l’IT doit faire face à un défi majeur : surveiller et réagir à des quantités toujours plus importantes de télémesures et d'alertes au sein de systèmes complexes et intelligents. Même s’ils ne sont pas en mesure d’observer directement ces systèmes, les ingénieurs et les opérationnels veulent pourtant savoir et comprendre ce que font leurs systèmes à tout moment, au cas où les choses tourneraient mal. Il devient alors primordial de déterminer la gravité de l’incident et rétablir rapidement le service. L'adoption du DevOps et du SRE favorise l'amélioration continue du processus de réponse aux incidents. C'est pourquoi l'utilisation de l'IA et du machine learning pour améliorer le temps de détection et de migration des incidents suscite un grand intérêt.

Si on devait faire une analogie, un outil de surveillance qui fait remonter une alerte, c’est comme un détecteur de fumée. Mais si les alertes surviennent en masse de plusieurs outils de surveillance, il devient impossible de déchiffrer manuellement d’où elles viennent. Pour comprendre ce qui se passe réellement, il faut corréler les anomalies et les alertes dans plusieurs systèmes.

AIOps,  l'utilisation du machine learning et de l'IA, permet d’analyser les métriques, les logs, le traçage et les alertes de manière holistique et prévoir où et quand les incidents sont susceptibles de se produire. Je prévois un déploiement important de plateformes dédiées à l’AIOps et à ses fonctionnalités au sein d’outils déjà existants, qui offriront la possibilité de prendre des décisions rapides, précises et informées.