共用方式為


管理叢集設定

重要

此功能目前為預覽功能。 適用於 Microsoft Azure 預覽版的補充使用規定包含適用於 Beta 版、預覽版或尚未發行至正式運作之 Azure 功能的更合法條款。 如需此特定預覽的相關信息,請參閱 AKS 預覽資訊的 Azure HDInsight。 如需問題或功能建議,請在 AskHDInsight提交要求,並提供詳細數據,並遵循我們在 Azure HDInsight 社群取得更多更新。

HDInsight on AKS 可讓您調整設定屬性,以使用特定設定來改善叢集的效能。 例如,使用量或記憶體設定。 您可以執行下列動作:

  • 更新現有的組態或新增組態。
  • 使用 REST API 匯出組態。

自定義組態

您可以使用下列選項自訂群組態:

使用 Azure 入口網站

  1. 登入 Azure 入口網站

  2. 在 Azure 入口網站搜尋列中,輸入「AKS 叢集上的 HDInsight」,然後從下拉式清單中選取 [AKS 叢集上的 Azure HDInsight]。

    顯示開始使用 AKS 叢集上 HDInsight 之搜尋選項的螢幕快照。

  3. 從清單頁面選取叢集名稱。

    顯示從清單中選取 AKS 叢集上 HDInsight 的螢幕快照。

  4. 移至左側功能表中的 [組態管理] 刀鋒視窗。

    顯示 [組態管理] 索引標籤的螢幕快照。

  5. 根據叢集類型,會列出組態檔。 如需詳細資訊,請參閱 TrinoFlinkSpark 組態。

  6. 針對您想要修改的組態,新增或更新現有的機碼/值組。

  7. 選取 [確定],然後按一下 [儲存]

注意

某些設定變更可能需要重新啟動服務,才能反映變更。

使用ARM範本

必要條件

在 ARM 範本中,您可以編輯 serviceConfigsProfiles ,並使用您想要覆寫的值來指定 OSS 組態檔名稱。

如果 OSS 組態檔為 JSON/XML/YAML 格式,您可以透過 fileName提供 OSS 組態檔名稱。 提供您要在「值」中覆寫的索引鍵值組。

以下是每個工作負載的一些範例:

Flink 設定範例:

 "serviceConfigsProfiles": [
                {
                    "serviceName": "flink-operator",
                    "configs": [
                        {
                            "component": "flink-configs",
                            "files": [
                                {
                                    "fileName": "flink-conf.yaml",
                                    "values": {
                                        "taskmanager.memory.process.size": "4096mb",
                                        "classloader.check-leaked-classloader": "false",
                                        "jobmanager.memory.process.size": "4096mb",
                                        "classloader.parent-first-patterns.additional": "org.apache.parquet"
                                    }
                                }
                            ]
                        }
                    ]
                }
            ]

Spark 組態範例:

  "serviceConfigsProfiles": [
                {
                    "serviceName": "spark-service",
                    "configs": [
                        {
                            "component": "livy-config",
                            "files": [
                                {
                                    "fileName": "livy-client.conf",
                                    "values": {
                                        "livy.client.http.connection.timeout": "11s"
                                    }
                                }
                            ]
                        },
                        {
                            "component": "spark-config",
                            "files": [
                                {
                                    "fileName": "spark-env.sh",
                                    "content": "# - SPARK_HISTORY_OPTS, to set config properties only for the history server (e.g. \"-Dx=y\")\nexport HDP_VERSION=3.3.3.5.2-83515052\n"
                                }
                            ]
                        }
                    ]
                }
          ]

Trino 組態範例:

 "serviceConfigsProfiles": [
                {
                    "serviceName": "trino",
                    "configs": [
                        {
                            "component": "coordinator",
                            "files": [
                                {
                                    "fileName": "config.properties",
                                    "values": {
                                        "query.cache.enabled": "true",
                                        "query.cache.ttl": "1h",
                                        "query.enable-multi-statement-set-session": "true",
                                        "query.max-memory": "301GB"
                                    }
                                },
                                {
                                    "fileName": "log.properties",
                                    "values": {
                                        "io.trino": "INFO"
                                    }
                                }
                            ]
                        }
          ]

如需 Trino 組態選項的詳細資訊,請參閱 ARM 範例。

使用 REST API 匯出組態

您也可以匯出叢集組態,以檢查預設值和更新的值。 此時,您只能透過 REST API 匯出組態。

取得叢集組態:

GET Request: /subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}

如果您不熟悉如何傳送 REST API 呼叫,下列步驟可協助您。

  1. 按兩下 Azure 入口網站 右上方的下列按鈕,以啟動 Azure Cloud Shell。

    顯示 Cloud Shell 圖示的螢幕快照。

  2. 請確定 Cloud Shell 已設定為左上方的 PowerShell。 執行下列命令以取得令牌並設定 HTTP 要求標頭。

    $azContext = Get-AzContext
    $azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
    
    $profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile)
    $token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId)
    $authHeader = @{
        'Content-Type'='application/json'
        'Authorization'='Bearer ' + $token.AccessToken
    }
    
  3. 將$restUri變數設定為 [取得要求 URL]。

    $restUri = 
    'https://management.azure.com/subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}'
    

    例如:$restUri = 'https://management.azure.com/subscriptions/xxx-yyyy-zzz-00000/resourceGroups/contosoRG/providers/Microsoft.HDInsight/clusterpools/contosopool/clusters/contosocluster/serviceConfigs?api-version=2021-09-15-preview

    注意

    您可以從 Azure 入口網站 中叢集的「JSON 檢視」取得資源標識碼和最新 API 版本。

    檢視成本 JSON 檢視按鈕的螢幕快照。

  4. 執行下列命令以傳送 GET 要求。

    Invoke-RestMethod -Uri $restUri -Method Get -Headers $authHeader | ConvertTo-Json -Depth 10