Présentation
L'AIOps correspond à l'intelligence artificielle (IA) appliquée à l'exploitation informatique. Il s'agit à la fois d'une approche d'exploitation informatique et d'un système logiciel intégré qui utilise la science des données pour faciliter la résolution manuelle des problèmes ainsi que la résolution des systèmes. L'AIOps associe les données du Big Data à l'intelligence artificielle ou à l'apprentissage automatique pour améliorer (ou remplacer en partie) divers processus et tâches en lien avec l'exploitation informatique.
Fonctionnement
Pour que l'IA puisse fonctionner dans le cadre de l'AIOps, elle doit pouvoir s'appuyer sur une base concrète : les données d'exploitation. Il peut s'agir des temps de disponibilité et d'arrêt, de l'utilisation des processus, du trafic réseau, des journaux d'applications ou d'erreurs, des tentatives d'authentification, des alertes de pare-feu, ainsi que des données d'historique. Les opérations de collecte, d'organisation et de nettoyage de ces données sont généralement plus complexes que l'incorporation des algorithmes et des modèles d'apprentissage.
Une fois ces données disponibles, il faut déterminer les objectifs de niveau de service et les indicateurs, puis définir les critères d'intégrité de l'exploitation à l'aide d'indicateurs de mesure traçables, qui deviennent alors la référence du système AIOps. De nombreuses plateformes d'entreprise incluent ou utilisent des outils d'observabilité de l'exploitation : Red Hat® OpenShift® inclut Red Hat OpenShift Observability, Red Hat Enterprise Linux® utilise Red Hat Satellite et Red Hat Ansible® Automation Platform utilise Prometheus et Grafana.
Une fois les critères d'intégrité de l'exploitation définis, l'IA peut être incorporée aux projets de manière extrêmement simple, avec :
- IBM watsonx Code Assistant (inclus dans Ansible® Automation Platform via Ansible Lightspeed with IBM watsonx Code Assistant) et la gamme de produits IBM Quantum, disponible en tant que service pour traiter tous ces ensembles de données ;
- ChatGPT d'OpenAI, un système d'IA générative, via une interface de programmation d'application (API) ;
- l'IA Natural Language de Google en tant que service cloud.
Ces nombreuses possibilités expliquent pourquoi le traitement du langage naturel (NLP), l'IA, l'apprentissage automatique (AA) et l'apprentissage profond font aujourd'hui partie intégrante de notre vocabulaire général.
Avantages et défis
Avantages
- Vitesse de résolution : l'AIOps réduit les temps d'arrêt grâce à la détection des problèmes émergents et à la réponse apportée, avec à la clé une baisse du temps moyen de résolution.
- Autoréparation des systèmes : une infrastructure capable de s'autoréparer peut considérablement améliorer les performances et la disponibilité des systèmes.
- Big Data : avec l'AIOps, il est possible d'organiser, analyser et exploiter les données du Big Data pour en tirer pleinement parti.
- Efficacité et évolutivité : l'utilisation de données issues de modèles d'IA pour identifier les actions et faire évoluer la détection permet d'augmenter l'efficacité des équipes.
- Innovation : l'élimination des tâches répétitives permet aux équipes informatiques de développer et réaliser des projets plus stratégiques et à plus grande valeur ajoutée.
- Simplification : l'approche AIOps peut rationaliser de nombreuses tâches de gestion répétitives des services informatiques.
- Corrélation des données en temps réel et prise de décisions : lorsque le système AIOps inclut un moteur d'automatisation, il est en mesure de réagir automatiquement sur la base de données, ce qui réduit l'intervention et les erreurs humaines ainsi que les interférences.
- Corrélation et prédiction des données à grande échelle : le système AIOps permet d'analyser automatiquement toutes les permutations possibles et ce, de manière bien plus approfondie que ne le permettrait une intervention manuelle.
Défis
- Expertise : le niveau élevé de connaissances requis en matière de science des données représente un frein important à la mise en place de l'AIOps.
- Infrastructure : en l'absence de plateformes et de fonctionnalités standardisées (telles que celles fournies par Red Hat OpenShift et Ansible Automation Platform), il peut s'avérer complexe d'entraîner un système AIOps en fonction d'une infrastructure.
- Délai de rentabilisation : les systèmes AIOps peuvent être difficiles à concevoir, mettre en œuvre, déployer et gérer. En conséquence, le retour sur investissement peut ne pas être immédiat.
- Données : le volume, la qualité et la cohérence des données produites dans le cadre d'une exploitation informatique moderne peuvent submerger les équipes et être difficiles à gérer. Les résultats d'un système AIOps dépendent de la qualité des sources de données.
- Accord collectif : l'application de critères d'intégrité du système et la définition d'objectifs d'exploitation standard requièrent un consensus entre de nombreuses parties qui peut être difficile à obtenir.
- Champ d'action : le nombre d'éléments à prendre en compte peut compliquer la mise en place de l'AIOps. Il est aussi possible que l'environnement soit trop dynamique pour être défini comme référence.
- Taux d'échec : les projets d'IA présentent un taux d'échec très élevé. D'après l'étude AI InfrastructureView d'IDC, 31 % des personnes interrogées utilisent l'IA dans le cadre de la production, mais seulement un tiers d'entre elles en ont réellement tiré parti à l'échelle de l'entreprise.
Cas d'utilisation
Différents types de professionnels peuvent avoir un intérêt à adopter l'AIOps.
- Les équipes d'ingénierie de la fiabilité des sites (SRE) responsables des applications peuvent utiliser l'AIOps pour définir les quatre signaux clés sur lesquels l'IA peut se concentrer : la latence, le taux d'erreurs, le trafic et la saturation.
- Les équipes de développement peuvent utiliser les analyses AIOps pour effectuer leur propre analyse des causes profondes, ou déléguer cette tâche au moteur AIOps qui s'en chargera sans intervention humaine.
- Les responsables métier peuvent utiliser un système AIOps pour surveiller les mêmes signaux clés que les équipes SRE afin de comprendre les performances des applications du point de vue des utilisateurs finaux.
- Les responsables de l'infrastructure peuvent exploiter un système AIOps pour surveiller les environnements informatiques de cloud hybride, multicloud et basés sur des microservices, qu'il s'agisse de plusieurs dizaines de machines virtuelles ou de milliers de clusters, et ainsi simplifier les opérations de maintenance.
Chacun de ces cas d'utilisation illustre la manière dont les systèmes AIOps aident les équipes à détecter les problèmes potentiels et à y faire face. Ces systèmes ne sont cependant pas encore assez performants pour remplacer des administrateurs système expérimentés ou des membres de l'équipe d'exploitation. À l'instar de la plupart des révolutions informatiques, l'AIOps permet de confier nos tâches manuelles à des machines tout en en gardant le contrôle.
Les machines ne remplacent donc pas les humains. Néanmoins, les data scientists et les ingénieurs DevOps devraient profiter de la révolution informatique qui se dessine pour élargir leurs compétences.
- Les compétences en matière de surveillance des performances des applications vont être plus recherchées par les entreprises qui veulent recruter du personnel expérimenté dans le domaine des performances.
- Les compétences en matière d'automatisation vont devenir des atouts pour comprendre, incorporer ou rédiger des scripts d'IA sous-jacents, ainsi que pour transformer une corrélation d'événement et un moteur d'alerte en moteur d'exécution.
- Pour aller plus loin avec l'IA, il peut être intéressant d'explorer un sous-domaine tel que l'IA pour les réseaux (par exemple, SD-WAN, Wi-Fi, etc.).
AIOps et DevOps
L'approche DevOps consiste à apporter en permanence des améliorations mineures et incrémentielles aux applications tout au long de leur cycle de vie. Elle présente cependant un gros point faible : les temps d'arrêt. C'est là que l'AIOps entre en jeu. L'AIOps renforce la culture DevOps par l'ajout de la science des données aux processus de développement et d'exploitation.
L'AIOps ne remplace pas le DevOps, il s'agit plutôt d'une évolution de cette approche. C'est aussi une étape supplémentaire du cycle de transformation numérique. Si les deux approches partagent les mêmes responsabilités, l'objectif de l'AIOps est simplement d'augmenter l'intelligence humaine grâce à un système de pensée mécanisé.
La distinction entre l'AIOps et le DevOps peut être difficile à établir. Cependant, l'AIOps peut compléter avantageusement les processus DevOps, en amont comme en aval :
- en amont, le système AIOps peut consommer d'énormes volumes de données d'infrastructure, ce qui permet à l'équipe d'ingénierie DevOps d'être alertée des problèmes liés à l'environnement de développement intégré (IDE) sous-jacent, voire de les traiter directement ;
- en aval, le système AIOps peut résoudre automatiquement les problèmes informatiques redondants en production, et apprendre simultanément à corriger les nouveaux bogues générés par les versions incrémentielles.
Comme pour le DevOps, il n'existe pas d'outil, de plateforme ni de produit AIOps unique. Les outils disponibles pour développer des capacités DevOps et AIOps sont aussi nombreux et spécifiques que le matériel et les logiciels qui composent les piles informatiques des entreprises. Car chaque solution AIOps que conçoit une équipe doit intégrer, analyser et exploiter tous les éléments qui rendent les environnements de développement et de production de l'entreprise si uniques.
AIOps et Open Source
L'AIOps est très ancré dans le monde de l'Open Source, au niveau de projets en amont et au sein de nombreuses communautés. Parce qu'aucun produit ne constitue à lui seul une solution AIOps complète, de nombreux projets Open Source de développement, d'exploitation, d'IA et d'automatisation peuvent être utilisés pour mettre en place un système AIOps unique. D'autres projets Open Source spécifiques sont aussi développés pour fournir des solutions AIOps à des problèmes de même nature.
Les entreprises publient le code de leurs produits d'IA en aval sous forme de projets en amont :
- Meta, le plus grand conglomérat de réseaux sociaux au monde, a publié le modèle de langage étendu Llama 2 sous forme de projet Open Source.
- Chez Red Hat, nous espérons que le projet Open Source Project Thoth permettra la création de produits renforcés pour les entreprises de la même manière que le projet Project Wisdom a permis de développer le composant Ansible Lightspeed with IBM watsonx Code Assistant pour la solution Ansible Automation Platform.
- Nous contribuons également aux projets AIOps menés par d'autres organisations, notamment le projet AIOps du centre d'excellence pour l'intelligence artificielle (AICoE).
Pourquoi choisir Red Hat ?
Notre plateforme d'automatisation ainsi que les solutions de nos partenaires en matière d'IA peuvent aider votre entreprise à se lancer dans la conception d'un système AIOps stratégique, notamment en associant les capacités d'observabilité de l'IA avec l'architecture orientée événements de notre moteur d'automatisation.
Vous pouvez utiliser le composant Event-Driven Ansible pour exploiter les résultats de votre solution d'IA. Associez notre plateforme d'automatisation aux moteurs d'IA causale de nos partenaires, par exemple ceux fournis par Dynatrace ainsi que d'autres outils d'observabilité modernes. Vous pouvez également utiliser le service Ansible Lightspeed with IBM watsonx Code Assistant pour aider vos équipes de développement et d'exploitation, quel que soit leur niveau de compétences, à rédiger du code valide sur le plan syntaxique à partir de recommandations générées par l'IA.