Détecter et atténuer les problèmes potentiels à l’aide d’AIOps et du Machine Learning dans Azure Monitor

L’intelligence artificielle pour les opérations informatiques (AIOps) offre des moyens puissants d’améliorer la qualité et la fiabilité des services en utilisant le Machine Learning pour traiter et agir automatiquement sur les données que vous collectez à partir d’applications, de services et de ressources informatiques dans Azure Monitor.

Les fonctionnalités intégrées AIOps d’Azure Monitor fournissent des insights, vous aident à résoudre des problèmes et automatisent les tâches pilotées par les données, telles que la prédiction de l’utilisation de la capacité et la mise à l’échelle automatique, l’identification et l’analyse des problèmes de performances des applications et la détection de comportements anormaux dans les machines virtuelles, les conteneurs et d’autres ressources. Ces fonctionnalités renforcent votre supervision et vos opérations informatiques, sans nécessiter de connaissances en Machine Learning et d’investissements supplémentaires.

Azure Monitor fournit également des outils qui vous permettent de créer votre propre pipeline Machine Learning pour introduire de nouvelles fonctionnalités d’analyse et de réponse et agir sur les données dans les journaux Azure Monitor.

Cet article décrit les fonctionnalités AIOps intégrées d’Azure Monitor et explique comment créer et exécuter des modèles Machine Learning personnalisés et créer un pipeline de Machine Learning automatisé sur des données dans les journaux Azure Monitor.

Fonctionnalités intégrées d’Azure Monitor AIOps et du Machine Learning

Scénario de surveillance Fonctionnalité Description
Surveillance des journaux Insights d’espace de travail Log Analytics Fournit une vue unifiée de vos espaces de travail Log Analytics et utilise le Machine Learning pour détecter les anomalies de l’ingestion.
Langage de requête Kusto fonctions d’analyse de séries chronologiques et de Machine Learning (KQL) Outils faciles à utiliser pour générer des données de série chronologique, détecter les anomalies, prévoir et effectuer une analyse des causes premières directement dans les journaux Azure Monitor sans avoir besoin de connaissances approfondies de la science des données et des langages de programmation.
Microsoft Copilot dans Azure Vous aide à utiliser Log Analytics pour l’analyse des données et la résolution des problèmes. Génère des exemples de requêtes KQL basées sur des invites, telles que « Existe-t-il des erreurs dans les journaux de conteneur ? ».
Analyse des performances des applications Vue intelligente de la carte d’application Elle cartographie les dépendances entre les services et vous aide à identifier les baisses de performances ou les défaillances sur l’ensemble des composants de votre application distribuée.
Détection intelligente Analyse les données de télémétrie que votre application envoie à Application Insights, les alertes sur les problèmes de performances et les anomalies de défaillance, et identifie les causes racines potentielles des problèmes de performances de l’application.
Alertes de métrique Seuils dynamiques pour les alertes d’indicateurs de performance Apprend les modèles d’indicateurs de performance, définit automatiquement des seuils d’alerte en fonction des données historiques et identifie les anomalies susceptibles d’indiquer des problèmes de service.
Groupes identiques de machines virtuelles Mise à l’échelle automatique prédictive Prévoit les besoins globaux en UC d’un groupe de machines virtuelles identiques, en fonction des modèles d’utilisation historique du processeur, et effectue automatiquement un scale-out pour répondre à ces besoins.

Machine Learning dans des journaux Azure Monitor

Utilisez les fonctions intégrées d’analyse de série chronologique et d’apprentissage automatique, les opérateurs et les plug-ins du Langage de requête Kusto pour obtenir des informations sur l’intégrité du service, l’utilisation, la capacité et d’autres tendances, et pour générer des prévisions et détecter des anomalies dans les journaux Azure Monitor.

Pour gagner en flexibilité et développer votre capacité à analyser et à agir sur les données, vous pouvez également implémenter votre propre pipeline Machine Learning sur les données dans les journaux Azure Monitor.

Ce tableau compare les avantages et les limitations de l’utilisation des fonctionnalités de Machine Learning intégrées de KQL et de la création de votre propre pipeline Machine Learning, ainsi que des liens vers des tutoriels qui montrent comment implémenter chacun d’eux :

