Обнаружение и устранение потенциальных проблем с помощью 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 на основе запросов, таких как "Есть ли ошибки в журналах контейнеров?". | |
Мониторинг производительности приложения | Интеллектуальное представление карты приложений | Сопоставляет зависимости между службами и помогает обнаружить узкие места производительности или горячие точки сбоя во всех компонентах распределенного приложения. |
Интеллектуальное обнаружение | Анализирует данные телеметрии, которые приложение отправляет в Application Insights, оповещения о проблемах с производительностью и аномалиях сбоев, а также определяет потенциальные первопричины проблем с производительностью приложения. | |
Оповещения метрики | Динамические пороговые значения для оповещений метрик | Сведения о шаблонах метрик, автоматическое определение пороговых значений оповещений на основе исторических данных и определение аномалий, которые могут указывать на проблемы со службой. |
Масштабируемые наборы виртуальных машин | Прогнозное автомасштабирование | Прогнозирует общие требования ЦП масштабируемого набора виртуальных машин на основе исторических шаблонов использования ЦП и автоматически масштабируется в соответствии с этими потребностями. |
Машинное обучение в журналах 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 Data Explorer, выполняющаяся в больших масштабах в распределенном режиме. | Представляет небольшую задержку при запросе или экспорте данных в зависимости от способа реализации конвейера машинного обучения. |
Тип модели | Модель линейной регрессии и другие модели, поддерживаемые функциями временных рядов KQL с набором настраиваемых параметров. | Полностью настраиваемая модель машинного обучения или метод обнаружения аномалий. |
Стоимость | Без дополнительных затрат. | В зависимости от того, как вы реализуете конвейер машинного обучения, вы можете взимать плату за экспорт данных, прием оцененных данных в журналы Azure Monitor и использование других служб Azure. |
Руководство | Обнаружение и анализ аномалий с помощью возможностей машинного обучения KQL в Azure Monitor | Анализ данных в журналах Azure Monitor с помощью записной книжки |
Создание собственного конвейера машинного обучения для данных в журналах Azure Monitor
Создайте собственный конвейер машинного обучения на основе данных в журналах Azure Monitor для внедрения новых возможностей AIOps и поддержки расширенных сценариев, таких как:
- Поиск атак безопасности с более сложными моделями, чем KQL.
- Обнаружение проблем с производительностью и устранение ошибок в веб-приложении.
- Создание многофакторных потоков, выполнение кода на каждом шаге на основе результатов предыдущего шага.
- Автоматизация анализа данных журнала Azure Monitor и предоставление аналитических сведений о нескольких областях, включая работоспособность инфраструктуры и поведение клиентов.
- Сопоставление данных в журналах Azure Monitor с данными из других источников.
Существует два подхода к созданию данных в журналах Azure Monitor для конвейера машинного обучения:
Запрос данных в журналах - Azure Monitor интегрирует записную книжку с журналами Azure Monitor или запускает скрипт или приложение для данных журнала с помощью библиотек, таких как клиентская библиотека запросов Azure Monitor или MSTICPY для получения данных из журналов Azure Monitor в табличной форме, например в кадр данных Pandas. Запрашиваемые данные извлекаются в объект в памяти на сервере, не экспортируя данные из рабочей области Log Analytics.
Примечание.
Возможно, вам потребуется преобразовать форматы данных в рамках конвейера. Например, чтобы использовать библиотеки, созданные на основе Apache Spark, например SynapseML, может потребоваться преобразовать Pandas в PySpark DataFrame.
Экспортируйте данные из журналов Azure Monitor из рабочей области Log Analytics - , как правило, в учетную запись хранения BLOB-объектов и реализуйте конвейер машинного обучения с помощью библиотеки машинного обучения.
В этой таблице сравниваются преимущества и ограничения подходов к получению данных для конвейера машинного обучения:
Запрос данных в журналах 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.
Следующие шаги
Дополнительные сведения:
- Журналы Azure Monitor.
- Аналитика Azure Monitor и проверенные визуализации.