Интеграция внешнего решения для мониторинга с Azure Stack Hub

Для внешнего мониторинга инфраструктуры Azure Stack Hub необходимо отслеживать программное обеспечение Azure Stack Hub, физические компьютеры и физические сетевые коммутаторы. Каждая из этих областей предлагает свой метод извлечения сведений о работоспособности и оповещениях.

  • Программное обеспечение Azure Stack Hub предлагает API на основе REST для получения данных о работоспособности и оповещений. При использовании таких программно-определяемых технологий, как служба "Локальные дисковые пространства", отслеживание работоспособности хранилища и оповещения являются частью мониторинга программного обеспечения.
  • Физические компьютеры могут предоставлять данные работоспособности и оповещений через контроллеры управления основной платой (BMC).
  • Физические сетевые устройства могут предоставлять данные работоспособности и оповещений по протоколу SNMP.

Каждое решение Azure Stack Hub поставляется с узлом жизненного цикла оборудования. На нем выполняется программное обеспечение для мониторинга физических серверов и сетевых устройств, предоставленное поставщиком OEM (изготовителем оборудования). Обратитесь к своему поставщику OEM и узнайте, можно ли интегрировать предлагаемые им решения для мониторинга с решениями для мониторинга в вашем центре обработки данных.

Важно!

Внешние решения для мониторинга, которые вы используете, не должны использовать агенты. Нельзя устанавливать сторонние агенты внутри компонентов Azure Stack Hub.

На следующей схеме показан поток трафика между интегрированной системой Azure Stack Hub, узлом отслеживания жизненного цикла оборудования, внешним решением для мониторинга и внешней системой отправки запросов и сбора данных.

Схема прохождения трафика между Azure Stack Hub, решением для мониторинга и решением для отправки запросов.

Примечание

Прямая интеграция внешних средств мониторинга с физическими серверами не допускается и активно блокируется списками управления доступом (ACL). Поддерживается прямая интеграция внешних средств мониторинга с физическими сетевыми устройствами. Чтобы включить эту функцию, обратитесь к поставщику OEM.

В этой статье объясняется, как интегрировать Azure Stack Hub с внешними решениями для мониторинга, такими как System Center Operations Manager и Nagios. В ней также поясняется, как программно работать с оповещениями с помощью PowerShell или вызовов REST API.

Интеграция с Operations Manager

Operations Manager можно использовать для внешнего мониторинга Azure Stack Hub. Пакет управления System Center для Microsoft Azure Stack Hub позволяет отслеживать несколько развернутых служб Azure Stack Hub в одном экземпляре Operations Manager. Пакет управления использует интерфейсы REST API поставщика ресурсов работоспособности и поставщика ресурсов обновления для взаимодействия с Azure Stack Hub. Если вы планируете обойти программное обеспечение для мониторинга, предоставленное изготовителем оборудования, которое выполняется на узле отслеживания жизненного цикла оборудования, то вы можете установить пакеты управления поставщика оборудования для отслеживания физических серверов. Можно также использовать обнаружение сетевых устройств Operations Manager для наблюдения за сетевыми коммутаторами.

Пакет управления для Azure Stack Hub предоставляет следующие возможности.

  • Можно управлять несколькими развернутыми службами Azure Stack Hub.
  • Поддержка Microsoft Entra ID и службы федерации Active Directory (AD FS) (AD FS).
  • Можно извлекать и закрывать оповещения.
  • Доступна панель мониторинга работоспособности и производительности.
  • Доступно автоматическое обнаружение режима обслуживания, в котором выполняется установка исправлений и обновлений.
  • Доступны задачи принудительного обновления для развернутой службы и региона.
  • Можно добавить пользовательские сведения для региона.
  • Поддержка уведомлений и отчетов.

Чтобы скачать пакет управления System Center и соответствующее руководство пользователя, перейдите к этой странице.

Чтобы реализовать решение для отправки запросов, можно интегрировать Operations Manager с System Center Service Manager. Интегрированный соединитель продукта поддерживает двунаправленный обмен данными, что позволяет закрыть оповещение в Azure Stack Hub и Operations Manager после обработки запроса на обслуживание в Service Manager.

