共用方式為


使用 Azure 監視器記錄來監視 HDInsight 叢集

了解如何啟用 Azure 監視器記錄來監視 HDInsight 中的 Hadoop 叢集作業。 以及如何新增 HDInsight 監視解決方案。

Azure 監視器記錄是監視您的雲端和內部部署環境的 Azure 監視器服務。 監視是要維護其可用性和效能。 其會收集您的雲端、內部部署環境,以及從其他監視工具中的資源所產生的資料。 該資料可用於提供跨多個來源的分析。

注意

本文最近有所更新,改為使用「Azure 監視器記錄」一詞,而非 Log Analytics。 記錄資料仍儲存在 Log Analytics 工作區中,並仍由相同的 Log Analytics 服務收集和分析。 我們會持續更新術語,以更精確地反映 Azure 監視器記錄的角色。 如需詳細資料,請參閱 Azure 監視器遙測變更

如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶

重要

HDInsight 中的 Azure 監視器體驗 (預覽版) 將於 2025 年 2 月 1 日淘汰。 如需詳細資訊,請參閱淘汰:HDInsight 中的 Azure 監視器體驗 (預覽版) 將於 2025 年 2 月 1 日淘汰

必要條件

  • Log Analytics 工作區。 您可以將此工作區視為唯一的 Azure 監視器記錄環境,有其自己的資料存放庫、資料來源和方案。 如需指示,請參閱建立 Log Analytics 工作區

  • Azure HDInsight 叢集。 目前,您可以使用具有以下 HDInsight 叢集類型的 Azure 監視器記錄:

    • Hadoop
    • hbase
    • 互動式查詢
    • Kafka
    • Spark

    如需如何建立 HDInsight 叢集的指示,請參閱開始使用 Azure HDInsight

  • 如果使用 PowerShell,您將需要 Az 模組 \(部分機器翻譯\)。 確認您擁有最新版本。 如有必要,請執行 Update-Module -Name Az

  • 如果您想要使用 Azure CLI,但尚未安裝,請參閱安裝 Azure CLI

注意

所有區域都僅以預覽功能的形式提供新的 Azure 監視器體驗。 建議您將 HDInsight 叢集和 Log Analytics 工作區放在相同的區域中,以提升效能。

使用入口網站啟用 Azure 監視器

在本節中,您會設定現有 HDInsight Hadoop 叢集,以使用 Azure Log Analytics 工作區來監視作業、偵錯記錄等等。

  1. Azure 入口網站中,選取您的叢集。 叢集會在新的入口網站分頁中開啟。

  2. 從左側的 [監視] 底下,選取 [監視器整合]

  3. 從主要檢視的 [適用於 HDInsight 叢集的 Azure 監視器整合] 底下,選取 [啟用]

  4. 從 [選取工作區] 下拉式清單中,選取現有的 Log Analytics 工作區。

  5. 選取 [儲存]。 需要一些時間來儲存設定。

    啟用 HDInsight 叢集的監視。

如果您想要停用 Azure 監視器,可以在此入口網站中執行相同動作。

使用 Azure PowerShell 啟用 Azure 監視器

您可以使用 Azure PowerShell Az 模組 Enable-AzHDInsightAzureMonitor Cmdlet,啟用 Azure 監視器記錄。

# 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

若要停用,請使用 Disable-AzHDInsightAzureMonitor Cmdlet:

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

使用 Azure CLI 啟用 Azure 監視器

您可以使用 Azure CLI az hdinsight azure-monitor enable 命令,啟用 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

若要停用,請使用 az hdinsight monitor disable 命令。

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

使用 HDInsight 現成深入解析來監視單一叢集

HDInsight 提供工作負載專屬活頁簿,協助您快速取得深入解析。 此活頁簿會從 HDInsight 叢集收集重要效能計量,並提供最常見情節的視覺效果和儀表板。 現成深入解析可完整檢視單一 HDInsight 叢集,包括資源使用率和應用程式狀態。

可用的 HDInsight 活頁簿:

  • HDInsight Spark 活頁簿
  • HDInsight Kafka 活頁簿
  • HDInsight HBase 活頁簿
  • HDInsight Hive/LLAP 活頁簿

Spark 活頁簿的螢幕擷取畫面 Spark 活頁簿螢幕擷取畫面。

設定效能計數器

Azure 監視器支援收集和分析叢集中節點的效能計量。 如需詳細資訊,請參閱 Azure 監視器中的 Linux 效能資料來源 \(部分機器翻譯\)。

叢集稽核

藉由匯入下列類型的記錄,HDInsight 支援使用 Azure 監視器記錄進行叢集稽核:

  • log_gateway_audit_CL - 此資料表提供來自叢集閘道節點的稽核記錄,以顯示成功和失敗的登入嘗試。
  • log_auth_CL - 此資料表提供 SSH 記錄,其中包含成功和失敗的登入嘗試。
  • log_ambari_audit_CL - 此資料表提供來自 Ambari 的稽核記錄。
  • ranger_audit_logs_CL - 此資料表提供 ESP 叢集上來自 Apache Ranger 的稽核記錄。

如需從傳統 Azure 監視器整合至新資料表的記錄資料表對應,請參閱記錄資料表對應

更新 HDInsight Azure 監視器整合使用的 Log Analytics (OMS) 代理程式

在叢集上啟用 Azure 監視器整合時,Log Analytics 代理程式或 Operations Management Suite (OMS) 代理程式會安裝在叢集上,除非您停用並重新啟用 Azure 監視器整合,否則不會更新。 如果您必須更新叢集上的 OMS 代理程式,請完成下列步驟。 如果您在防火牆後,可能需要達成防火牆後叢集的必要條件,才能完成這些步驟。

  1. Azure 入口網站中,選取您的叢集。 叢集會在新的入口網站分頁中開啟。
  2. 從左側的 [監視] 底下,選取 [Azure 監視器]。
  3. 請注意您目前 Log Analytics 工作區的名稱。
  4. 從主要檢視的 [Azure 監視器整合] 底下,停用切換按鈕,然後選取 [儲存]。
  5. 設定儲存之後,重新啟用 [Azure 監視器整合] 切換按鈕,並確定已選取相同 Log Analytics 工作區,然後選取 [儲存]

如果您已在叢集上啟用 Azure 監視器整合,更新 OMS 代理程式也會同時更新開放式管理基礎結構 (OMI) 版本。 您可以執行以下命令,檢查叢集上的 OMI 版本:

 sudo /opt/omi/bin/omiserver –version

下一步