共用方式為


教學課程:使用 Azure 受控 Grafana 建置 Java 計量儀表板

在本教學課程中,您將了解如何使用 Azure 受控 Grafana 來設定計量儀表板,以監視在 Azure 容器應用程式中執行的 Java 應用程式。

Grafana 是一個可檢視性產業中用於集中式計量視覺效果和監視的熱門工具。 Azure 受控 Grafana 是一項完全受控的 Azure 服務,可讓您透過與 Azure 的無縫整合來部署和管理 Grafana 儀表板。 您可以使用 Azure 受控 Grafana 來視覺化 Azure 容器應用程式公開的 Java 計量,或將 Java 計量整合到您現有的 Grafana 儀表板中。

在本教學課程中,您:

  • 建立 Azure 受控 Grafana 執行個體。
  • 在 Grafana 中建立 Java 計量儀表板。
  • 使用 Grafana 視覺化 Azure 容器應用程式的 Java 計量。

先決條件

設定 Azure 環境

使用下列步驟來定義環境變數,並確定您的 Azure 受控 Grafana 延伸模組是最新的。

  1. 建立變數以支援您的 Grafana 設定。

    export LOCATION=eastus
    export SUBSCRIPTION_ID={subscription-id}
    export RESOURCE_GROUP=grafana-resource-group
    export GRAFANA_INSTANCE_NAME=grafana-name
    
    變數 描述
    LOCATION 您在其中建立 Azure 受控 Grafana 執行個體的 Azure 區域位置。
    SUBSCRIPTION_ID 您用來建立 Azure 容器應用程式和 Azure 受控 Grafana 執行個體的訂用帳戶識別碼。
    RESOURCE_GROUP Azure 受控 Grafana 執行個體的 Azure 資源群組名稱。
    GRAFANA_INSTANCE_NAME Azure 受控 Grafana 執行個體的執行個體名稱。
  2. 使用 Azure CLI 登入 Azure。

    az login
    
  3. 建立資源群組。

    az group create --name $RESOURCE_GROUP --location $LOCATION
    
  4. 使用下列命令,以確保您有適用於 Azure 受控 Grafana 的最新版本的 Azure CLI 延伸模組。

    az extension add --name amg --upgrade
    

設定 Azure 受控 Grafana 執行個體

首先,建立 Azure 受控 Grafana 執行個體,並授與必要的角色指派。

  1. 建立 Azure 受控 Grafana 執行個體。

    az grafana create \
        --name $GRAFANA_INSTANCE_NAME \
        --resource-group $RESOURCE_GROUP \
        --location $LOCATION
    
  2. 授與 Azure 受控 Grafana 執行個體「監視讀取者」角色,以便從 Azure 監視器讀取計量。 深入了解 Azure 受控 Grafana 的驗證和權限

    GRAFA_IDDENTITY=$(az grafana show --name $GRAFANA_INSTANCE_NAME --resource-group $RESOURCE_GROUP --query "identity.principalId" --output tsv)
    
    az role assignment create --assignee $GRAFA_IDDENTITY --role "Monitoring Reader" --scope /subscriptions/$SUBSCRIPTION_ID
    

建立 Java 計量儀表板

重要事項

若要在 Grafana 中新增儀表板,您必須擁有 Grafana AdminGrafana Editor角色,請參閱 Azure 受控 Grafana 角色

  1. Grafana Admin 角色指派給 Azure 受控 Grafana 資源上的您的帳戶。

    取得您的 Azure 受控 Grafana 執行個體的資源識別碼。

    GRAFANA_RESOURCE_ID=$(az grafana show --resource-group $RESOURCE_GROUP --name $GRAFANA_INSTANCE_NAME --query id --output tsv)
    

    執行此命令之前,請將 <USER_OR_SERVICE_PRINCIPAL_ID> 預留位置取代為您的使用者或服務主體識別碼。

    az role assignment create \
        --assignee <USER_OR_SERVICE_PRINCIPAL_ID> \
        --role "Grafana Admin" \
        --scope $GRAFANA_RESOURCE_ID
    
  2. 下載 Azure 容器應用程式的範例 Java 計量儀表板 JSON 檔案。

  3. 取得 Azure 受控 Grafana 資源的端點。

    az grafana show --resource-group $RESOURCE_GROUP \
       --name $GRAFANA_INSTANCE_NAME \
       --query "properties.endpoint" \
       --output tsv
    

    此命令會傳回您可用來存取 Azure 受控 Grafana 儀表板的 URL。 使用 URL 開啟瀏覽器並登入。

  4. 移至 Dashboard>New -.>Import。 上傳上述範例儀表板 JSON 檔案,並選擇預設的內建 Azure Monitor 資料來源,然後按一下 Import 按鈕。

    匯入 Azure 容器應用程式的 Java 計量儀表板的螢幕擷取畫面。

使用 Grafana 視覺化 Azure 容器應用程式的 Java 計量

  1. 在 Azure 容器應用程式的篩選條件中輸入您的資源資訊。 現在,您可以在儀表板中檢視 Azure 容器應用程式中所有受支援的 Java 計量。 範例儀表板提供即時計量資料,包括

    • 容器應用程式概觀
    • JVM 記憶體使用量
    • JVM 記憶體緩衝區
    • JVM GC JVM GC
    • 詳細的 JVM 記憶體使用量分析

    Grafana 中 [概觀] 索引標籤的螢幕擷取畫面。

    Grafana 中 [JVM 記憶體] 索引標籤的螢幕擷取畫面。

    Grafana 中 [JVM 緩衝區記憶體] 索引標籤的螢幕擷取畫面。

    Grafana 中 [JVM GC] 索引標籤的螢幕擷取畫面。

    Grafana 中 [JVM 記憶體分析] 索引標籤的螢幕擷取畫面。

您可以使用此儀表板作為起點,以建立您自己的自訂計量視覺效果和監視解決方案。

清除資源

本教學課程中建立的資源會影響您的 Azure 帳單。 如果您不會長期使用這些服務,請執行下列命令來刪除本教學課程中建立的所有內容。

az group delete --resource-group $RESOURCE_GROUP