Обнаружение и устранение потенциальных проблем с помощью AIOps и машинного обучения в Azure Monitor

Искусственный интеллект для ИТ-операций (AIOps) предлагает эффективные способы повышения качества обслуживания и надежности с помощью машинного обучения для обработки и автоматического использования данных, собранных из приложений, служб и ИТ-ресурсов в Azure Monitor.

Встроенные возможности AIOps Azure Monitor предоставляют аналитические сведения и помогают устранять неполадки и автоматизировать задачи, управляемые данными, такие как прогнозирование использования емкости и автомасштабирование, определение и анализ проблем с производительностью приложений, а также обнаружение аномалий в виртуальных машинах, контейнерах и других ресурсах. Эти функции повышают эффективность ИТ-мониторинга и операций, не требуя знаний машинного обучения и дальнейших инвестиций.

Azure Monitor также предоставляет средства, которые позволяют создавать собственный конвейер машинного обучения для внедрения новых возможностей анализа и реагирования на данные в журналах Azure Monitor.

В этой статье описаны встроенные возможности AIOps в Azure Monitor и объясняется, как создавать и запускать настраиваемые модели машинного обучения и создавать конвейер автоматизированного машинного обучения на основе данных в журналах Azure Monitor.

Встроенные возможности Azure Monitor AIOps и машинного обучения

Сценарий мониторинга Возможность Description
Мониторинг журналов Аналитика рабочей области Log Analytics Предоставляет единое представление рабочих областей Log Analytics и использует машинное обучение для обнаружения аномалий приема.
анализ временных рядов язык запросов Kusto (KQL) и функции машинного обучения Средства простого использования для создания данных временных рядов, обнаружения аномалий, прогнозирования и выполнения анализа первопричин непосредственно в журналах Azure Monitor без глубокого знания о языках обработки и программирования.
Microsoft Copilot для Azure Помогает использовать Log Analytics для анализа данных и устранения неполадок. Создает примеры запросов KQL на основе запросов, таких как "Есть ли ошибки в журналах контейнеров?".
Мониторинг производительности приложения Интеллектуальное представление карты приложений Карты зависимости между службами и помогает обнаружить узкие места производительности или горячие точки сбоя во всех компонентах распределенного приложения.
Интеллектуальное обнаружение Анализирует данные телеметрии, которые приложение отправляет в приложение Аналитика, оповещения о проблемах производительности и аномалиях сбоев и определяют потенциальные первопричины проблем с производительностью приложения.
Оповещения метрики Динамические пороговые значения для оповещений метрик Сведения о шаблонах метрик, автоматическое определение пороговых значений оповещений на основе исторических данных и определение аномалий, которые могут указывать на проблемы со службой.
Масштабируемые наборы виртуальных машин Прогнозное автомасштабирование Прогнозирует общие требования ЦП масштабируемого набора виртуальных машин на основе исторических шаблонов использования ЦП и автоматически масштабируется в соответствии с этими потребностями.

Машинное обучение в журналах Azure Monitor

Используйте встроенные функции анализа временных рядов язык запросов Kusto и функции машинного обучения, операторы и подключаемые модули для получения аналитических сведений о работоспособности служб, использовании, емкости и других тенденциях, а также для создания прогнозов и обнаружения аномалий в журналах Azure Monitor.

Чтобы повысить гибкость и расширить возможность анализа и действия с данными, вы также можете реализовать собственный конвейер машинного обучения для данных в журналах Azure Monitor.

В этой таблице сравниваются преимущества и ограничения использования встроенных возможностей машинного обучения KQL и создания собственного конвейера машинного обучения, а также ссылки на руководства, демонстрирующие реализацию каждого из них:

