共用方式為


快速入門:使用 Azure Resource Manager 範本部署 Kubernetes 叢集

適用於:Azure 本機版本 23H2

本快速入門說明如何使用 Azure Resource Manager (ARM) 範本,在 AKS Arc 中部署 Kubernetes 叢集。 Azure Arc 將 Azure 管理功能擴充至任何位置的 Kubernetes 叢集,提供管理不同環境的統一方法。

開始之前

本文章假設您對 Kubernetes 概念有基本瞭解。

若要部署 ARM 範本,您需要部署之資源的寫入權限,以及 Microsoft.Resources/deployments 資源類型的全部作業存取權。 例如,若要部署虛擬機,您需要 Microsoft.Compute/virtualMachines/writeMicrosoft.Resources/deployments/* 許可權。 如需角色與權限的清單,請參閱 Azure 內建角色

必要條件

  • 具有有效訂用帳戶的 Azure 帳戶。
  • Azure 本機版本 23H2 叢集。
  • 最新的 Azure CLI 版本。

步驟 1:準備您的 Azure 帳戶

  1. 登入 Azure:開啟終端機或命令提示字元,並使用 Azure CLI 登入您的 Azure 帳戶:

    az login
    
  2. 設定您的訂用帳戶:以您的訂用帳戶識別碼取代 <your-subscription-id>

    az account set --subscription "<your-subscription-id>"
    

步驟 2:使用 Azure CLI 建立 SSH 金鑰組

az sshkey create --name "mySSHKey" --resource-group "myResourceGroup"

或者,使用 ssh-keygen 建立 SSH 金鑰組:

ssh-keygen -t rsa -b 4096

若要部署範本,您必須從 SSH 配對提供公開金鑰。 若要擷取公鑰,請使用 az sshkey show 命令:

az sshkey show --name "mySSHKey" --resource-group "myResourceGroup" --query "publicKey"

根據預設,SSH 金鑰檔案會建立在 ~/.ssh 目錄中。 az sshkey create執行 或 ssh-keygen 命令,以覆寫任何具有相同名稱的現有 SSH 金鑰組。

如需建立 SSH 金鑰的詳細資訊,請參閱在 Azure 中建立及管理驗證的 SSH 金鑰

步驟 3:檢閱範本

將範本和參數檔案從 AKSArc 存放庫下載到本機電腦。 檢閱所有預設值,並確定它們正確無誤。

步驟 4:部署範本

若要部署 Kubernetes 叢集,請執行下列命令:

az deployment group create \
--name "<deployment-name>" \
--resource-group "<resource-group-name>" \
--template-file "azuredeploy.json" \
--parameters "azuredeploy.parameters.json"

建立叢集需要幾分鐘的時間。 請等到叢集成功部署後,再移至下一個步驟。

步驟 5:確認部署

部署完成後,請使用下列命令來確認 Kubernetes 叢集已啟動並執行:

az aksarc show --resource-group "<resource-group-name>" --name "<cluster-name>" --output table

步驟 6:連線到叢集

  1. 若要連線到叢集,請執行 az connectedk8s proxy 命令。 命令會在用戶端電腦上下載並執行 Proxy 二進位檔,並擷取 與叢集相關聯的 kubeconfig 檔案:

    az connectedk8s proxy --name <cluster name> -g <resource group>
    

    或者,使用 Kubernetes 命令行用戶端 kubectl。 如果您使用 Azure Cloud Shell, 則已安裝 kubectl 。 若要在本機安裝和執行 kubectl ,請執行 az aksarc install-cli 命令。

    設定 kubectl 以使用 az aksarc get-credentials 命令連線到 Kubernetes 叢集。 此命令會下載認證,並設定 Kubernetes CLI 以使用認證:

    az aksarc get-credentials --resource-group "<resource-group-name>" --name "<cluster-name>"
    
  2. 使用 kubectl get 命令確認叢集的連線。 這個指令會傳回叢集節點的清單:

    kubectl get nodes -A --kubeconfig .\<path to kubecofig> 
    

    下列輸出範例會顯示上一個步驟中建立的三個節點。 確定節點的狀態為就緒

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-agentpool-27442051-vmss000000   Ready    agent   10m   v1.27.7
    aks-agentpool-27442051-vmss000001   Ready    agent   10m   v1.27.7
    aks-agentpool-27442051-vmss000002   Ready    agent   11m   v1.27.7
    

步驟 7:使用 Azure Resource Manager 範本部署節點集區 (選擇性)

Similiar 到步驟 3,從 AKSArc 存放庫下載節點集區範本和參數, 並檢閱預設值。

步驟 8:部署範本並驗證部署(選擇性)

檢閱並套用範本。 此過程需要幾分鐘的時間才能完成。 您可以使用 Azure CLI 來驗證已成功建立節點集區:

az deployment group create \
--name "<deployment-name>" \
--resource-group "<resource-group-name>" \
--template-file "azuredeploy.json" \
--parameters "azuredeploy.parameters.json"
az aksarc nodepool show --cluster-name "<cluster-name>" --resource-group "<resource-group-name>" --name "<nodepool-name>"

範本資源

connectedClusters

名稱 描述
type 資源類型。 Microsoft.Kubernetes/ConnectedClusters
apiVersion 資源 API 版本。 2024-01-01
name 資源名稱。 字串 (必要)
字元限制:1-63
有效字元:英數位元、底線和連字元。
以英數字元開頭及結尾。
location 資源所在的地理位置。 字串 (必要)。
tags 資源標籤。 標記名稱和值的字典。 請參閱 範本中的標記。
extendedLocation 虛擬機的擴充位置。 ExtendedLocation
identity 如果已設定,則為已連線叢集的身分識別。
properties 已連線叢集的屬性。

ProvisionedClusterInstances

名稱 描述
type 資源類型 microsoft.hybridcontainerservice/provisionedclusterinstances
apiVersion 資源 API 版本 2024-01-01
name 資源名稱 字串 (必要)。 請勿從 預設值變更此專案。
properties 已連線叢集的屬性。
extendedLocation 叢集的擴充位置。 ExtendedLocation

ExtendedLocation

名稱 描述
name 擴充位置的標識碼。 字串
type 擴充位置的類型。 CustomLocation

下一步

AKS Arc 概觀