На следующей схеме показана интеграция Azure Stack Hub с существующим развертыванием System Center. Можно дополнительно автоматизировать работу Service Manager с помощью System Center Orchestrator или Service Management Automation (SMA) для выполнения операций в Azure Stack Hub.

Схема интеграции с Operations Manager, Service Manager и SMA

Интеграция с Nagios

Вы можете установить и настроить подключаемый модуль Nagios для Microsoft Azure Stack Hub.

Подключаемый модуль мониторинга Nagios был разработан вместе с партнерскими решениями Cloudbase, которые предоставляются по разрешенной лицензии на бесплатное программное обеспечение Массачусетского технологического института.

Этот подключаемый модуль создан на языке Python, и в нем используется REST API поставщика ресурсов работоспособности. Он обеспечивает базовые функции получения и закрытия оповещений в Azure Stack Hub. Как и пакет управления System Center, он позволяет добавить несколько развернутых служб Azure Stack Hub и отправлять уведомления.

В версии 1.2 подключаемый модуль Azure Stack Hub — Nagios использует библиотеку Microsoft ADAL и поддерживает проверку подлинности с помощью субъекта-службы с секретом или сертификатом. Также была упрощен процесс настройки, который теперь выполняется с помощью одного файла конфигурации с новыми параметрами. Теперь она поддерживает развертывания Azure Stack Hub с использованием Microsoft Entra ID и AD FS в качестве системы удостоверений.

Важно!

AD FS поддерживает только сеансы интерактивного входа в систему. Если для автоматического сценария требуется неинтерактивный вход в систему, используйте имя субъекта-службы.

Подключаемый модуль работает с Nagios версии 4x и XI. Чтобы скачать подключаемый модуль, см. статью о мониторинге оповещений Azure Stack Hub. Сайт скачивания также содержит сведения об установке и настройке.

Требования для Nagios

  1. Версия Nagios не ниже 4.x.

  2. Microsoft Entra библиотеку Python. Эту библиотеку можно установить с помощью Python PIP.

    sudo pip install adal pyyaml six
    

Установка подключаемого модуля

В этом разделе объясняется, как установить подключаемый модуль Azure Stack Hub при условии, что приложение Nagios уже установлено.

Пакет подключаемого модуля содержит следующие файлы:

azurestack_plugin.py
azurestack_handler.sh
samples/etc/azurestack.cfg
samples/etc/azurestack_commands.cfg
samples/etc/azurestack_contacts.cfg
samples/etc/azurestack_hosts.cfg
samples/etc/azurestack_services.cfg
  1. Скопируйте подключаемый модуль azurestack_plugin.py в каталог /usr/local/nagios/libexec.

  2. Скопируйте обработчик azurestack_handler.sh в каталог /usr/local/nagios/libexec/eventhandlers.

  3. Убедитесь, что файл подключаемого модуля настроен как исполняемый.

    sudo cp azurestack_plugin.py <PLUGINS_DIR>
    sudo chmod +x <PLUGINS_DIR>/azurestack_plugin.py
    

Настройка подключаемого модуля

В файле azurestack.cfg можно настраивать следующие параметры. Выделенные жирным шрифтом параметры должны быть настроены для любой модели аутентификации.

Подробнее о создании имени субъекта-службы см. статью Использование удостоверения приложения для доступа к ресурсам.

Параметр Описание Аутентификация
External_domain_fqdn Полное доменное имя внешнего домена
Регионе: Имя региона
tenant_id: Идентификатор клиента*
client_id: Идентификатор клиента Имя субъекта-службы с секретом
client_secret: Пароль клиента Имя субъекта-службы с секретом
client_cert**: Путь к сертификату Имя субъекта-службы с сертификатом
client_cert_thumbprint**: Отпечаток сертификата Имя субъекта-службы с сертификатом

* Идентификатор клиента не требуется для развертываний Azure Stack Hub с AD FS.

** Секрет клиента и сертификат клиента являются взаимоисключающими.

