Integrar a solução de monitoramento externo com o Azure Stack Hub

Para o monitoramento externo da infraestrutura do Azure Stack Hub, você precisa monitorar o software do Azure Stack Hub, os computadores físicos e os comutadores de rede física. Cada uma dessas áreas oferece um método para recuperar as informações de alerta e de integridade:

  • o software do Azure Stack Hub oferece uma API baseada em REST para recuperar a integridade e os alertas. O uso de tecnologias definidas pelo software, como Espaços de Armazenamento Diretos, a integridade do armazenamento e os alertas fazem parte do monitoramento de software.
  • Os computadores físicos podem disponibilizar informações de integridade e alerta por meio dos BMCs (controladores de gerenciamento de placa base).
  • Os dispositivos de rede física podem disponibilizar informações de integridade e alerta por meio do protocolo SNMP.

Cada solução do Azure Stack Hub é acompanhada com um host de ciclo de vida de hardware. Esse host executa o software de monitoramento do fornecedor de hardware OEM (fabricante original do equipamento) para os servidores físicos e dispositivos de rede. Verifique com seu fornecedor OEM se as soluções de monitoramento podem ser integradas com as soluções de monitoramento existentes em seu datacenter.

Importante

A solução de monitoramento externo que você usa deve ser sem agente. Você não pode instalar agentes de terceiros dentro dos componentes do Azure Stack Hub.

O diagrama a seguir mostra o fluxo de tráfego entre um sistema integrado do Azure Stack Hub, o host do ciclo de vida de hardware, uma solução de monitoramento externo e um sistema externo de coleta de tíquetes/dados.

Diagrama mostrando o tráfego entre o Azure Stack Hub, o monitoramento e a solução de tíquetes.

Observação

A integração de monitoramento externo diretamente com servidores físicos não é permitida e é bloqueada ativamente pelas ACLs (Listas de Controle de Acesso). Há suporte para a integração de monitoramento externo diretamente com dispositivos da rede física. Verifique com seu provedor OEM como habilitar esse recurso.

Este artigo explica como integrar o Azure Stack Hub a soluções de monitoramento externo, como o System Center Operations Manager e o Nagios. Ele também inclui como trabalhar com alertas programaticamente usando o PowerShell ou por meio de chamadas à API REST.

Integrar com Operations Manager

Você pode usar o Operations Manager para monitoramento externo do Azure Stack Hub. O Pacote de Gerenciamento do System Center para Microsoft Azure Stack Hub permite monitorar várias implantações do Azure Stack Hub com uma única instância do Operations Manager. O pacote de gerenciamento usa o provedor de recursos de integridade e atualiza as APIs REST do provedor de recursos para se comunicar com o Azure Stack Hub. Se você planeja ignorar o software de monitoramento de OEM que está em execução no host do ciclo de vida de hardware, é possível instalar pacotes de gerenciamento de fornecedores para monitorar servidores físicos. Você também pode usar a descoberta de dispositivo de rede do Operations Manager para monitorar comutadores de rede.

O pacote de gerenciamento do Azure Stack Hub fornece os seguintes recursos:

  • Você pode gerenciar várias implantações do Azure Stack Hub.
  • Há suporte para Microsoft Entra ID e Serviços de Federação do Active Directory (AD FS) (AD FS).
  • Você pode recuperar e fechar alertas.
  • Há um painel de capacidade e de integridade.
  • Inclui a detecção do Modo de Manutenção Automática para quando o patch e a atualização (P&U) estiverem em andamento.
  • Inclui tarefas Forçar Atualização para implantação e região.
  • Você pode adicionar informações personalizadas a uma região.
  • Dá suporte à notificação e relatórios.

Para baixar o Pacote de Gerenciamento do System Center e o guia do usuário associado, confira Baixar o Pacote de Gerenciamento do System Center para o Microsoft Azure Stack Hub.

Para uma solução de tíquetes, você pode integrar o Operations Manager com o System Center Service Manager. O conector de produtos integrado permite a comunicação bidirecional que permite que você feche um alerta no Azure Stack Hub e o Operations Manager depois de resolver uma solicitação de serviço no Service Manager.

O diagrama a seguir mostra a integração do Azure Stack Hub com uma implantação do System Center existente. Você pode automatizar o Service Manager com o System Center Orchestrator ou SMA (Service Management Automation) para executar as operações no Azure Stack Hub.

Diagrama mostrando a integração com OM, Service Manager e SMA.

Integrar com o Nagios

Você pode configurar e configurar o Plug-in do Nagios para o Microsoft Azure Stack Hub.

Um plug-in de monitoramento do Nagios foi desenvolvido junto com o parceiro Cloudbase Solutions, que está disponível sob a licença de software livre permissiva - MIT (Massachusetts Institute of Technology).

O plug-in é escrito em Python e aproveita a API REST do provedor de recursos de integridade. Ele oferece funcionalidade básica para recuperar e fechar alertas no Azure Stack Hub. Assim como o pacote de gerenciamento do System Center, ele permite adicionar várias implantações do Azure Stack Hub e enviar notificações.

