Integrowanie zewnętrznego rozwiązania do monitorowania z usługą Azure Stack Hub
Aby monitorować zewnętrzną infrastrukturę usługi Azure Stack Hub, należy monitorować oprogramowanie usługi Azure Stack Hub, komputery fizyczne i fizyczne przełączniki sieciowe. Każdy z tych obszarów oferuje metodę pobierania informacji o kondycji i alertach:
- Oprogramowanie usługi Azure Stack Hub oferuje interfejs API oparty na protokole REST do pobierania kondycji i alertów. Korzystanie z technologii zdefiniowanych programowo, takich jak Bezpośrednie miejsca do magazynowania, kondycja magazynu i alerty, jest częścią monitorowania oprogramowania.
- Komputery fizyczne mogą udostępniać informacje o kondycji i alertach za pośrednictwem kontrolerów zarządzania płytą główną (BMCs).
- Urządzenia sieciowe fizyczne mogą udostępniać informacje o kondycji i alertach za pośrednictwem protokołu SNMP.
Każde rozwiązanie usługi Azure Stack Hub jest dostarczane z hostem cyklu życia sprzętu. Ten host uruchamia oprogramowanie monitorujące producenta sprzętu oryginalnego producenta sprzętu (OEM) dla serwerów fizycznych i urządzeń sieciowych. Sprawdź u dostawcy OEM, czy ich rozwiązania do monitorowania mogą być zintegrowane z istniejącymi rozwiązaniami do monitorowania w centrum danych.
Ważne
Zewnętrzne rozwiązanie do monitorowania musi być bez agenta. Nie można zainstalować agentów innych firm w składnikach usługi Azure Stack Hub.
Na poniższym diagramie przedstawiono przepływ ruchu między zintegrowanym systemem usługi Azure Stack Hub, hostem cyklu życia sprzętu, zewnętrznym rozwiązaniem do monitorowania oraz zewnętrznym systemem gromadzenia biletów/danych.
Uwaga
Integracja monitorowania zewnętrznego bezpośrednio z serwerami fizycznymi nie jest dozwolona i aktywnie blokowana przez Access Control Listy (ACL). Integracja monitorowania zewnętrznego bezpośrednio z fizycznymi urządzeniami sieciowymi jest obsługiwana. Zapoznaj się z dostawcą OEM, aby dowiedzieć się, jak włączyć tę funkcję.
W tym artykule wyjaśniono, jak zintegrować usługę Azure Stack Hub z zewnętrznymi rozwiązaniami do monitorowania, takimi jak System Center Operations Manager i Nagios. Obejmuje on również sposób programowego pracy z alertami przy użyciu programu PowerShell lub wywołań interfejsu API REST.
Integracja z programem Operations Manager
Do monitorowania zewnętrznego usługi Azure Stack Hub można użyć programu Operations Manager. Pakiet administracyjny programu System Center dla usługi Microsoft Azure Stack Hub umożliwia monitorowanie wielu wdrożeń usługi Azure Stack Hub przy użyciu jednego wystąpienia programu Operations Manager. Pakiet administracyjny używa dostawcy zasobów kondycji i aktualizuje interfejsy API REST dostawcy zasobów do komunikowania się z usługą Azure Stack Hub. Jeśli planujesz obejść oprogramowanie do monitorowania OEM działające na hoście cyklu życia sprzętu, możesz zainstalować pakiety administracyjne dostawcy w celu monitorowania serwerów fizycznych. Do monitorowania przełączników sieciowych można również użyć odnajdywania urządzeń sieciowych programu Operations Manager.
Pakiet administracyjny usługi Azure Stack Hub zapewnia następujące możliwości:
- Można zarządzać wieloma wdrożeniami usługi Azure Stack Hub.
- Istnieje obsługa Tożsamość Microsoft Entra i Active Directory Federation Services (AD FS).
- Możesz pobrać i zamknąć alerty.
- Istnieje kondycja i pulpit nawigacyjny pojemności.
- Obejmuje wykrywanie trybu automatycznej konserwacji w przypadku, gdy trwa stosowanie poprawek i aktualizacji (P&U).
- Obejmuje zadania wymuszania aktualizacji dla wdrożenia i regionu.
- Możesz dodać informacje niestandardowe do regionu.
- Obsługuje powiadomienia i raportowanie.
Aby pobrać pakiet administracyjny programu System Center i skojarzony podręcznik użytkownika, zobacz Pobieranie pakietu administracyjnego programu System Center dla usługi Microsoft Azure Stack Hub.
W przypadku rozwiązania do obsługi biletów można zintegrować program Operations Manager z System Center Service Manager. Zintegrowany łącznik produktu umożliwia dwukierunkową komunikację, która umożliwia zamknięcie alertu w usługach Azure Stack Hub i Operations Manager po rozwiązaniu żądania obsługi w Service Manager.
Na poniższym diagramie przedstawiono integrację usługi Azure Stack Hub z istniejącym wdrożeniem programu System Center. Możesz zautomatyzować Service Manager dalej za pomocą programu System Center Orchestrator lub Service Management Automation (SMA), aby uruchamiać operacje w usłudze Azure Stack Hub.
Integracja z rozwiązaniem Nagios
Możesz skonfigurować i skonfigurować wtyczkę Nagios dla usługi Microsoft Azure Stack Hub.
Wtyczka monitorowania Nagios została opracowana wraz z partnerem Cloudbase Solutions, która jest dostępna w ramach bezpłatnej licencji na oprogramowanie — MIT (Massachusetts Institute of Technology).
Wtyczka jest napisana w języku Python i korzysta z interfejsu API REST dostawcy zasobów kondycji. Oferuje podstawowe funkcje pobierania i zamykania alertów w usłudze Azure Stack Hub. Podobnie jak pakiet administracyjny programu System Center, umożliwia dodawanie wielu wdrożeń usługi Azure Stack Hub i wysyłanie powiadomień.
W wersji 1.2 wtyczka Azure Stack Hub — Nagios korzysta z biblioteki Biblioteki ADAL firmy Microsoft i obsługuje uwierzytelnianie przy użyciu jednostki usługi z wpisem tajnym lub certyfikatem. Ponadto konfiguracja została uproszczona przy użyciu pojedynczego pliku konfiguracji z nowymi parametrami. Obsługuje teraz wdrożenia usługi Azure Stack Hub przy użyciu Tożsamość Microsoft Entra i usług AD FS jako systemu tożsamości.
Ważne
Usługi AD FS obsługują tylko sesje logowania interakcyjnego. Jeśli w scenariuszu zautomatyzowanym jest wymagane logowanie nieinterakcyjne, musisz użyć nazwy SPN.
Wtyczka działa z Nagios 4x i XI. Aby pobrać wtyczkę, zobacz Monitorowanie alertów usługi Azure Stack Hub. Witryna pobierania zawiera również szczegóły instalacji i konfiguracji.
Wymagania dotyczące Nagios
Minimalna wersja Nagios to 4.x
Microsoft Entra biblioteki języka Python. Tę bibliotekę można zainstalować przy użyciu narzędzia PIP języka Python.
sudo pip install adal pyyaml six
Instalowanie wtyczki
W tej sekcji opisano sposób instalowania wtyczki usługi Azure Stack Hub przy założeniu domyślnej instalacji oprogramowania Nagios.
Pakiet wtyczki zawiera następujące pliki:
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
Skopiuj wtyczkę
azurestack_plugin.py
do następującego katalogu:/usr/local/nagios/libexec
.Skopiuj program obsługi
azurestack_handler.sh
do następującego katalogu:/usr/local/nagios/libexec/eventhandlers
.Upewnij się, że plik wtyczki jest ustawiony na plik wykonywalny:
sudo cp azurestack_plugin.py <PLUGINS_DIR> sudo chmod +x <PLUGINS_DIR>/azurestack_plugin.py
Konfigurowanie wtyczki
Następujące parametry można skonfigurować w pliku azurestack.cfg. Parametry pogrubione muszą być konfigurowane niezależnie od wybranego modelu uwierzytelniania.
Aby uzyskać więcej informacji na temat tworzenia nazwy SPN, zobacz Używanie tożsamości aplikacji do uzyskiwania dostępu do zasobów.
Parametr | Opis | Authentication |
---|---|---|
External_domain_fqdn | Nazwa FQDN domeny zewnętrznej | |
Region: | Nazwa regionu | |
tenant_id: | Identyfikator dzierżawy* | |
client_id: | Identyfikator klienta | Nazwa SPN z wpisem tajnym |
client_secret: | Hasło klienta | Nazwa SPN z wpisem tajnym |
client_cert**: | Ścieżka do certyfikatu | Nazwa SPN z certyfikatem |
client_cert_thumbprint**: | Odcisk palca certyfikatu | Nazwa SPN z certyfikatem |
*Identyfikator dzierżawy nie jest wymagany w przypadku wdrożeń usługi Azure Stack Hub z usługami AD FS.
** Wpis tajny klienta i certyfikat klienta wzajemnie się wykluczają.
Inne pliki konfiguracji zawierają opcjonalne ustawienia konfiguracji, ponieważ można je również skonfigurować w nagios.
Uwaga
Sprawdź lokalizację docelową w azurestack_hosts.cfg i azurestack_services.cfg.
Konfiguracja | Opis |
---|---|
azurestack_commands.cfg | Konfiguracja programu obsługi nie wymaga wprowadzania zmian |
azurestack_contacts.cfg | Ustawienia powiadomień |
azurestack_hosts.cfg | Nazewnictwo wdrożenia usługi Azure Stack Hub |
azurestack_services.cfg | Konfiguracja usługi |
Procedura konfiguracji
Zmodyfikuj plik konfiguracji.
Skopiuj zmodyfikowane pliki konfiguracji do następującego folderu:
/usr/local/nagios/etc/objects
.
Aktualizacja konfiguracji nagios
Konfiguracja nagios musi zostać zaktualizowana, aby upewnić się, że wtyczka Azure Stack Hub — Nagios jest załadowana.
Otwórz następujący plik:
/usr/local/nagios/etc/nagios.cfg
Dodaj następujący wpis:
# 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
Załaduj ponownie Nagios.
sudo service nagios reload
Ręczne zamykanie aktywnych alertów
Aktywne alerty można zamknąć w usłudze Nagios przy użyciu niestandardowych funkcji powiadomień. Powiadomienie niestandardowe musi być następujące:
/close-alert <ALERT_GUID>
Alert można również zamknąć przy użyciu terminalu za pomocą następującego polecenia:
/usr/local/nagios/libexec/azurestack_plugin.py --config-file /usr/local/nagios/etc/objects/azurestack.cfg --action Close --alert-id <ALERT_GUID>
Rozwiązywanie problemów
Rozwiązywanie problemów z wtyczką odbywa się przez ręczne wywołanie wtyczki w terminalu. Użyj następującej metody:
/usr/local/nagios/libexec/azurestack_plugin.py --config-file /usr/local/nagios/etc/objects/azurestack.cfg --action Monitor
Monitorowanie kondycji i alertów przy użyciu programu PowerShell
Jeśli nie używasz programu Operations Manager, Nagios lub rozwiązania opartego na systemie Nagios, możesz użyć programu PowerShell, aby umożliwić integrację z usługą Azure Stack Hub przy użyciu szerokiego zakresu rozwiązań do monitorowania.
Aby użyć programu PowerShell, upewnij się, że masz zainstalowany i skonfigurowany program PowerShell dla środowiska operatora usługi Azure Stack Hub. Zainstaluj program PowerShell na komputerze lokalnym, który może uzyskać dostęp do punktu końcowego Resource Manager (administrator) (https://adminmanagement.[region].[ External_FQDN]).
Uruchom następujące polecenia, aby nawiązać połączenie ze środowiskiem usługi Azure Stack Hub jako operator usługi 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"
Użyj poleceń, takich jak następujące przykłady, aby pracować z alertami:
# 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
Więcej tutaj
Aby uzyskać informacje o wbudowanym monitorowaniu kondycji, zobacz Monitorowanie kondycji i alertów w usłudze Azure Stack Hub.