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

Для внешнего мониторинга инфраструктуры Azure Stack Hub необходимо отслеживать программное обеспечение Azure Stack Hub, физические компьютеры и физические сетевые коммутаторы.For external monitoring of the Azure Stack Hub infrastructure, you need to monitor the Azure Stack Hub software, the physical computers, and the physical network switches. Каждая из этих областей предлагает свой метод извлечения сведений о работоспособности и оповещениях.Each of these areas offers a method to retrieve health and alert information:

  • Программное обеспечение Azure Stack Hub предлагает API на основе REST для получения данных о работоспособности и оповещений.Azure Stack Hub software offers a REST-based API to retrieve health and alerts. При использовании таких программно-определяемых технологий, как служба "Локальные дисковые пространства", отслеживание работоспособности хранилища и оповещения являются частью мониторинга программного обеспечения.The use of software-defined technologies such as Storage Spaces Direct, storage health, and alerts are part of software monitoring.
  • Физические компьютеры могут предоставлять данные работоспособности и оповещений через контроллеры управления основной платой (BMC).Physical computers can make health and alert information available via the baseboard management controllers (BMCs).
  • Физические сетевые устройства могут предоставлять данные работоспособности и оповещений по протоколу SNMP.Physical network devices can make health and alert information available via the SNMP protocol.

Каждое решение Azure Stack Hub поставляется с узлом жизненного цикла оборудования.Each Azure Stack Hub solution ships with a hardware lifecycle host. На нем выполняется программное обеспечение для мониторинга физических серверов и сетевых устройств, предоставленное поставщиком OEM (изготовителем оборудования).This host runs the original equipment manufacturer (OEM) hardware vendor's monitoring software for the physical servers and network devices. Обратитесь к своему поставщику OEM и узнайте, можно ли интегрировать предлагаемые им решения для мониторинга с решениями для мониторинга в вашем центре обработки данных.Check with your OEM provider if their monitoring solutions can integrate with existing monitoring solutions in your datacenter.

Важно!

Внешние решения для мониторинга, которые вы используете, не должны использовать агенты.The external monitoring solution you use must be agentless. Нельзя устанавливать сторонние агенты внутри компонентов Azure Stack Hub.You can't install third-party agents inside Azure Stack Hub components.

На следующей схеме показан поток трафика между интегрированной системой Azure Stack Hub, узлом отслеживания жизненного цикла оборудования, внешним решением для мониторинга и внешней системой отправки запросов и сбора данных.The following diagram shows traffic flow between an Azure Stack Hub integrated system, the hardware lifecycle host, an external monitoring solution, and an external ticketing/data collection system.

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

Примечание

Прямая интеграция внешних средств мониторинга с физическими серверами не допускается и активно блокируется списками управления доступом (ACL).External monitoring integration directly with physical servers isn't allowed and actively blocked by Access Control Lists (ACLs). Поддерживается прямая интеграция внешних средств мониторинга с физическими сетевыми устройствами.External monitoring integration directly with physical network devices is supported. Чтобы включить эту функцию, обратитесь к поставщику OEM.Check with your OEM provider on how to enable this feature.

В этой статье объясняется, как интегрировать Azure Stack Hub с внешними решениями для мониторинга, такими как System Center Operations Manager и Nagios.This article explains how to integrate Azure Stack Hub with external monitoring solutions such as System Center Operations Manager and Nagios. В ней также поясняется, как программно работать с оповещениями с помощью PowerShell или вызовов REST API.It also includes how to work with alerts programmatically by using PowerShell or through REST API calls.

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