Capacités de Machine Learning de langage de requête Kusto intégrées Créez votre propre pipeline Machine Learning
Scénario ✅ Détection des anomalies, cause racine et analyse des séries chronologiques
✅ Détection des anomalies, cause racine et analyse des séries chronologiques
Analyses avancées et scénarios AIOPs
Avantages 🔹Vous démarrez très rapidement.
🔹Aucune connaissance et compétence en programmation en science des données n’est requise.
🔹 Performances optimales et économies de coûts.
🔹Prend en charge des échelles plus grandes.
🔹Active des scénarios avancés et plus complexes.
🔹Flexibilité dans le choix des bibliothèques, des modèles et des paramètres.
Limites de service et volumes de données Portail Azure ou les limites de requête du journal de l’API selon que vous travaillez dans le portail ou utilisez l’API, par exemple, à partir d’un bloc-notes. 🔹Limites de requête des journaux d’API si vous interrogez des données dans les journaux Azure Monitor dans le cadre de votre pipeline Machine Learning. Sinon, aucune limite de service Azure.
🔹Peut prendre en charge des volumes de données plus importants.
Intégration Aucune action requise. Exécutez à l’aide de Log Analytics dans le Portail Azure ou à partir d’un Jupyter Notebook intégré. Nécessite l’intégration à un outil, tel que Jupyter Notebook. En règle générale, vous devez également intégrer d’autres services Azure, comme Azure Synapse Analytics.
Performances Performances optimales, à l’aide de la plateforme Azure Data Explorer, s’exécutant à grande échelle de manière distribuée. Introduit une faible latence lors de l’interrogation ou de l’exportation de données, en fonction de la façon dont vous implémentez votre pipeline Machine Learning.
Type de modèle Modèle de régression linéaire et autres modèles pris en charge par les fonctions de série chronologique KQL avec un ensemble de paramètres configurables. Modèle Machine Learning entièrement personnalisable ou méthode de détection des anomalies.
Coût Aucun coût supplémentaire. Selon la façon dont vous implémentez votre pipeline Machine Learning, vous risquez d’entraîner des frais pour l’exportation de données, l’ingestion de données notées dans les journaux Azure Monitor et l’utilisation d’autres services Azure.
Didacticiel Détecter et analyser des anomalies à l’aide des fonctionnalités de Machine Learning KQL dans Azure Monitor Analyser les données dans les journaux Azure Monitor au moyen d’un notebook

Créer votre propre pipeline Machine Learning sur les données dans les journaux Azure Monitor

Créez votre propre pipeline Machine Learning sur des données dans les journaux Azure Monitor pour introduire de nouvelles fonctionnalités AIOps et prendre en charge des scénarios avancés, tels que :

  • Recherche d’attaques de sécurité avec des modèles plus sophistiqués que ceux de KQL.
  • Détection des problèmes de performances et résolution des erreurs dans une application web.
  • Création de flux à plusieurs étapes, exécution de code à chaque étape en fonction des résultats de l’étape précédente.
  • Automatisation de l’analyse des données de journal Azure Monitor et fourniture d’informations sur plusieurs domaines, notamment l’intégrité de l’infrastructure et le comportement des clients.
  • Corrélation des données dans les journaux Azure Monitor avec des données provenant d’autres sources.

Il existe deux approches pour rendre les données dans les journaux Azure Monitor disponibles pour votre pipeline Machine Learning :

Ce tableau compare les avantages et les limitations des approches de récupération des données pour votre pipeline Machine Learning :

Interroger les données dans les journaux Azure Monitor Exporter des données
Avantages 🔹Vous permet de démarrer rapidement.
🔹Nécessite uniquement des compétences de base en science des données et en programmation.
🔹Latence minimale et économies de coûts.
🔹Prend en charge des échelles plus grandes.
🔹Pas de limitations des requêtes.
Données exportées? Non Oui
Limites du service Limites des requêtes de journal d’API de requête et limitation des requêtes utilisateur. Vous pouvez surmonter les limites de l’API de requête à, dans une certaine mesure, en fractionnant des requêtes plus volumineuses en blocs. Aucun d’Azure Monitor.
Des volumes de données Analysez plusieurs Go de données, ou quelques millions d’enregistrements par heure. Prise en charge de gros volumes de données.
Bibliothèque de machine learning Pour les jeux de données de petite à moyenne taille, vous utilisez généralement des bibliothèques Machine Learning à nœud unique, comme Scikit Learn. Pour les jeux de données volumineux, vous utilisez généralement des bibliothèques de Machine Learning Big Data, comme SynapseML.
Latence Minimal. Introduit une faible latence dans l’exportation des données.
Coût Aucun frais supplémentaire dans Azure Monitor.
Coût de Azure Synapse Analytics, d’Azure Machine Learning ou d’un autre service, s’il est utilisé.
Coût de l’exportation des données et du stockage externe.
Coût de Azure Synapse Analytics, d’Azure Machine Learning ou d’un autre service, s’il est utilisé.

