Monitorowanie klastrów usługi HDInsight za pomocą dzienników usługi Azure Monitor

Dowiedz się, jak włączyć dzienniki usługi Azure Monitor w celu monitorowania operacji klastra Hadoop w usłudze HDInsight. Jak dodać rozwiązanie do monitorowania usługi HDInsight.

Dzienniki usługi Azure Monitor to usługa Azure Monitor, która monitoruje środowiska w chmurze i środowiska lokalne. Monitorowanie polega na utrzymaniu ich dostępności i wydajności. Zbiera dane generowane przez zasoby w chmurze, środowiskach lokalnych i innych narzędziach do monitorowania. Dane są używane do zapewniania analizy w wielu źródłach.

Uwaga

Ten artykuł został niedawno zaktualizowany, aby użyć terminu Dzienniki usługi Azure Monitor zamiast usługi Log Analytics. Dane dzienników są nadal przechowywane w obszarze roboczym usługi Log Analytics i są nadal zbierane i analizowane przez tę samą usługę Log Analytics. Aktualizujemy terminologię, aby lepiej odzwierciedlać rolę dzienników w usłudze Azure Monitor. Aby uzyskać szczegółowe informacje, zobacz Zmiany terminologii usługi Azure Monitor .

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Ważne

Nowe środowisko usługi Azure Monitor jest dostępne tylko w regionach Wschodnie stany USA i Europa Zachodnia jako funkcja w wersji zapoznawczej.

Wymagania wstępne

  • Obszar roboczy usługi Log Analytics. Ten obszar roboczy można traktować jako unikatowe środowisko dzienników usługi Azure Monitor z własnym repozytorium danych, źródłami danych i rozwiązaniami. Aby uzyskać instrukcje, zobacz Tworzenie obszaru roboczego usługi Log Analytics.

  • Klaster usługi Azure HDInsight. Obecnie można używać dzienników usługi Azure Monitor z następującymi typami klastrów usługi HDInsight:

    • Hadoop
    • HBase
    • Zapytanie interakcyjne
    • Kafka
    • platforma Spark
    • Storm

    Aby uzyskać instrukcje dotyczące tworzenia klastra usługi HDInsight, zobacz Rozpoczynanie pracy z usługą Azure HDInsight.

  • Jeśli używasz programu PowerShell, potrzebujesz modułu Az. Upewnij się, że masz najnowszą wersję. W razie potrzeby uruchom polecenie Update-Module -Name Az.

  • Jeśli chcesz używać interfejsu wiersza polecenia platformy Azure i jeszcze go nie zainstalowano, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

Uwaga

Nowe środowisko usługi Azure Monitor jest dostępne tylko w regionach Wschodnie stany USA i Europa Zachodnia jako funkcja w wersji zapoznawczej. Zaleca się umieszczenie klastra usługi HDInsight i obszaru roboczego usługi Log Analytics w tym samym regionie w celu uzyskania lepszej wydajności. Dzienniki usługi Azure Monitor nie są dostępne we wszystkich regionach świadczenia usługi Azure.

Włączanie usługi Azure Monitor przy użyciu portalu

W tej sekcji skonfigurujesz istniejący klaster usługi HDInsight Hadoop, aby używać obszaru roboczego usługi Azure Log Analytics do monitorowania zadań, debugowania dzienników itd.

  1. W witrynie Azure Portal wybierz klaster. Klaster zostanie otwarty na nowej stronie portalu.

  2. Po lewej stronie w obszarze Monitorowanie wybierz pozycję Monitoruj integrację.

  3. W widoku głównym w obszarze Azure Monitor for HDInsight Clusters Integration (Integracja klastrów usługi HDInsight) wybierz pozycję Enable (Włącz).

  4. Z listy rozwijanej Wybierz obszar roboczy wybierz istniejący obszar roboczy usługi Log Analytics.

  5. Wybierz pozycję Zapisz. Zapisanie ustawienia trwa kilka minut.

    Włączanie monitorowania dla klastrów usługi HDInsight

