Démarrage rapide : Créer un pool de clusters HDInsight sur AKS à l’aide d’Azure CLI
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 de la préversion sur Azure HDInsight sur AKS . 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 introduit les concepts de pools de clusters et de clusters, permettant ainsi une exploitation complète de la valeur d'un data lakehouse.
Grappes de clusters sont un regroupement logique de clusters et gèrent un ensemble de clusters dans la même grappe, ce qui favorise une interopérabilité robuste entre plusieurs types de cluster. Il peut être créé dans un réseau virtuel existant ou en dehors d’un réseau virtuel.
Un pool de clusters dans HDInsight sur AKS correspond à un cluster dans l’infrastructure AKS.
Clusters sont des charges de calcul individuelles, telles qu'Apache Spark, Apache Flink ou Trino, qui peuvent être créées dans le même pool de clusters.
Pour chaque type de cluster, vous devez disposer d’un pool de clusters. Il peut être créé indépendamment ou vous pouvez créer un pool de clusters lors de la création du cluster. Dans ce guide de démarrage rapide, vous allez apprendre à créer un pool de clusters à l’aide d’Azure CLI.
Vérifiez que vous avez terminé les prérequis de l’abonnement avant de créer un pool de clusters.
Azure Cloud Shell est un interpréteur de commandes interactif que vous pouvez utiliser pour exécuter les étapes décrites dans cet article. Il dispose d’outils Azure courants préinstallés et configurés pour être utilisés avec votre compte.
-
Utilisez l’environnement Bash dans azure Cloud Shell. Pour plus d’informations, consultez démarrage rapide pour Bash dans Azure Cloud Shell.
Si vous préférez exécuter des commandes de référence CLI localement, installez l'Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Comment exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login. Pour terminer le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour d’autres options de connexion, consultez Connexion avec Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser des extensions avec Azure CLI.
Exécutez version az pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Cet article nécessite Azure CLI version 2.56.0 ou ultérieure. Si vous utilisez Azure Cloud Shell, la dernière version est déjà installée.
Si vous avez plusieurs abonnements Azure, sélectionnez l’ID d’abonnement approprié dans lequel les ressources doivent être facturées en utilisant la commande az account set. Pour plus d’informations, consultez Comment gérer les abonnements Azure – Azure CLI.
Vous pouvez également ouvrir Cloud Shell dans un onglet de navigateur distinct en accédant à https://shell.azure.com/bash.
La première étape consiste à définir les variables d’environnement. Les variables d’environnement sont couramment utilisées dans Linux pour centraliser les données de configuration afin d’améliorer la cohérence et la maintenance du système. Créez les variables d’environnement suivantes pour spécifier les noms des ressources que vous créez plus loin dans ce tutoriel :
export ResourceGroup="HDIonAKSCLI"
export Region=EastUS
export HDIonAKSClusterPoolName="contosopool"
export NodeType="Standard_E4s_v3"
export ClusterVersion="1.1"
Pour exécuter des commandes dans Azure à l’aide de l’interface CLI, vous devez d’abord vous connecter. Connectez-vous à l’aide de la commande az login
.
Un groupe de ressources est un conteneur pour les ressources associées. Toutes les ressources doivent être placées dans un groupe de ressources. La commande az group create crée un groupe de ressources avec les paramètres $ResourceGroup
et $Region
précédemment définis.
az group create --name $ResourceGroup --location $Region
Sortie:
{
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/HDIonAKSCLI",
"location": "eastus",
"managedBy": null,
"name": "HDIonAKSCLI",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Pour créer un pool de clusters HDInsight sur AKS dans ce groupe de ressources, utilisez la commande az hdinsight-on-aks clusterpool create
:
az hdinsight-on-aks clusterpool create --cluster-pool-name
--resource-group
[--api-server-authorized-ip-ranges]
[--cluster-pool-version]
[--enable-log-analytics {0, 1, f, false, n, no, t, true, y, yes}]
[--la-workspace-id]
[--location]
[--managed-rg-name]
[--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
[--outbound-type {loadBalancer, userDefinedRouting}]
[--private-server-enabled {0, 1, f, false, n, no, t, true, y, yes}]
[--subnet-id]
[--tags]
[--workernode-size]
Voici un exemple :
az hdinsight-on-aks clusterpool create --resource-group $ResourceGroup --cluster-pool-name $HDIonAKSClusterPoolName --location $Region --workernode-size $NodeType --cluster-pool-version $ClusterVersion
La création du pool de clusters HDInsight sur AKS prend quelques minutes. L’exemple de sortie suivant montre que l’opération créée a réussi.
Sortie:
{
"aksClusterProfile": {
"aksClusterAgentPoolIdentityProfile": {
"msiClientId": "00000000-0000-0000-0000-XXXXXXXX1",
"msiObjectId": "00000000-0000-0000-0000-XXXXXXX11",
"msiResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/MC_hdi-00000000000000000000XXXX_contosopool_eastus/providers/Microsoft.ManagedIdentity/userAssignedIdentities/contosopool-agentpool"
},
"aksClusterResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/hdi-00000000000000000000XXXX/providers/Microsoft.ContainerService/managedClusters/contosopool",
"aksVersion": "1.27.9"
},
"aksManagedResourceGroupName": "MC_hdi-00000000000000000000XXXX_contosopool_eastus",
"clusterPoolProfile": {
"clusterPoolVersion": "1.1"
},
"computeProfile": {
"count": 3,
"vmSize": "Standard_E4s_v3"
},
"deploymentId": "00000000000000000000XXXX",
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/HDIonAKSCLI/providers/Microsoft.HDInsight/clusterpools/contosopool",
"location": "EastUS",
"managedResourceGroupName": "hdi-00000000000000000000XXXX",
"name": "contosopool",
"provisioningState": "Succeeded",
"resourceGroup": "HDIonAKSCLI",
"status": "Running",
"systemData": {
"createdAt": "2024-05-31T15:02:42.2172295Z",
"createdBy": "john@contoso.com",
"createdByType": "User",
"lastModifiedAt": "2024-05-31T15:02:42.2172295Z",
"lastModifiedBy": "john@contoso.com",
"lastModifiedByType": "User"
},
"type": "microsoft.hdinsight/clusterpools"
}
Quand vous n’en avez plus besoin, nettoyez les ressources inutiles pour éviter les frais Azure. Vous pouvez supprimer le groupe de ressources, le pool de clusters et toutes les autres ressources du groupe de ressources à l’aide de la commande az group delete
.
Notes
Pour supprimer un pool de clusters, vérifiez qu’il n’existe aucun cluster actif dans le pool de clusters.