Operations Manager можно использовать для внешнего мониторинга Azure Stack Hub.You can use Operations Manager for external monitoring of Azure Stack Hub. Пакет управления System Center для Microsoft Azure Stack Hub позволяет отслеживать несколько развернутых служб Azure Stack Hub в одном экземпляре Operations Manager.The System Center Management Pack for Microsoft Azure Stack Hub enables you to monitor multiple Azure Stack Hub deployments with a single Operations Manager instance. Пакет управления использует интерфейсы REST API поставщика ресурсов работоспособности и поставщика ресурсов обновления для взаимодействия с Azure Stack Hub.The management pack uses the health resource provider and update resource provider REST APIs to communicate with Azure Stack Hub. Если вы планируете обойти программное обеспечение для мониторинга, предоставленное изготовителем оборудования, которое выполняется на узле отслеживания жизненного цикла оборудования, то вы можете установить пакеты управления поставщика оборудования для отслеживания физических серверов.If you plan to bypass the OEM monitoring software that's running on the hardware lifecycle host, you can install vendor management packs to monitor physical servers. Можно также использовать обнаружение сетевых устройств Operations Manager для наблюдения за сетевыми коммутаторами.You can also use Operations Manager network device discovery to monitor network switches.

Пакет управления для Azure Stack Hub предоставляет следующие возможности.The management pack for Azure Stack Hub provides the following capabilities:

  • Можно управлять несколькими развернутыми службами Azure Stack Hub.You can manage multiple Azure Stack Hub deployments.
  • Поддерживаются Azure Active Directory (Azure AD) и службы федерации Active Directory (AD FS).There's support for Azure Active Directory (Azure AD) and Active Directory Federation Services (AD FS).
  • Можно извлекать и закрывать оповещения.You can retrieve and close alerts.
  • Доступна панель мониторинга работоспособности и производительности.There's a health and a capacity dashboard.
  • Доступно автоматическое обнаружение режима обслуживания, в котором выполняется установка исправлений и обновлений.Includes Auto Maintenance Mode detection for when patch and update (P&U) is in progress.
  • Доступны задачи принудительного обновления для развернутой службы и региона.Includes Force Update tasks for deployment and region.
  • Можно добавить пользовательские сведения для региона.You can add custom information to a region.
  • Поддержка уведомлений и отчетов.Supports notification and reporting.

Чтобы скачать пакет управления System Center и соответствующее руководство пользователя, перейдите к этой странице.To download the System Center Management Pack and the associated user guide, see Download System Center Management Pack for Microsoft Azure Stack Hub. Кроме того, вы можете скачать его прямо из Operations Manager.You can also download it directly from Operations Manager.

Чтобы реализовать решение для отправки запросов, можно интегрировать Operations Manager с System Center Service Manager.For a ticketing solution, you can integrate Operations Manager with System Center Service Manager. Интегрированный соединитель продукта поддерживает двунаправленный обмен данными, что позволяет закрыть оповещение в Azure Stack Hub и Operations Manager после обработки запроса на обслуживание в Service Manager.The integrated product connector enables bidirectional communication that allows you to close an alert in Azure Stack Hub and Operations Manager after you resolve a service request in Service Manager.

На следующей схеме показана интеграция Azure Stack Hub с существующим развертыванием System Center.The following diagram shows integration of Azure Stack Hub with an existing System Center deployment. Можно дополнительно автоматизировать работу Service Manager с помощью System Center Orchestrator или Service Management Automation (SMA) для выполнения операций в Azure Stack Hub.You can automate Service Manager further with System Center Orchestrator or Service Management Automation (SMA) to run operations in Azure Stack Hub.

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

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

Вы можете установить и настроить подключаемый модуль Nagios для Microsoft Azure Stack Hub.You can set up and configure the Nagios Plugin for Microsoft Azure Stack Hub.

Подключаемый модуль мониторинга Nagios был разработан вместе с партнерскими решениями Cloudbase, которые предоставляются по разрешенной лицензии на бесплатное программное обеспечение Массачусетского технологического института.A Nagios monitoring plugin was developed together with partner Cloudbase Solutions, which is available under the permissive free software license - MIT (Massachusetts Institute of Technology).