Jeśli chcesz wyłączyć usługę Azure Monitor, możesz to zrobić w tym portalu.

Włączanie usługi Azure Monitor przy użyciu Azure PowerShell

Dzienniki usługi Azure Monitor można włączyć Azure PowerShell za pomocą polecenia cmdlet Enable-AzHDInsightAzureMonitor.

# Enter user information
$resourceGroup = "<your-resource-group>"
$cluster = "<your-cluster>"
$LAW = "<your-Log-Analytics-workspace>"
# End of user input

# obtain workspace id for defined Log Analytics workspace
$WorkspaceId = (Get-AzOperationalInsightsWorkspace `
                    -ResourceGroupName $resourceGroup `
                    -Name $LAW).CustomerId

# obtain primary key for defined Log Analytics workspace
$PrimaryKey = (Get-AzOperationalInsightsWorkspace `
                    -ResourceGroupName $resourceGroup `
                    -Name $LAW | Get-AzOperationalInsightsWorkspaceSharedKeys).PrimarySharedKey

# Enables monitoring and relevant logs will be sent to the specified workspace.
Enable-AzHDInsightAzureMonitor `
    -ResourceGroupName $resourceGroup `
    -ClusterName $cluster `
    -WorkspaceId $WorkspaceId `
    -PrimaryKey $PrimaryKey

# Gets the status of monitoring installation on the cluster.
Get-AzHDInsightAzureMonitor `
    -ResourceGroupName $resourceGroup `
    -ClusterName $cluster

Aby wyłączyć polecenie cmdlet Disable-AzHDInsightAzureMonitor, użyj polecenia cmdlet Disable-AzHDInsightAzureMonitor :