Встроенные возможности машинного обучения KQL Создание собственного конвейера машинного обучения
Сценарий ✅ Обнаружение аномалий, первопричина и анализ временных рядов
✅ Обнаружение аномалий, первопричина и анализ временных рядов
Расширенные сценарии анализа и AIOPs
Преимущества 🔹Приступить к работе очень быстро.
🔹Знания и навыки программирования для обработки и анализа данных не требуются.
🔹 Оптимальная производительность и экономия затрат.
🔹Поддерживает более крупные масштабы.
🔹Включает расширенные, более сложные сценарии.
🔹Гибкость при выборе библиотек, моделей, параметров.
Ограничения служб и тома данных портал Azure или ограничения запросов к журналам API в зависимости от того, работаете ли вы на портале или используете API, например из записной книжки. 🔹Ограничения запросов к журналам API при запросе данных в журналах Azure Monitor в рамках конвейера машинного обучения. В противном случае ограничения службы Azure отсутствуют.
🔹Может поддерживать большие объемы данных.
Интеграция Не требуются. Запустите с помощью Log Analytics в портал Azure или из интегрированной записной книжки Jupyter. Требуется интеграция с инструментом, например Jupyter Notebook. Как правило, вы также интегрирулись с другими службами Azure, такими как Azure Synapse Analytics.
Производительность Оптимальная производительность с помощью платформы Обозреватель данных Azure, выполняющаяся в больших масштабах в распределенном режиме. Представляет небольшую задержку при запросе или экспорте данных в зависимости от способа реализации конвейера машинного обучения.
Тип модели Модель линейной регрессии и другие модели, поддерживаемые функциями временных рядов KQL с набором настраиваемых параметров. Полностью настраиваемая модель машинного обучения или метод обнаружения аномалий.
Стоимость Без дополнительных затрат. В зависимости от того, как вы реализуете конвейер машинного обучения, вы можете взимать плату за экспорт данных, прием оцененных данных в журналы Azure Monitor и использование других служб Azure.
Руководство Обнаружение и анализ аномалий с помощью возможностей машинного обучения KQL в Azure Monitor Анализ данных в журналах Azure Monitor с помощью записной книжки

Создание собственного конвейера машинного обучения для данных в журналах Azure Monitor

Создайте собственный конвейер машинного обучения на основе данных в журналах Azure Monitor для внедрения новых возможностей AIOps и поддержки расширенных сценариев, таких как:

  • Поиск атак безопасности с более сложными моделями, чем KQL.
  • Обнаружение проблем с производительностью и устранение ошибок в веб-приложении.
  • Создание многофакторных потоков, выполнение кода на каждом шаге на основе результатов предыдущего шага.
  • Автоматизация анализа данных журнала Azure Monitor и предоставление аналитических сведений о нескольких областях, включая работоспособность инфраструктуры и поведение клиентов.
  • Сопоставление данных в журналах Azure Monitor с данными из других источников.

Существует два подхода к созданию данных в журналах Azure Monitor для конвейера машинного обучения:

В этой таблице сравниваются преимущества и ограничения подходов к получению данных для конвейера машинного обучения:

Запрос данных в журналах Azure Monitor Экспорт данных
Преимущества 🔹Быстро приступить к работе.
🔹Требуется только базовые навыки обработки и программирования.
🔹Минимальная задержка и экономия затрат.
🔹Поддерживает более крупные масштабы.
🔹Ограничения запросов отсутствуют.
Экспортируемые данные? No Да
Ограничения службы Ограничениязапросов журнала запросов API запросов и регулирование запросов пользователей. Вы можете преодолеть ограничения API запросов до определенной степени, разделив большие запросы на блоки. Ни один из Azure Monitor.
Тома данных Анализ нескольких ГБИТ-объектов данных или несколько миллионов записей в час. Поддерживает большие объемы данных.
Библиотека машинного обучения Для небольших и средних наборов данных обычно используются библиотеки машинного обучения с одним узлом, такие как Scikit Learn. Для больших наборов данных обычно используются библиотеки машинного обучения больших данных, такие как SynapseML.
Задержка Минимальный размер. Представляет небольшую задержку при экспорте данных.
Стоимость Дополнительные расходы в Azure Monitor не взимается.
При использовании стоимость Azure Synapse Analytics, Машинное обучение Azure или другой службы.
Стоимость экспорта данных и внешнего хранилища.
При использовании стоимость Azure Synapse Analytics, Машинное обучение Azure или другой службы.