Conseil

Pour tirer parti du meilleur des deux approches d’implémentation, créez un pipeline hybride. Une approche hybride courante consiste à exporter des données pour l’apprentissage du modèle, qui implique de grands volumes de données, et à utiliser les données de requête dans l’approche des journaux Azure Monitor pour explorer les données et noter les nouvelles données afin de réduire la latence et les coûts.

Implémenter les étapes du cycle de vie du Machine Learning dans les journaux Azure Monitor

La configuration d’un pipeline Machine Learning implique généralement tout ou partie des étapes décrites ci-dessous.

Il existe différentes bibliothèques d’apprentissage automatique Azure et open source que vous pouvez utiliser pour implémenter votre pipeline Machine Learning, notamment Scikit Learn, PyTorch, Tensorflow, Spark MLlib et SynapseML.

Ce tableau décrit chaque étape et fournit des conseils généraux et quelques exemples de la façon d’implémenter ces étapes en fonction des approches d’implémentation décrites dans Créer votre propre pipeline Machine Learning sur des données dans les journaux Azure Monitor :

Étape Description Interroger les données dans les journaux Azure Monitor Exporter des données
Explorer des données Examinez et comprenez les données que vous avez collectées. Le moyen le plus simple d’explorer vos données consiste à utiliser Log Analytics, qui fournit un ensemble complet d’outils permettant d’explorer et de visualiser les données dans le Portail Azure. Vous pouvez également analyser les données dans les journaux Azure Monitor au moyen d’un notebook. Pour analyser les journaux en dehors d’Azure Monitor, exportez des données hors de votre espace de travail Log Analytics et configurez l’environnement dans le service de votre choix.
Pour obtenir un exemple d’exploration des journaux en dehors d’Azure Monitor, consultez Analyser les données exportées à partir de Log Analytics à l’aide de Synapse.
Créer et entraîner un modèle Machine Learning La formation de modèle est un processus itératif. Les chercheurs ou les scientifiques des données développent un modèle en extrayant et en nettoyant les données d’entraînement, les fonctionnalités d’ingénierie, en essayant différents modèles et en paramétrant les paramètres, et en répétant ce cycle jusqu’à ce que le modèle soit précis et robuste. Pour les jeux de données de petite ou moyenne taille, vous utilisez généralement des bibliothèques Machine Learning à nœud unique, comme Scikit Learn.
Pour obtenir un exemple de formation d’un modèle Machine Learning sur des données dans les journaux Azure Monitor à l’aide de la bibliothèque Scikit Learn, consultez cet exemple de notebook : Détecter des anomalies dans les journaux Azure Monitor à l’aide de techniques d’apprentissage automatique.
Pour les jeux de données volumineux, vous utilisez généralement des bibliothèques de Machine Learning Big Data, comme SynapseML.
Déployer et scorer un modèle Le scoring est le processus d’application d’un modèle Machine Learning sur de nouvelles données pour obtenir des prédictions. Le scoring doit généralement être effectué à grande échelle avec une latence minimale. Pour interroger de nouvelles données dans les journaux Azure Monitor, utilisez la bibliothèque cliente de requête Azure Monitor.
Pour obtenir un exemple montrant comment noter des données à l’aide de open source outils, consultez cet exemple de notebook : Détecter des anomalies dans les journaux Azure Monitor à l’aide de techniques d’apprentissage automatique.
Exécuter votre pipeline comme prévu Automatisez votre pipeline pour réentraîner votre modèle régulièrement sur les données actuelles. Planifiez votre pipeline Machine Learning avec Azure Synapse Analytics ou Azure Machine Learning. Consultez les exemples de la colonne Données de requête dans les journaux Azure Monitor .

L’ingestion de résultats notés dans un espace de travail Log Analytics vous permet d’utiliser les données pour obtenir des insights avancés et de créer des alertes et des tableaux de bord. Pour obtenir un exemple montrant comment ingérer des résultats notés à l’aide de la bibliothèque cliente d’ingestion Azure Monitor, consultez Ingestion d’anomalies dans une table personnalisée dans votre espace de travail Log Analytics.

Étapes suivantes

Pour en savoir plus :