Gérer la configuration du cluster
Important
Azure HDInsight sur AKS a été mis hors service le 31 janvier 2025. En savoir plus avec cette annonce.
Vous devez migrer vos charges de travail vers Microsoft Fabric ou un produit Azure équivalent pour éviter l’arrêt brusque de vos charges de travail.
Important
Cette fonctionnalité est actuellement en préversion. Les Conditions d’utilisation supplémentaires pour les préversions Microsoft Azure incluent des termes juridiques supplémentaires qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou qui ne sont pas encore publiées en disponibilité générale. Pour plus d’informations sur cette pré-version spécifique, consultez les informations sur Azure HDInsight sur AKS en pré-version. Pour des questions ou des suggestions de fonctionnalités, envoyez une demande sur AskHDInsight avec les détails et suivez-nous pour plus de mises à jour sur Communauté Azure HDInsight.
HDInsight sur AKS vous permet d’ajuster les propriétés de configuration pour améliorer les performances de votre cluster avec certains paramètres. Par exemple, les paramètres d’utilisation ou de mémoire. Vous pouvez effectuer les actions suivantes :
- Mettez à jour les configurations existantes ou ajoutez de nouvelles configurations.
- Exportez les configurations à l’aide de l’API REST.
Personnaliser les configurations
Vous pouvez personnaliser des configurations à l’aide des options suivantes :
Utilisation du portail Azure
Connectez-vous à portail Azure.
Dans la barre de recherche du portail Azure, tapez « HDInsight sur le cluster AKS », puis sélectionnez « Azure HDInsight sur les clusters AKS » dans la liste déroulante.
Sélectionnez le nom de votre cluster dans la page de liste.
Accédez au panneau « Gestion de la configuration » dans le menu de gauche.
Capture d’écran
Selon le type de cluster, les fichiers de configurations sont répertoriés. Pour plus d’informations, consultez les configurations de Trino, Flinket Spark.
Ajoutez ou mettez à jour la paire clé-valeur existante pour les configurations que vous souhaitez modifier.
Sélectionnez OK, puis cliquez sur Enregistrer.
Note
Certaines modifications de configuration peuvent nécessiter un redémarrage du service pour refléter les modifications.
Utilisation d’un modèle ARM
Conditions préalables
- modèle ARM pour votre cluster.
- Familiarité avec création et le déploiement de modèles ARM.
Dans le modèle ARM, vous pouvez modifier serviceConfigsProfiles et spécifier le nom du fichier de configuration OSS avec la valeur que vous souhaitez remplacer.
Si le fichier de configuration OSS est au format JSON/XML/YAML, vous pouvez fournir le nom du fichier de configuration OSS via fileName
. Fournissez les paires clé-valeur que vous souhaitez remplacer dans « values ».
Voici quelques exemples pour chaque charge de travail :
exemple de configuration 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"
}
}
]
}
]
}
]
exemple de configuration 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"
}
]
}
]
}
]
Exemples de configuration 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"
}
}
]
}
]
Pour plus d’informations sur les options de configuration Trino, consultez les exemples de modèles ARM.
Exporter les configurations à l’aide de l’API REST
Vous pouvez également exporter des configurations de cluster pour vérifier les valeurs par défaut et mises à jour. À ce stade, vous ne pouvez exporter des configurations que via l’API REST.
Obtenir des configurations de cluster :
GET Request: /subscriptions/{{USER_SUB}}/resourceGroups/{{USER_RG}}/providers/Microsoft.HDInsight/clusterpools/{{CLUSTERPOOL}}/clusters/{{CLUSTERNAME}}/serviceConfigs?api-version={{HDINSIGHTONAKS_API_VERSION}}
Si vous n’êtes pas familiarisé avec l’envoi d’un appel d’API REST, les étapes suivantes peuvent vous aider.
Cliquez sur le bouton suivant en haut à droite dans le portail Azure pour lancer Azure Cloud Shell.
capture d’écran
Vérifiez que Cloud Shell est défini sur PowerShell en haut à gauche. Exécutez la commande suivante pour obtenir un jeton et définir des en-têtes de requête 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 }
Définissez la variable $restUri sur l’URL de requête 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}}'
Par exemple :
$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
Note
Vous pouvez obtenir l’ID de ressource et up-to-date api-version à partir de la « vue JSON » de votre cluster dans le portail Azure.
Envoyez la requête GET en exécutant la commande suivante.
Invoke-RestMethod -Uri $restUri -Method Get -Headers $authHeader | ConvertTo-Json -Depth 10