Другие файлы конфигурации содержат дополнительные параметры конфигурации, которые можно настраивать также и в Nagios.

Примечание

Проверьте расположение, указанное в файлах azurestack_hosts.cfg и azurestack_services.cfg.

Конфигурация Описание
azurestack_commands.cfg Конфигурация обработчика, не требующая изменений
azurestack_contacts.cfg Параметры уведомлений
azurestack_hosts.cfg Именование развертываний Azure Stack Hub
azurestack_services.cfg Конфигурация службы

Процедура настройки

  1. Измените файл конфигурации.

  2. Скопируйте измененные файлы конфигурации в папку /usr/local/nagios/etc/objects.

Обновление конфигурации Nagios

Конфигурацию Nagios необходимо обновить, чтобы обеспечить загрузку подключаемого модуля Azure Stack Hub Nagios.

  1. Откройте этот файл:

    /usr/local/nagios/etc/nagios.cfg
    
  2. Добавьте следующую запись:

    # Load the Azure Stack Hub Plugin Configuration
    cfg_file=/usr/local/Nagios/etc/objects/azurestack_contacts.cfg
    cfg_file=/usr/local/Nagios/etc/objects/azurestack_commands.cfg
    cfg_file=/usr/local/Nagios/etc/objects/azurestack_hosts.cfg
    cfg_file=/usr/local/Nagios/etc/objects/azurestack_services.cfg
    
  3. Перезагрузите Nagios.

    sudo service nagios reload
    

Закрытие активных оповещений вручную

Активные оповещения можно закрыть в Nagios с помощью функции настраиваемого уведомления. Настраиваемое уведомление выполняется так:

/close-alert <ALERT_GUID>

Оповещение также можно закрыть с помощью следующей команды из терминала:

/usr/local/nagios/libexec/azurestack_plugin.py --config-file /usr/local/nagios/etc/objects/azurestack.cfg --action Close --alert-id <ALERT_GUID>

Устранение неполадок

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

/usr/local/nagios/libexec/azurestack_plugin.py --config-file /usr/local/nagios/etc/objects/azurestack.cfg --action Monitor

Мониторинг работоспособности и оповещений с помощью PowerShell

Если вы не используете Operations Manager, Nagios или решение на основе Nagios, можете использовать PowerShell, чтобы интегрировать с Azure Stack Hub широкий спектр решений для мониторинга.

  1. Чтобы использовать PowerShell, в среде оператора Azure Stack Hub должен быть установлен и настроен компонент PowerShell. Установите PowerShell на локальном компьютере, который может получить доступ к конечной точке Resource Manager (администратор) (https://adminmanagement.[регион].[ External_FQDN]).

  2. Выполните следующие команды для подключения к среде Azure Stack Hub в качестве оператора Azure Stack Hub.

    Add-AzEnvironment -Name "AzureStackAdmin" -ArmEndpoint https://adminmanagement.[Region].[External_FQDN] `
       -AzureKeyVaultDnsSuffix adminvault.[Region].[External_FQDN] `
       -AzureKeyVaultServiceEndpointResourceId https://adminvault.[Region].[External_FQDN]
    
    Connect-AzAccount -EnvironmentName "AzureStackAdmin"
    
  3. Ниже приведены примеры команд для работы с оповещениями.

# Retrieve all alerts
$Alerts = Get-AzsAlert
$Alerts

# Filter for active alerts
$Active = $Alerts | Where-Object { $_.State -eq "active" }
$Active

# Close alert
Close-AzsAlert -AlertID "ID"

#Retrieve resource provider health
$RPHealth = Get-AzsRPHealth
$RPHealth

# Retrieve infrastructure role instance health
$FRPID = $RPHealth | Where-Object { $_.DisplayName -eq "Capacity" }
   Get-AzsRegistrationHealth -ServiceRegistrationId $FRPID.RegistrationId

Подробнее

Сведения о встроенных средствах мониторинга работоспособности см. в статье Мониторинг работоспособности и оповещений в Azure Stack.

Дальнейшие действия

Интеграция решений для обеспечения безопасности