Gestire la configurazione del cluster
Importante
Azure HDInsight su AKS è stato ritirato il 31 gennaio 2025. Scopri di più su con questo annuncio.
È necessario eseguire la migrazione dei carichi di lavoro a Microsoft Fabric o a un prodotto Azure equivalente per evitare la chiusura brusca dei carichi di lavoro.
Importante
Questa funzionalità è attualmente in anteprima. Le condizioni supplementari per l'utilizzo per le anteprime di Microsoft Azure includono termini legali più validi applicabili alle funzionalità di Azure in versione beta, in anteprima o altrimenti non ancora rilasciate nella disponibilità generale. Per informazioni su questa anteprima specifica, vedere informazioni sull'anteprima di Azure HDInsight su AKS. Per domande o suggerimenti sulle funzionalità, inviare una richiesta in AskHDInsight con i dettagli e seguirci per altri aggiornamenti sulla Community di Azure HDInsight.
HDInsight nel servizio Azure Kubernetes consente di modificare le proprietà di configurazione per migliorare le prestazioni del cluster con determinate impostazioni. Ad esempio, impostazioni di utilizzo o memoria. È possibile eseguire le azioni seguenti:
- Aggiornare le configurazioni esistenti o aggiungere nuove configurazioni.
- Esportare le configurazioni usando l'API REST.
Personalizzare le configurazioni
È possibile personalizzare le configurazioni usando le opzioni seguenti:
Uso del portale di Azure
Accedere a portale di Azure.
Nella barra di ricerca del portale di Azure digitare "HDInsight nel cluster del servizio Azure Kubernetes" e selezionare "Azure HDInsight nei cluster del servizio Azure Kubernetes" nell'elenco a discesa.
Selezionare il nome del cluster dalla lista.
Passare al pannello "Gestione della configurazione" nel menu a sinistra.
A seconda del tipo di cluster, vengono elencati i file di configurazione. Per ulteriori informazioni, consultare le configurazioni di Trino, Flinke Spark.
Aggiungere o aggiornare la coppia chiave-valore esistente per le configurazioni da modificare.
Selezionare OK e quindi fare clic su Salva.
Nota
Alcune modifiche alla configurazione potrebbero richiedere il riavvio del servizio per riflettere le modifiche.
Utilizzo del modello ARM
Prerequisiti
- modello ARM per il tuo cluster.
- Familiarità con creazione e distribuzione di modelli arm.
Nel modello ARM, è possibile modificare serviceConfigsProfiles e specificare il nome del file di configurazione OSS con il valore che si desidera sovrascrivere.
Se il file di configurazione del sistema operativo è in formato JSON/XML/YAML, è possibile specificare il nome del file di configurazione del sistema operativo tramite fileName
. Specificare le coppie chiave-valore da sovrascrivere in "values".
Ecco alcuni esempi per ogni carico di lavoro:
esempio di configurazione 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"
}
}
]
}
]
}
]
esempio di configurazione di 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"
}
]
}
]
}
]
esempio di configurazione 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"
}
}
]
}
]
Per ulteriori informazioni sulle opzioni di configurazione di Trino, consultare i modelli ARM di esempio.
Esportare le configurazioni usando l'API REST
È anche possibile esportare le configurazioni del cluster per controllare i valori predefiniti e aggiornati. In questo momento, è possibile esportare solo le configurazioni tramite l'API REST.
Ottenere le configurazioni del cluster:
GET Request: /subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}
Se non si ha familiarità con l'invio di una chiamata API REST, è possibile seguire questa procedura.
Fare clic sul pulsante seguente in alto a destra nel portale di Azure per avviare Azure Cloud Shell.
Assicurati che Cloud Shell sia impostato su PowerShell in alto a sinistra. Eseguire il comando seguente per ottenere il token e impostare le intestazioni di richiesta 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 }
Impostare la variabile $restUri sull'URL della richiesta Get.
$restUri = 'https://management.azure.com/subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}'
Ad esempio:
$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
Nota
È possibile ottenere l'ID risorsa e up-to-date api-version dalla "vista JSON" del cluster nel portale di Azure.
Inviare la richiesta GET eseguendo il comando seguente.
Invoke-RestMethod -Uri $restUri -Method Get -Headers $authHeader | ConvertTo-Json -Depth 10