Disable-AzHDInsightAzureMonitor -ResourceGroupName $resourceGroup `
-ClusterName $cluster

Włączanie usługi Azure Monitor przy użyciu interfejsu wiersza polecenia platformy Azure

Dzienniki usługi Azure Monitor można włączyć za pomocą polecenia interfejsu wiersza polecenia az hdinsight azure-monitor enable platformy Azure.

# set variables
export resourceGroup=RESOURCEGROUPNAME
export cluster=CLUSTERNAME
export LAW=LOGANALYTICSWORKSPACENAME

# Enable the Azure Monitor logs integration on an HDInsight cluster.
az hdinsight azure-monitor enable --name $cluster --resource-group $resourceGroup --workspace $LAW

# Get the status of Azure Monitor logs integration on an HDInsight cluster.
az hdinsight azure-monitor show --name $cluster --resource-group $resourceGroup

Aby wyłączyć polecenie , użyj az hdinsight monitor disable polecenia .

az hdinsight azure-monitor disable --name $cluster --resource-group $resourceGroup

Korzystanie z gotowej usługi HDInsight Insights do monitorowania pojedynczego klastra

Usługa HDInsight udostępnia skoroszyt specyficzny dla obciążenia, który ułatwia szybkie uzyskiwanie szczegółowych informacji. Ten skoroszyt zbiera ważne metryki wydajności z klastra usługi HDInsight i udostępnia wizualizacje i pulpity nawigacyjne dla najbardziej typowych scenariuszy. Gotowe szczegółowe informacje zapewniają pełny widok pojedynczego klastra usługi HDInsight, w tym wykorzystanie zasobów i stan aplikacji.

Dostępne skoroszyty usługi HDInsight:

  • Skoroszyt platformy Spark w usłudze HDInsight
  • Skoroszyt platformy Kafka w usłudze HDInsight
  • Skoroszyt HBase usługi HDInsight
  • Skoroszyt hive/LLAP usługi HDInsight
  • Skoroszyt systemu Storm w usłudze HDInsight

Zrzut ekranu przedstawiający skoroszyt spark skoroszytu platformy Spark

Monitorowanie wielu klastrów za pomocą szczegółowych informacji na dużą skalę

Możesz zalogować się do Azure Portal i wybrać pozycję Monitorowanie. W sekcji Szczegółowe informacje możesz wybrać pozycję Insights Hub. Następnie możesz znaleźć klastry usługi HDInsight.

W tym widoku można monitorować wiele klastrów usługi HDInsight w jednym miejscu. Zrzut ekranu przedstawiający szczegółowe informacje o monitorze klastra

Możesz wybrać subskrypcję i klastry usługi HDInsight, które chcesz monitorować.

  • W monitorowanych klastrach jest wyświetlana liczba klastrów, dla których włączono integrację z usługą Azure Monitor.
  • Klaster niemonitorowany pokazuje liczbę klastrów, dla których nie włączono integracji z usługą Azure Monitor.

Listę klastrów szczegółów można wyświetlić w każdej sekcji.

Na karcie Przegląd w obszarze Monitorowane klastry można zobaczyć typ klastra, alerty krytyczne i wykorzystanie zasobów. Zrzut ekranu alertów monitorowania klastra

Ponadto klastry są widoczne w każdym typie obciążenia, w tym Spark, HBase, Hive, Kafka i Storm.

Zostaną wyświetlone metryki wysokiego poziomu dla każdego typu obciążenia, w tym liczbę aktywnych menedżerów węzłów, liczbę uruchomionych aplikacji itp.

Metryki platformy Spark monitora klastra

Konfigurowanie liczników wydajności

Usługa Azure Monitor obsługuje zbieranie i analizowanie metryk wydajności dla węzłów w klastrze. Aby uzyskać więcej informacji, zobacz Źródła danych wydajności systemu Linux w usłudze Azure Monitor.

Inspekcja klastra

Usługa HDInsight obsługuje inspekcję klastra przy użyciu dzienników usługi Azure Monitor, importując następujące typy dzienników:

  • log_gateway_audit_CL — ta tabela zawiera dzienniki inspekcji z węzłów bramy klastra, które pokazują pomyślne i nieudane próby logowania.
  • log_auth_CL — ta tabela zawiera dzienniki SSH z pomyślnymi i nieudanymi próbami logowania.
  • log_ambari_audit_CL — ta tabela zawiera dzienniki inspekcji z systemu Ambari.
  • log_ranger_audti_CL — ta tabela zawiera dzienniki inspekcji z platformy Apache Ranger w klastrach ESP.

Aktualizowanie agenta usługi Log Analytics (OMS) używanego przez integrację usługi HDInsight z usługą Azure Monitor

Po włączeniu integracji usługi Azure Monitor w klastrze agent usługi Log Analytics lub agent pakietu Operations Management Suite (OMS) jest instalowany w klastrze i nie jest aktualizowany, chyba że wyłączysz i ponownie włączysz integrację z usługą Azure Monitor. Wykonaj poniższe kroki, jeśli musisz zaktualizować agenta pakietu OMS w klastrze. Jeśli używasz zapory, przed wykonaniem tych kroków może być konieczne wypełnienie wymagań wstępnych dla klastrów za zaporą .

  1. W witrynie Azure Portal wybierz klaster. Klaster zostanie otwarty na nowej stronie portalu.
  2. Po lewej stronie w obszarze Monitorowanie wybierz pozycję Azure Monitor.
  3. Zanotuj nazwę bieżącego obszaru roboczego usługi Log Analytics.
  4. W widoku głównym w obszarze Integracja z usługą Azure Monitor wyłącz przełącznik, a następnie wybierz pozycję Zapisz.
  5. Po zapisaniu ustawienia włącz ponownie przełącznik Integracji usługi Azure Monitor i upewnij się, że wybrano ten sam obszar roboczy usługi Log Analytics, a następnie wybierz pozycję Zapisz.

Jeśli integracja usługi Azure Monitor jest włączona w klastrze, aktualizacja agenta pakietu OMS spowoduje również zaktualizowanie wersji infrastruktury OMI (Open Management Infrastructure). Wersję OMI w klastrze można sprawdzić, uruchamiając następujące polecenie:

 sudo /opt/omi/bin/omiserver –version

Następne kroki