Hantera klusterkonfiguration
Viktigt!
Den här funktionen finns i förhandsgranskning. 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 släppts i allmän tillgänglighet. Information om den här specifika förhandsversionen finns i Azure HDInsight på AKS-förhandsversionsinformation. Om du vill ha frågor eller funktionsförslag skickar du en begäran på AskHDInsight med informationen och följer oss för fler uppdateringar i 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:
Med Azure Portal
Logga in på Azure-portalen.
I sökfältet i Azure-portalen skriver du "HDInsight på AKS-kluster" och väljer "Azure HDInsight på AKS-kluster" i listrutan.
Välj klusternamnet på listsidan.
Gå till bladet Konfigurationshantering i den vänstra menyn.
Beroende på klustertyp visas konfigurationsfiler. Mer information finns i Konfigurationer för Trino, Flink och Spark .
Lägg till nytt eller uppdatera det befintliga nyckel/värde-paret för de konfigurationer som du vill ändra.
Välj OK och klicka sedan på Spara.
Kommentar
Vissa konfigurationsändringar kan behöva startas om för att återspegla ändringarna.
Använda ARM-mall
Förutsättningar
- ARM-mall för klustret.
- Kunskaper om redigering och distribution av ARM-mallar.
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"
}
]
}
]
}
]
Exempel på Trino-konfiguration:
"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.
Klicka på följande knapp längst upp till höger i Azure-portalen för att starta Azure Cloud Shell.
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 }
Ange variabeln $restUri till URL:en för hämta 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
Kommentar
Du kan hämta resurs-ID:t och den uppdaterade api-versionen från "JSON-vyn" för klustret i Azure-portalen.
Skicka GET-begäran genom att köra följande kommando.
Invoke-RestMethod -Uri $restUri -Method Get -Headers $authHeader | ConvertTo-Json -Depth 10