Поделиться через


Мониторинг событий резервного пула с помощью Azure Log Analytics

Это важно

Для успешного создания резервных пулов и управления ими требуется доступ к связанным ресурсам в подписке. Убедитесь, что правильные разрешения назначены поставщику ресурсов резервного пула, чтобы резервный пул правильно функционировал. Подробные инструкции см. в разделе "Настройка разрешений роли для резервных пулов".

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

Доступные метрики и таблицы

Существует две основные таблицы, в которых можно просматривать журналы, связанные с резервным пулом: SVMPoolRequestLog и SVMPoolExecutionLog.

Имя таблицы Описание
SVMPoolRequestLog Содержит журналы для событий, инициированных пользователем, таких как обновления параметров пула.
SVMPoolExecutionLog Содержит журналы для событий, инициированных системой, таких как операции резервного пула, такие как пониженный режим, повторное использование виртуальной машины и повторное заполнение пула.

В приведенных выше таблицах можно запрашивать определенные события, связанные с пулом, как описано ниже:

Имя события Описание
StandbyPoolExhaustedPool Активируется, когда число экземпляров резервного пула достигает нуля и не может создавать больше виртуальных машин, так как максимальная емкость пула меньше или равна количеству экземпляров масштабируемого набора виртуальных машин. Обычно это происходит, если не настроена минимальная емкость готовности.
StandbyPoolReuseSuccess Активируется при успешном перемещении виртуальной машины из резервного пула в масштабируемый набор.
StandbyPoolReuseFailure Активируется, когда масштабируемый набор запрашивает виртуальную машину из резервного пула, но не может предоставить ее, что приводит к созданию новой виртуальной машины напрямую.
StandbyPoolSettingsUpdated Активируется при изменении параметра в ресурсе резервного пула, например при настройке емкости минимальной или максимальной готовности или состояния виртуальной машины.
StandbyPoolMaxReadyPool Активируется, когда количество экземпляров в резервном пуле достаточно пополнено для достижения максимальной готовой емкости, установленной клиентом.
StandbyPoolDegradedPool Активируется, когда экземпляры в резервном пуле не могут успешно подготовить запрошенные ресурсы, что вызывает режим пониженной производительности пула в течение 30 секунд.
StandbyPoolExitDegradedPool Активируется, когда истекает тайм-аут в режиме сниженной производительности, и пул снова пытается создать ресурсы.

Настройка Log Analytics для резервных пулов

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

Создайте рабочую область Log Analytics

Перед настройкой мониторинга для резервных пулов убедитесь, что у вас есть рабочая область Log Analytics.

  1. Перейдите на портал Azure.
  2. В строке поиска введите Log Analytics workspace и выберите её из результатов.
  3. Нажмите кнопку + Создать.
  4. Заполните обязательные поля:
    • Подписка: выберите подписку, связанную с рабочей областью.
    • Группа ресурсов: выберите существующую группу ресурсов или создайте новую.
    • Имя. Введите уникальное имя рабочей области.
    • Регион: выберите регион для рабочей области.
  5. Нажмите «Обзор + Создание», затем «Создать», чтобы развернуть рабочую область.

Настройка параметров диагностики для резервных пулов

Чтобы отправить информацию в настроенную рабочую область Log Analytics, настройте параметры diganostic для ресурса резервного пула. После успешной настройки параметров диагностики потребуется около 30 минут, прежде чем логи начнут отображаться в рабочей области Log Analytics. События, произошедшие перед настройкой рабочей области Log Analytics, не будут включены.

Замечание

Включение параметра диагностики для ресурса резервного пула пока недоступно на портале Azure. Включите параметр диагностики, используя альтернативный SDK, такой как PowerShell или CLI.

az monitor diagnostic-settings create \
  --name "standbyPoolLogs" \
  --resource "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.StandbyPool/standbyVirtualMachinePools/{standbyPool}" \
  --workspace "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.OperationalInsights/workspaces/{logAnalyticsWorkspace}" \
  --logs '[{"categoryGroup": "allLogs", "enabled": true}]'

Запрос событий резервного пула

  1. Перейдите на портал Azure.
  2. В верхней строке поиска введите области работы анализа логов и выберите их из результатов.
  3. Выберите рабочую область Log Analytics, настроенную для резервного пула.
  4. В меню рабочей области щелкните "Журналы " в разделе "Общие ", чтобы открыть редактор запросов.

Запрос событий резервного пула

Используйте следующие запросы для анализа событий из таблиц SVMPoolRequestLog и SVMPoolExecutionLog.

Просмотр событий, инициированных пользователем, из SVMPoolRequestLog

SVMPoolRequestLog
| where TimeGenerated > ago(24h)
| project TimeGenerated, EventName, ResourceId, Details
| order by TimeGenerated desc

Просмотр событий, инициированных системой, из SVMPoolExecutionLog

SVMPoolExecutionLog
| where TimeGenerated > ago(24h)
| project TimeGenerated, EventName, ResourceId, Details
| order by TimeGenerated desc

Подсчет событий по типу

SVMPoolRequestLog
| summarize Count = count() by EventName
| union (
    SVMPoolExecutionLog
    | summarize Count = count() by EventName
)
| order by Count desc

Настройка оповещений для определенных событий

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

Создание оповещений о неудачных действиях резервного пула

  1. Перейдите на портал Azure.

  2. В строке поиска введите "Монитор" и выберите его из результатов.

  3. В меню "Монитор " выберите "Оповещения" в разделе "Мониторинг ".

  4. Щелкните + Новое правило генерации оповещений.

  5. Настройте оповещение:

    • Область. Выберите рабочую область Log Analytics.
    • Условие: используйте следующий пользовательский запрос журнала:
      SVMPoolExecutionLog
      | where EventName == "StandbyPoolReuseFailure"
      
    • Группа действий. Создайте или выберите группу действий, чтобы определить способ уведомления.
    • Сведения о правиле генерации оповещений: укажите имя оповещения и задайте уровень серьезности.
  6. Нажмите кнопку "Создать правило генерации оповещений ", чтобы сохранить оповещение.

Создание оповещения для исчерпанных резервных пулов

  1. Выполните шаги 1–4 из предыдущего примера.

  2. Настройте оповещение:

    • Область. Выберите рабочую область Log Analytics.
    • Условие: используйте следующий пользовательский запрос журнала:
      SVMPoolExecutionLog
      | where EventName == "StandbyPoolExhaustedPool"
      
    • Группа действий. Создание или выбор группы действий для уведомлений.
    • Сведения о правиле генерации оповещений: укажите имя оповещения и задайте уровень серьезности.
  3. Нажмите кнопку "Создать правило генерации оповещений ", чтобы сохранить оповещение.

Создать оповещение для обновлений настроек пула

  1. Выполните шаги 1–4 из первого примера.

  2. Настройте оповещение:

    • Область. Выберите рабочую область Log Analytics.
    • Условие: используйте следующий пользовательский запрос журнала:
      SVMPoolRequestLog
      | where EventName == "StandbyPoolSettingsUpdated"
      | summarize Count = count() by bin(TimeGenerated, 1h)
      | where Count > 5
      
      Этот запрос активирует оповещение, если в течение часа происходят обновления параметров пула более 5.
    • Группа действий. Создание или выбор группы действий для уведомлений.
    • Сведения о правиле генерации оповещений: укажите имя оповещения и задайте уровень серьезности.
  3. Нажмите кнопку "Создать правило генерации оповещений ", чтобы сохранить оповещение.

Дальнейшие шаги