Совет

Чтобы воспользоваться преимуществами обоих подходов к реализации, создайте гибридный конвейер. Распространенный гибридный подход заключается в экспорте данных для обучения модели, которая включает большие объемы данных, а также использовать данные запроса в журналах Azure Monitor для изучения данных и оценки новых данных для снижения задержки и затрат.

Реализация шагов жизненного цикла машинного обучения в журналах Azure Monitor

Настройка конвейера машинного обучения обычно включает все или некоторые шаги, описанные ниже.

Существуют различные библиотеки машинного обучения Azure и открытый код, которые можно использовать для реализации конвейера машинного обучения, включая Scikit Learn, PyTorch, Tensorflow, Spark MLlib и SynapseML.

Эта таблица описывает каждый шаг и предоставляет общие рекомендации и некоторые примеры реализации этих действий на основе подходов реализации, описанных в статье "Создание собственного конвейера машинного обучения для данных в журналах Azure Monitor".

Этап Description Запрос данных в журналах Azure Monitor Экспорт данных
Изучение данных Изучите и изучите собранные данные. Самый простой способ изучения данных — использовать Log Analytics, который предоставляет широкий набор средств для изучения и визуализации данных в портал Azure. Вы также можете анализировать данные в журналах Azure Monitor с помощью записной книжки. Чтобы проанализировать журналы за пределами Azure Monitor, экспортируйте данные из рабочей области Log Analytics и настройте среду в выбранной службе.
Пример изучения журналов за пределами Azure Monitor см. в статье "Анализ данных, экспортированных из Log Analytics с помощью Synapse".
Создание и обучение модели машинного обучения Обучение модели — это итеративный процесс. Исследователи или специалисты по обработке и анализу данных разрабатывают модель, извлекая и очищая обучающие данные, функции инженера, пробуя различные модели и параметры настройки, и повторяя этот цикл, пока модель не будет точной и надежной. Для небольших и средних наборов данных обычно используются библиотеки машинного обучения с одним узлом, такие как Scikit Learn.
Пример обучения модели машинного обучения для данных в журналах Azure Monitor с помощью библиотеки Scikit Learn см. в этом примере записной книжки: обнаружение аномалий в журналах Azure Monitor с помощью методов машинного обучения.
Для больших наборов данных обычно используются библиотеки машинного обучения больших данных, такие как SynapseML.
Развертывание и оценка модели Оценка — это процесс применения модели машинного обучения к новым данным для получения прогнозов. Оценка обычно должна выполняться в масштабе с минимальной задержкой. Чтобы запросить новые данные в журналах Azure Monitor, используйте клиентская библиотека запросов Azure Monitor.
Пример оценки данных с помощью средств открытый код см. в этом примере записной книжки: обнаружение аномалий в журналах Azure Monitor с помощью методов машинного обучения.
Запуск конвейера по расписанию Автоматизируйте конвейер для регулярного обучения модели в текущих данных. Запланируйте конвейер машинного обучения с помощью Azure Synapse Analytics или Машинное обучение Azure. Ознакомьтесь с примерами данных запроса в столбце журналов Azure Monitor.

Прием результатов оценки в рабочую область Log Analytics позволяет использовать данные для получения расширенной аналитики, а также для создания оповещений и панелей мониторинга. Пример приема результатов с помощью клиентской библиотеки Приема Azure Monitor см . в статье "Прием аномалий" в настраиваемую таблицу в рабочей области Log Analytics.

Следующие шаги

См. также: