Dela via


Hantera klusterkonfiguration

Viktig

Azure HDInsight på AKS drogs tillbaka den 31 januari 2025. Läs mer genom det här meddelandet.

Du måste migrera dina arbetsbelastningar till Microsoft Fabric- eller en motsvarande Azure-produkt för att undvika plötsliga uppsägningar av dina arbetsbelastningar.

Viktig

Den här funktionen är för närvarande i förhandsversion. De kompletterande användningsvillkoren för Förhandsversioner av Microsoft Azure innehåller fler juridiska villkor som gäller för Azure-funktioner som är i betaversion, förhandsversion eller på annat sätt ännu inte har gjorts allmänt tillgängliga. Information om den här specifika förhandsversionen finns i Azure HDInsight på AKS-förhandsversionsinformation. För frågor eller förslag på funktioner, skicka en begäran på AskHDInsight med detaljerna och följ oss för fler uppdateringar om Azure HDInsight Community.

MED HDInsight på AKS kan du justera konfigurationsegenskaperna för att förbättra klustrets prestanda med vissa inställningar. Till exempel användnings- eller minnesinställningar. Du kan utföra följande åtgärder:

  • Uppdatera befintliga konfigurationer eller lägg till nya konfigurationer.
  • Exportera konfigurationerna med hjälp av REST API.

Anpassa konfigurationer

Du kan anpassa konfigurationer med hjälp av följande alternativ:

Använda Azure-portalen

  1. Logga in på Azure-portalen.

  2. I sökfältet i Azure-portalen skriver du "HDInsight på AKS-kluster" och väljer "Azure HDInsight på AKS-kluster" i listrutan.

    Skärmbild som visar sökalternativ för att komma igång med HDInsight i AKS-kluster.

  3. Välj klusternamnet på listsidan.

    Skärmbild som visar hur du väljer HDInsight i det AKS-kluster du behöver från listan.

  4. Gå till bladet Konfigurationshantering i den vänstra menyn.

    Skärmbild som visar fliken Konfigurationshantering.

  5. Beroende på klustertyp visas konfigurationsfiler. Mer information finns i konfigurationerna Trino, Flinkoch Spark.

  6. Lägg till nytt eller uppdatera det befintliga nyckel/värde-paret för de konfigurationer som du vill ändra.

  7. Välj OK och klicka sedan på Spara.

Obs

Vissa konfigurationsändringar kan behöva startas om för att återspegla ändringarna.

Använda ARM-mall

Förutsättningar

I ARM-mallen kan du redigera serviceConfigsProfiles och ange NAMNET på OSS-konfigurationsfilen med det värde som du vill skriva över.

Om OSS-konfigurationsfilen är i JSON/XML/YAML-format kan du ange OSS-konfigurationsfilens namn via fileName. Ange de nyckelvärdepar som du vill skriva över i "värden".

Här följer några exempel för varje arbetsbelastning:

Flink-konfigurationsexempel:

 "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-konfigurationsexempel:

  "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-konfigurationsexempel:

 "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"
                                    }
                                }
                            ]
                        }
          ]

Mer information om Trino-konfigurationsalternativ finns i ARM-exempelmallarna.

Exportera konfigurationerna med hjälp av REST API

Du kan också exportera klusterkonfigurationer för att kontrollera standardvärdena och uppdaterade värden. För närvarande kan du bara exportera konfigurationer via REST-API:et.

Hämta klusterkonfigurationer:

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

Om du inte är bekant med hur du skickar ett REST API-anrop kan följande steg hjälpa dig.

  1. Klicka på följande knapp längst upp till höger i Azure-portalen för att starta Azure Cloud Shell.

    Skärmbild som visar Cloud Shell-ikonen.

  2. Kontrollera att Cloud Shell är inställt på PowerShell längst upp till vänster. Kör följande kommando för att hämta token och ange HTTP-begärandehuvuden.

    $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. Ange variabeln $restUri till URL för GET-begäran.

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

    Till exempel: $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

    Not

    Du kan hämta resurs-ID:t och up-to-date api-version från "JSON View" för klustret i Azure-portalen.

    Visa kostnad för skärmbildsvisning JSON. Visa knappar.

  4. Skicka GET-begäran genom att köra följande kommando.

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