Этот подключаемый модуль создан на языке Python, и в нем используется REST API поставщика ресурсов работоспособности.The plugin is written in Python and leverages the health resource provider REST API. Он обеспечивает базовые функции получения и закрытия оповещений в Azure Stack Hub.It offers basic functionality to retrieve and close alerts in Azure Stack Hub. Как и пакет управления System Center, он позволяет добавить несколько развернутых служб Azure Stack Hub и отправлять уведомления.Like the System Center management pack, it enables you to add multiple Azure Stack Hub deployments and to send notifications.

В версии 1,2 подключаемый модуль Azure Stack концентратора Nagios использует библиотеку Microsoft ADAL и поддерживает проверку подлинности с помощью субъекта-службы с секретом или сертификатом.With Version 1.2 the Azure Stack Hub - Nagios plugin leverages the Microsoft ADAL library and supports authentication using Service Principal with a secret or certificate. Также была упрощен процесс настройки, который теперь выполняется с помощью одного файла конфигурации с новыми параметрами.Also, the configuration has been simplified using a single configuration file with new parameters. Теперь реализована поддержка развертываний в Azure Stack Hub с Azure AD или AD FS в качестве системы удостоверений.It now supports Azure Stack Hub deployments using Azure AD and AD FS as the identity system.

Важно!

AD FS поддерживает только сеансы интерактивного входа в систему.AD FS only supports interactive sign-in sessions. Если для автоматического сценария требуется неинтерактивный вход в систему, используйте имя субъекта-службы.If you require a non-interactive sign-in for an automated scenario, you must use a SPN.

Подключаемый модуль работает с Nagios версии 4x и XI.The plugin works with Nagios 4x and XI. Чтобы скачать подключаемый модуль, см. статью о мониторинге оповещений Azure Stack Hub.To download the plugin, see Monitoring Azure Stack Hub Alerts. Сайт скачивания также содержит сведения об установке и настройке.The download site also includes installation and configuration details.

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

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

  2. Библиотека Microsoft Azure Active Directory для Python.Microsoft Azure Active Directory Python library. Эту библиотеку можно установить с помощью Python PIP.This library can be installed using Python PIP.

    sudo pip install adal pyyaml six
    

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

В этом разделе объясняется, как установить подключаемый модуль Azure Stack Hub при условии, что приложение Nagios уже установлено.This section describes how to install the Azure Stack Hub plugin assuming a default installation of Nagios.

Пакет подключаемого модуля содержит следующие файлы:The plugin package contains the following files:

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.Copy the plugin azurestack_plugin.py into the following directory: /usr/local/nagios/libexec.

  2. Скопируйте обработчик azurestack_handler.sh в каталог /usr/local/nagios/libexec/eventhandlers.Copy the handler azurestack_handler.sh into the following directory: /usr/local/nagios/libexec/eventhandlers.

  3. Убедитесь, что файл подключаемого модуля настроен как исполняемый.Make sure the plugin file is set to be executable:

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

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

В файле azurestack.cfg можно настраивать следующие параметры.The following parameters are available to be configured in the azurestack.cfg file. Выделенные жирным шрифтом параметры должны быть настроены для любой модели аутентификации.Parameters in bold need to be configured independently from the authentication model you choose.

Подробнее о создании имени субъекта-службы см. статью Использование удостоверения приложения для доступа к ресурсам.For more information on how to create an SPN, see Use an app identity to access resources.

ПараметрParameter ОписаниеDescription АутентификацияAuthentication
External_domain_fqdnExternal_domain_fqdn Полное доменное имя внешнего доменаExternal Domain FQDN
регионеregion: Имя регионаRegion Name
tenant_id:tenant_id: Идентификатор арендатора*Tenant ID*
client_id:client_id: Идентификатор клиентаClient ID Имя субъекта-службы с секретомSPN with secret
client_secret:client_secret: Пароль клиентаClient Password Имя субъекта-службы с секретомSPN with secret
client_cert**:client_cert**: Путь к сертификатуPath to Certificate Имя субъекта-службы с сертификатомSPN with certificate
client_cert_thumbprint**:client_cert_thumbprint**: Отпечаток сертификатаCertificate Thumbprint Имя субъекта-службы с сертификатомSPN with certificate