Com a versão 1.2, o plug-in Azure Stack Hub – Nagios aproveita a biblioteca microsoft ADAL e dá suporte à autenticação usando a Entidade de Serviço com um segredo ou certificado. Além disso, a configuração foi simplificada usando um único arquivo de configuração com novos parâmetros. Agora ele dá suporte a implantações do Azure Stack Hub usando o Microsoft Entra ID e o AD FS como o sistema de identidade.

Importante

O AD FS dá suporte apenas a sessões de entrada interativas. Se você precisar de uma entrada não interativa para um cenário automatizado, deverá usar um SPN.

O plug-in funciona com Nagios 4x e XI. Para baixar o plug-in, consulte Monitoramento de alertas do Azure Stack Hub. O site de download também inclui detalhes de instalação e configuração.

Requisitos para Nagios

  1. A versão mínima do Nagios é 4.x

  2. Microsoft Entra biblioteca do Python. Essa biblioteca pode ser instalada usando o PIP do Python.

    sudo pip install adal pyyaml six
    

Instalar o plug-in

Esta seção descreve como instalar o plug-in do Azure Stack Hub assumindo uma instalação padrão do Nagios.

O pacote de plug-in contém os seguintes arquivos:

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. Copie o plug-in azurestack_plugin.py para o seguinte diretório: /usr/local/nagios/libexec.

  2. Copie o manipulador azurestack_handler.sh para o seguinte diretório: /usr/local/nagios/libexec/eventhandlers.

  3. Verifique se o arquivo de plug-in está definido como executável:

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

Configurar plug-in

Os parâmetros a seguir estão disponíveis para serem configurados no arquivo azurestack.cfg. Os parâmetros em negrito precisam ser configurados independentemente do modelo de autenticação escolhido.

Para obter mais informações sobre como criar um SPN, consulte Usar uma identidade de aplicativo para acessar recursos.

Parâmetro Descrição Autenticação
External_domain_fqdn FQDN de Domínio Externo
Região: Nome da Região
tenant_id: ID do locatário*
client_id: ID do Cliente SPN com segredo
client_secret: Senha do cliente SPN com segredo
client_cert**: Caminho para o certificado SPN com certificado
client_cert_thumbprint**: Impressão digital do certificado SPN com certificado

*A ID do locatário não é necessária para implantações do Azure Stack Hub com o AD FS.

** O segredo do cliente e o certificado do cliente são mutuamente exclusivos.

Os outros arquivos de configuração contêm definições de configuração opcionais, pois também podem ser configurados no Nagios.

Observação

Verifique o destino do local em azurestack_hosts.cfg e azurestack_services.cfg.

Configuração Descrição
azurestack_commands.cfg Configuração do manipulador sem requisito de alterações
azurestack_contacts.cfg Configurações de notificação
azurestack_hosts.cfg Nomenclatura de implantação do Azure Stack Hub
azurestack_services.cfg Configuração do serviço

Etapas de instalação

  1. Modificar o arquivo de configuração.

  2. Copie os arquivos de configuração modificados para a seguinte pasta: /usr/local/nagios/etc/objects.

Atualizar a configuração do Nagios

A configuração do Nagios precisa ser atualizada para garantir que o plug-in do Azure Stack Hub – Nagios seja carregado.

  1. Abra o seguinte arquivo:

    /usr/local/nagios/etc/nagios.cfg
    
  2. Adicione a seguinte entrada:

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

    sudo service nagios reload
    

Fechar alertas ativos manualmente

Os alertas ativos podem ser fechados no Nagios usando a funcionalidade de notificação personalizada. A notificação personalizada deve ser:

/close-alert <ALERT_GUID>

Um alerta também pode ser fechado usando um terminal com o seguinte comando:

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

Solução de problemas

A solução de problemas do plug-in é feita chamando o plug-in manualmente em um terminal. Use o seguinte método:

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

Usar o PowerShell para monitorar a integridade e os alertas

Se você não estiver usando o Operations Manager, o Nagios ou uma solução baseada em Nagios, poderá usar o PowerShell para habilitar uma ampla gama de soluções de monitoramento a serem integradas ao Azure Stack Hub.

  1. Para usar o PowerShell, verifique se você tem o PowerShell instalado e configurado para um ambiente de operador do Azure Stack Hub. Instale o PowerShell em um computador local que possa acessar o ponto de extremidade Resource Manager (administrador) (https://adminmanagement.[região].[ External_FQDN]).

  2. Execute os seguintes comandos para se conectar ao ambiente do Azure Stack Hub como um operador do 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. Use comandos como os seguintes exemplos para trabalhar com alertas:

# 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

Saiba mais

Para obter informações sobre o monitoramento de integridade interno, consulte Monitorar a integridade e os alertas no Azure Stack Hub.

Próximas etapas

Integração de segurança