快速入門:使用 Azure CLI 在 AKS 叢集集區上建立 HDInsight
注意
AKS 上的 Azure HDInsight 將於 2025 年 1 月 31 日退場。 請於 2025 年 1 月 31 日之前,將工作負載移轉至 Microsoft Fabric 或對等的 Azure 產品,以免工作負載突然終止。 訂用帳戶中剩餘的叢集將會停止,並會從主機移除。
在淘汰日期之前,只有基本支援可用。
重要
此功能目前為預覽功能。 Microsoft Azure 預覽版增補使用規定包含適用於 Azure 功能 (搶鮮版 (Beta)、預覽版,或尚未正式發行的版本) 的更多法律條款。 若需此特定預覽版的相關資訊,請參閱 Azure HDInsight on AKS 預覽版資訊。 如有問題或功能建議,請在 AskHDInsight 上提交要求並附上詳細資料,並且在 Azure HDInsight 社群上追蹤我們以獲得更多更新資訊。
HDInsight on AKS 引進叢集集區和叢集的概念,可讓您實現資料湖存放庫的完整價值。
叢集集區是叢集的邏輯群組,並維護相同集區中的一組叢集,有助於跨多個叢集型別建立強固的互通性。 它可以在現有的虛擬網路內或虛擬網路外部建立。
HDInsight on AKS 中的叢集集區會對應至 AKS 基礎結構中的一個叢集。
叢集是個別的計算工作負載,例如 Apache Spark、Apache Flink 或 Trino,可在相同的叢集集區中建立。
您必須針對每個叢集類型擁有叢集集區。 它可以獨立建立,也可以在叢集建立期間建立新的叢集集區。 在此快速入門中,您將了解如何使用 Azure CLI 建立叢集集區。
必要條件
建立叢集集區之前,請確定已完成訂用帳戶必要條件。
啟動 Azure Cloud Shell
Azure Cloud Shell 是互動式殼層,可用來執行本文中的步驟。 它具有預先安裝和設定的共用 Azure 工具,可與您的帳戶搭配使用。
-
在 Azure Cloud Shell 中使用 Bash 環境。 如需詳細資訊,請參閱 Azure Cloud Shell 中的 Bash 快速入門。
若要在本地執行 CLI 參考命令,請安裝 Azure CLI。 若您在 Windows 或 macOS 上執行,請考慮在 Docker 容器中執行 Azure CLI。 如需詳細資訊,請參閱〈如何在 Docker 容器中執行 Azure CLI〉。
如果您使用的是本機安裝,請使用 az login 命令,透過 Azure CLI 來登入。 請遵循您終端機上顯示的步驟,完成驗證程序。 如需其他登入選項,請參閱使用 Azure CLI 登入。
出現提示時,請在第一次使用時安裝 Azure CLI 延伸模組。 如需擴充功能詳細資訊,請參閱使用 Azure CLI 擴充功能。
執行 az version 以尋找已安裝的版本和相依程式庫。 若要升級至最新版本,請執行 az upgrade。
本文需要 Azure CLI 2.56.0 版或更高版本。 若您使用的是 Azure Cloud Shell,即已安裝最新版本。
如果您有多個 Azure 訂用帳戶,請使用 az account set 命令來選取應對資源計費的適當訂用帳戶識別碼。 如需詳細資訊,請參閱 如何管理 Azure 訂用帳戶 – Azure CLI。
您也可以移至 https://shell.azure.com/bash,在另一個瀏覽器索引標籤中開啟 Cloud Shell。
定義環境變數
第一個步驟是定義環境變數。 環境變數通常用於 Linux,以集中設定設定,以改善系統的一致性和可維護性。 建立以下環境變數以指定您在本教學課程後面建立的資源的名稱:
export ResourceGroup="HDIonAKSCLI"
export Region=EastUS
export HDIonAKSClusterPoolName="contosopool"
export NodeType="Standard_E4s_v3"
export ClusterVersion="1.1"
使用 CLI 登入 Azure
為了使用 CLI 在 Azure 中執行命令,您需要先登入。 使用 az login
命令登入。
建立資源群組
資源群組是相關資源的容器。 所有資源都必須放置在資源群組中。 az group create 命令會使用先前定義的 $ResourceGroup
和 $Region
參數來建立資源群組。
az group create --name $ResourceGroup --location $Region
輸出:
{
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/HDIonAKSCLI",
"location": "eastus",
"managedBy": null,
"name": "HDIonAKSCLI",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
建立 AKS 叢集集區上的 HDInsight
若要在此資源群組的 AKS 叢集集區上建立 HDInsight,請使用 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]
以下是範例:
az hdinsight-on-aks clusterpool create --resource-group $ResourceGroup --cluster-pool-name $HDIonAKSClusterPoolName --location $Region --workernode-size $NodeType --cluster-pool-version $ClusterVersion
在 AKS 叢集集區上建立 HDInsight 需要幾分鐘的時間。 下列範例輸出顯示已建立作業成功。
輸出:
{
"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"
}
注意
如需叢集集區 CLI 命令的詳細資訊,請參閱命令。
清除資源
若要避免收取 Azure 費用,您應該清除不再需要的非必要資源。 您可以使用 az group delete
命令來移除資源群組、叢集集區和資源群組中的所有其他資源。
注意
若要刪除叢集集區,請確定叢集集區中沒有作用中的叢集。