*При развертывании в Azure Stack Hub с использованием служб федерации Active Directory идентификатор клиента не требуется.*Tenant ID isn't required for Azure Stack Hub deployments with AD FS.

** Секрет клиента и сертификат клиента являются взаимоисключающими.** Client secret and client cert are mutually exclusive.

Другие файлы конфигурации содержат дополнительные параметры конфигурации, которые можно настраивать также и в Nagios.The other configuration files contain optional configuration settings as they can be configured in Nagios as well.

Примечание

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

КонфигурацияConfiguration ОписаниеDescription
azurestack_commands.cfgazurestack_commands.cfg Конфигурация обработчика, не требующая измененийHandler configuration no changes requirement
azurestack_contacts.cfgazurestack_contacts.cfg Параметры уведомленийNotification Settings
azurestack_hosts.cfgazurestack_hosts.cfg Именование развертываний Azure Stack HubAzure Stack Hub Deployment Naming
azurestack_services.cfgazurestack_services.cfg Конфигурация службыConfiguration of the Service

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

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

  2. Скопируйте измененные файлы конфигурации в папку /usr/local/nagios/etc/objects.Copy the modified configuration files into the following folder: /usr/local/nagios/etc/objects.

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

Необходимо обновить конфигурацию Nagios, чтобы убедиться, что загружен подключаемый модуль концентратора Nagios Azure Stack.The Nagios configuration needs to be updated to ensure the Azure Stack Hub - Nagios Plugin is loaded.

  1. Откройте этот файл:Open the following file:

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

    # 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.Reload Nagios.

    sudo service nagios reload
    

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

Активные оповещения можно закрыть в Nagios с помощью функции настраиваемого уведомления.Active alerts can be closed within Nagios using the custom notification functionality. Настраиваемое уведомление выполняется так:The custom notification must be:

/close-alert <ALERT_GUID>

Оповещение также можно закрыть с помощью следующей команды из терминала:An alert can also be closed using a terminal with the following command:

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

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

Вы можете устранить неполадки с подключаемым модулем, вызвав его вручную в окне терминала.Troubleshooting the plugin is done by calling the plugin manually in a terminal. Для этого используйте следующий метод:Use the following method:

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

Мониторинг работоспособности и оповещений с помощью PowerShellUse PowerShell to monitor health and alerts

Если вы не используете Operations Manager, Nagios или решение на основе Nagios, можете использовать PowerShell, чтобы интегрировать с Azure Stack Hub широкий спектр решений для мониторинга.If you're not using Operations Manager, Nagios, or a Nagios-based solution, you can use PowerShell to enable a broad range of monitoring solutions to integrate with Azure Stack Hub.

  1. Чтобы использовать PowerShell, в среде оператора Azure Stack Hub должен быть установлен и настроен компонент PowerShell.To use PowerShell, make sure that you have PowerShell installed and configured for an Azure Stack Hub operator environment. Установите PowerShell на локальном компьютере с доступом к конечной точке Resource Manager (администратор) (https://adminmanagement.[регион].[внешнее_полное_доменное_имя]).Install PowerShell on a local computer that can reach the Resource Manager (administrator) endpoint (https://adminmanagement.[region].[External_FQDN]).

  2. Выполните следующие команды для подключения к среде Azure Stack Hub в качестве оператора Azure Stack Hub.Run the following commands to connect to the Azure Stack Hub environment as an Azure Stack Hub operator:

    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. Ниже приведены примеры команд для работы с оповещениями.Use commands such as the following examples to work with alerts:

# 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

Дополнительные сведенияLearn more

Сведения о встроенных средствах мониторинга работоспособности см. в статье Мониторинг работоспособности и оповещений в Azure Stack.For information about built-in health monitoring, see Monitor health and alerts in Azure Stack Hub.

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

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