共用方式為


Azure Arc on Azure Stack HCI 22H2 所啟用 AKS 的系統需求

適用於:Azure Stack HCI 版本 22H2;Windows Server 2022、Windows Server 2019

本文說明設定 Azure Arc 所啟用 Azure Kubernetes Service (AKS) 的需求。如需 Arc 所啟用 AKS 的概觀,請參閱 AKS 概觀

硬體需求

Microsoft建議從合作夥伴購買已驗證的 Azure Stack HCI 硬體/軟體解決方案。 這些解決方案經過設計、組合及驗證,可執行我們的參考架構,並檢查相容性和可靠性,以便快速啟動並執行。 您應該檢查您使用的系統、元件、裝置和驅動程式是否為每個 Windows Server 目錄的 Windows Server 認證。 如需已驗證的解決方案, 請參閱 Azure Stack HCI 解決方案 網站。

重要

生產部署的主機系統必須是實體硬體。 不支援巢狀虛擬化,其特徵為在虛擬機中部署 Azure Stack HCI 或 Windows Server 並安裝 AKS。

支援的硬體規格上限

不支持超過下列規格的 Azure Stack HCI 和 Windows Server 部署上的 AKS:

資源 最大值
每個叢集的實體伺服器 8 (Azure Stack HCI 版本 22H2 和 Windows Server)
VM 總數 200

計算需求

最小記憶體需求

您可以透過下列方式設定 AKS 叢集,在具有有限 RAM 的單一節點上執行 AKS:

叢集類型 控制平面 VM 大小 背景工作節點 更新作業 負載平衡器
AKS 主機 Standard_A4_v2 VM 大小 = 8GB N/A - AKS 主機沒有背景工作節點。 8GB N/A - AKS 主機會使用 kubevip 進行負載平衡。
工作負載叢集 Standard_A4_v2 VM 大小 = 8GB 1 個背景工作節點的 Standard_K8S3_v1 = 6GB 可以針對工作負載叢集升級重複使用此保留的 8GB。 如果 kubevip 用於負載平衡(而不是預設 HAProxy 負載平衡器),則為 N/A。

最低需求總計: 30 GB RAM

此最低需求適用於具有一個背景工作節點的 AKS 部署,以執行容器化應用程式。 如果您選擇新增背景工作節點或HAProxy負載平衡器,最終 RAM 需求會隨之變更。

Environment 每部伺服器的 CPU 核心 RAM
Azure Stack HCI 32 256 GB
Windows Server 容錯移轉叢集 32 256 GB
單一節點 Windows Server 16 128 GB

針對生產環境,最終重設大小取決於您計劃部署在 Azure Stack HCI 或 Windows Server 叢集上的應用程式和背景工作節點數目。 如果您選擇在單一節點 Windows Server 上執行 AKS,則不會取得在 Azure Stack HCI 或 Windows Server 叢集或 Windows Server 故障轉移叢集上執行 AKS 的高可用性等功能。

Azure Stack HCI 和 Windows Server 上 AKS 的其他計算需求符合 Azure Stack HCI 需求。 如需 Azure Stack HCI 伺服器需求的詳細資訊,請參閱 Azure Stack HCI 系統 需求。

您必須在叢集中的每部伺服器上安裝相同的作業系統。 如果您使用 Azure Stack HCI,叢集中的每部伺服器上都必須有相同的 OS 和版本。 如果您使用 Windows Server Datacenter,叢集中的每部伺服器上都必須有相同的 OS 和版本。 每個OS都必須使用 en-us 區域和語言選項。 安裝之後,您無法變更這些設定。

記憶體需求

Azure Stack HCI 和 Windows Server 上的 AKS 支援下列記憶體實作:

名稱 儲存體類型 必要容量
Azure Stack HCI 叢集 叢集共用磁碟區 1 TB
Windows Server Datacenter 故障轉移叢集 叢集共用磁碟區 1 TB
單一節點 Windows Server Datacenter 直接連結存放裝置 500 GB

針對 Azure Stack HCI 或 Windows Server 叢集,有兩個支援的記憶體組態可用於執行虛擬機工作負載:

  • 混合式記憶體 會使用快閃記憶體和硬碟(HDD)來平衡效能和容量。
  • 全快閃記憶體 使用固態硬碟 (SSD) 或 NVMe 將效能最大化。

Azure Stack HCI 不支援只有 HDD 型記憶體的系統,因此不建議在 Azure Stack HCI 和 Windows Server 上執行 AKS。 如需建議磁碟驅動器組態的詳細資訊,請參閱 Azure Stack HCI 檔。 在 Azure Stack HCI 目錄中驗證的所有系統都屬於這兩個支援的記憶體組態之一。

Kubernetes 會使用 etcd 來儲存叢集的狀態。 Etcd 會儲存執行中 Pod 的組態、規格和狀態。 此外,Kubernetes 會使用存放區進行服務探索。 作為 Kubernetes 作業的協調元件,以及其支援的工作負載,etcd 的延遲和輸送量非常重要。 您必須在 SSD 上執行 AKS。 如需詳細資訊,請參閱 etcd.io 效能

針對以 Windows Server Datacenter 為基礎的叢集,您可以使用本機記憶體或 SAN 型記憶體進行部署。 針對本機記憶體,建議您使用內建 儲存空間直接存取 或對等的認證虛擬 SAN 解決方案來建立超融合基礎結構,以呈現叢集共用磁碟區供工作負載使用。 針對 儲存空間直接存取,您的記憶體必須是混合式(flash + HDD),以平衡效能和容量,或將效能最大化的全閃 (SSD,NVMe) 。 如果您選擇使用 SAN 型記憶體進行部署,請確定您的 SAN 記憶體可以提供足夠的效能來執行數個虛擬機器工作負載。 舊版 HDD 型 SAN 記憶體可能無法提供執行多個虛擬機工作負載所需的效能層級,而且您可能會看到效能問題和逾時。

對於使用本機記憶體的單一節點 Windows Server 部署,強烈建議使用全快閃記憶體 (SSD, NVMe) 來提供所需的效能,以在單一實體主機上裝載多部虛擬機。 如果沒有快閃記憶體,HDD 上的較低效能層級可能會導致部署問題和逾時。

網路需求

下列需求適用於 Azure Stack HCI 22H2 叢集和 Windows Server Datacenter 叢集。 如需 Azure Stack HCI 23H2 上的網路需求,請參閱 網路需求

  • 針對 Azure Stack HCI 22H2 和 Windows Server,請確認您使用 Windows Admin Center 時已設定現有的外部虛擬交換器。 針對 HCI 或 Windows Server 叢集,此交換器及其名稱在所有叢集節點中都必須相同。 如需 HCI 23H2,請參閱 網路系統需求
  • 確認您已在所有網路適配器上停用 IPv6。
  • 若要成功部署,Azure Stack HCI 或 Windows Server 叢集節點和 Kubernetes 叢集 VM 必須具有外部因特網連線能力。
  • 請確定您為叢集定義的所有子網彼此之間和因特網之間可路由傳送。
  • 請確定 Azure Stack HCI 主機與租使用者 VM 之間有網路連線能力。
  • 所有節點都必須有 DNS 名稱解析,才能彼此通訊。
  • (建議)在您的 DNS 環境中啟用動態 DNS 更新,以允許 AKS 在 DNS 系統中註冊雲端代理程式一般叢集名稱以進行探索。

IP 位址指派

在 Arc 所啟用的 AKS 中,虛擬網路可用來將 IP 位址配置給需要它們的 Kubernetes 資源,如先前所列。 視您所需的 AKS 網路架構而定,有兩種網路模型可供選擇。

注意

此處為 AKS 部署定義的虛擬網路架構,與數據中心的基礎實體網路架構不同。

  • 靜態 IP 網路:虛擬網路會將靜態 IP 位址配置給 Kubernetes 叢集 API 伺服器、Kubernetes 節點、基礎 VM、負載平衡器,以及您在叢集上執行的任何 Kubernetes 服務。
  • DHCP 網路:虛擬網路會使用 DHCP 伺服器,將動態IP位址配置給 Kubernetes 節點、基礎 VM 和負載平衡器。 Kubernetes 叢集 API 伺服器和您在叢集上執行的任何 Kubernetes 服務仍會配置靜態 IP 位址。

最小IP位址保留

您至少應該為部署保留下列 IP 位址數目:

叢集類型 控制平面節點 背景工作節點 更新作業 負載平衡器
AKS 主機 1 個IP NA 2 個IP NA
工作負載叢集 每個節點 1 個 IP 每個節點 1 個 IP 5 個 IP 1 個IP

此外,您應該為 VIP 集區保留下列 IP 位址數目:

資源類型 IP 位址數目
叢集 API 伺服器 每個叢集 1 個
Kubernetes 服務 每個服務1個

如您所見,所需的IP位址數目會根據AKS架構和您在 Kubernetes 叢集上執行的服務數目而變動。 建議您為部署保留總共 256 個 IP 位址(/24 個子網)。

如需網路需求的詳細資訊,請參閱 AKS 中的節點網路概念和 AKS 中的容器網路概念。

網路埠和 URL 需求

由 Arc 需求啟用的 AKS

在 Azure Stack HCI 上建立 Kubernetes 叢集時,叢集中的每個伺服器都會自動開啟下列防火牆埠。

如果 Azure Stack HCI 實體叢集節點和 Azure Kubernetes 叢集 VM 位於兩個隔離的 vlan 上,則必須在兩者之間的防火牆開啟這些埠:

連接埠 來源 描述 防火牆注意事項
22 AKS VM 使用 Get-AksHciLogs時收集記錄的必要專案。 如果使用個別的 VLAN,實體 Hyper-V 主機必須存取此埠上的 AKS VM。
6443 AKS VM 與 Kubernetes API 通訊的必要專案。 如果使用個別的 VLAN,實體 Hyper-V 主機必須存取此埠上的 AKS VM。
45000 實體 Hyper-V 主機 wssdAgent gRPC 伺服器。 不需要跨 VLAN 規則。
45001 實體 Hyper-V 主機 wssdAgent gRPC 驗證。 不需要跨 VLAN 規則。
46000 AKS VM wssdCloudAgent 至 lbagent。 如果使用個別的 VLAN,實體 Hyper-V 主機必須存取此埠上的 AKS VM。
55000 叢集資源 (-CloudServiceCIDR) 雲端代理程式 gRPC 伺服器。 如果使用個別的 VLAN,AKS VM 必須存取此埠上的叢集資源 IP。
65000 叢集資源 (-CloudServiceCIDR) 雲端代理程式 gRPC 驗證。 如果使用個別的 VLAN,AKS VM 必須存取此埠上的叢集資源 IP。

如果您的網路需要使用 Proxy 伺服器連線到因特網,請參閱 在 AKS 上使用 Proxy 伺服器設定。

下列 URL 必須新增至您的允許清單:

URL 連接埠 注意
msk8s.api.cdp.microsoft.com 443 從 SFS 下載 Azure 本機產品目錄、產品位和 OS 映射時使用。 執行 時發生, Set-AksHciConfig 且您隨時從 SFS 下載時發生。

msk8s.b.tlu.dl.delivery.mp.microsoft.com msk8s.f.tlu.dl.delivery.mp.microsoft.com
80 從 SFS 下載 Azure 本機產品目錄、產品位和 OS 映射時使用。 執行 時發生, Set-AksHciConfig 且您隨時從 SFS 下載時發生。

login.microsoftonline.com login.windows.net
management.azure.com
msft.sts.microsoft.com graph.windows.net
443 用於在執行 時 Set-AksHciRegistration登入 Azure。


ecpacr.azurecr.io mcr.microsoft.com *.mcr.microsoft.com *.data.mcr.microsoft.com

*.blob.core.windows.net
美國端點:wus2replica*.blob.core.windows.net
443 在執行 時 Install-AksHci提取容器映像的必要專案。
<region.dp.kubernetesconfiguration.azure.com> 443 將 AKS 混合式叢集上線至 Azure Arc 的必要專案。
gbl.his.arc.azure.com 443 取得區域端點以提取系統指派受控識別憑證的必要項目。
*.his.arc.azure.com 443 提取系統指派受控識別憑證的必要項目。
k8connecthelm.azureedge.net 443 已啟用Arc的 Kubernetes 會使用 Helm 3 在 Azure 本機管理叢集上的 AKS 上部署 Azure Arc 代理程式。 Helm 用戶端下載需要此端點,以協助部署代理程式 Helm 圖表。
*.arc.azure.net 443 在 Azure 入口網站 中管理 AKS 混合式叢集的必要專案。
dl.k8s.io 443 下載及更新 Azure Arc Kubernetes 二進位檔的必要專案。
akshci.azurefd.net 443 執行 時 Install-AksHci,Azure 本機計費上 AKS 的必要專案。

v20.events.data.microsoft.com gcs.prod.monitoring.core.windows.net
443 定期用來從 Azure 本機或 Windows Server 主機傳送Microsoft必要的診斷數據。

注意

Arc 所啟用的 AKS 會儲存及處理客戶數據。 根據預設,客戶數據會保留在客戶部署服務實例的區域。 此數據會儲存在區域Microsoft營運的數據中心內。 對於具有數據落地需求的區域,客戶數據一律會保留在相同的區域內。

Azure Arc 功能的其他 URL 需求

先前的 URL 清單涵蓋將 AKS 服務連線至 Azure 以進行計費的最低必要 URL。 如果您想要在 AKS 工作負載叢集上使用叢集連線、自定義位置、Azure RBAC 和其他 Azure 服務,例如 Azure 監視器等等,則必須允許其他 URL。 如需 Arc URL 的完整清單,請參閱 已啟用 Azure Arc 的 Kubernetes 網路需求

您也應該檢閱 Azure Stack HCI URL。 由於 Azure Stack HCI 21H2 和更新版本在 Azure Stack HCI 節點上預設會安裝 Arc for 伺服器代理程式,因此您也應該檢閱 適用於伺服器代理程式的 Arc URL

AKS 中的延展式叢集

如延展式叢集概觀中所述,不支援使用 Windows 延展式叢集在 Azure Stack HCI 和 Windows Server 上部署 AKS。 建議您使用備份和災害復原方法來達到數據中心的作業持續性。 如需詳細資訊,請參閱 在 Azure Stack HCI 和 Windows Server 上使用 Velero 和 Azure Blob 記憶體執行工作負載叢集備份或還原,以及 使用 GitOps 搭配 Flux v2 在 AksHci 上部署設定,以取得應用程式持續性。

Windows Admin Center 需求

Windows Admin Center 是用來建立和管理 Azure Arc 所啟用 AKS 的使用者介面。若要在 Azure Stack HCI 和 Windows Server 上使用 Windows Admin Center 搭配 AKS,您必須符合下列清單中的所有準則。

以下是執行 Windows Admin Center 閘道的電腦需求:

  • Windows 10 或 Windows Server。
  • 向 Azure 註冊。
  • 在與 Azure Stack HCI 或 Windows Server Datacenter 叢集相同的網域中。
  • 您擁有擁有者許可權的 Azure 訂用帳戶。 您可以流覽至您的訂用帳戶,然後在 Azure 入口網站 左側選取 [訪問控制],然後選取 [檢視我的存取權],以檢查您的存取層級。

Azure 需求

您必須連線到您的 Azure 帳戶。

Azure 帳戶和訂用帳戶

如果您還沒有 Azure 帳戶,請 建立一個帳戶。 您可以使用任何類型的現有訂用帳戶:

  • 學生Visual Studio訂閱者的 Azure 點數免費帳戶。
  • 使用信用卡隨用隨付訂用帳戶。
  • 透過 Enterprise 合約 取得的訂用帳戶(EA)。
  • 透過 雲端解決方案提供者 (CSP) 計劃取得的訂用帳戶。

Microsoft Entra 許可權、角色和存取層級

您必須擁有足夠的權限,才能使用 Microsoft Entra 租用戶註冊應用程式。

若要檢查您是否有足夠的許可權,請遵循下列資訊:

如果應用程式註冊設定設為 [否],只有具有系統管理員角色的使用者才能註冊這些類型的應用程式。 若要瞭解提供給每個角色Microsoft Entra標識符中可用的系統管理員角色和特定許可權,請參閱 Microsoft Entra 內建角色。 如果您的帳戶已獲指派使用者角色,但應用程式註冊設定僅限於系統管理員使用者,請要求系統管理員指派其中一個系統管理員角色,這些角色可以建立和管理應用程式註冊的所有層面,或讓用戶註冊應用程式。

如果您沒有足夠的許可權來註冊應用程式,而您的系統管理員無法提供這些許可權,部署 AKS 最簡單的方式就是要求您的 Azure 系統管理員以正確的許可權建立服務主體。 系統管理員可以檢查下一節,以瞭解如何建立服務主體。

Azure 訂用帳戶角色和存取層級

若要檢查您的存取層級,請流覽至您的訂用帳戶,選取 Azure 入口網站 左側的 [訪問控制],然後選取 [檢視我的存取權]。

  • 如果您使用 Windows Admin Center 來部署 AKS 主機或 AKS 工作負載叢集,您必須擁有擁有 所在的 Azure 訂用帳戶。
  • 如果您使用PowerShell來部署 AKS 主機或 AKS 工作負載叢集,註冊叢集的用戶必須至少有下列其中一項:
    • 具有內 建擁有者 角色的用戶帳戶。
    • 具有下列其中一個存取層級的服務主體:

如果您的 Azure 訂用帳戶是透過 EA 或 CSP,部署 AKS 最簡單的方式就是要求您的 Azure 系統管理員以正確的許可權建立服務主體。 系統管理員可以檢查下一節,以瞭解如何建立服務主體。

選擇性:建立新的服務主體

執行下列步驟,以使用內 建擁有者 角色建立新的服務主體。 只有訂用帳戶擁有者可以使用正確的角色指派來建立服務主體。 您可以流覽至您的訂用帳戶、選取 Azure 入口網站 左側的訪問控制 (IAM),然後選取 [檢視我的存取權] 來檢查存取層級。

在 PowerShell 管理視窗中設定下列 PowerShell 變數。 確認訂用帳戶和租使用者是您想要用來註冊 AKS 主機以進行計費的內容:

$subscriptionID = "<Your Azure subscrption ID>"
$tenantID = "<Your Azure tenant ID>"

安裝並匯入 AKS PowerShell 模組:

Install-Module -Name AksHci

使用 Connect-AzAccount PowerShell 命令登入 Azure:

Connect-AzAccount -tenant $tenantID

執行 Set-AzContext 命令,設定您想要用來註冊 AKS 主機作為預設訂 用帳戶 的訂用帳戶:

Set-AzContext -Subscription $subscriptionID

執行 Get-AzContext PowerShell 命令,確認登入內容正確無誤。 確認訂用帳戶、租用戶和帳戶是您想要用來註冊 AKS 主機以進行計費的內容:

Get-AzContext
Name                                     Account                      SubscriptionName             Environment                  TenantId
----                                     -------                      ----------------             -----------                  --------
myAzureSubscription (92391anf-...        user@contoso.com             myAzureSubscription          AzureCloud                   xxxxxx-xxxx-xxxx-xxxxxx

執行 New-AzADServicePrincipal PowerShell 命令來建立服務主體。 此命令會建立具有 擁有者 角色的服務主體,並在訂用帳戶層級設定範圍。 如需建立服務主體的詳細資訊,請參閱 使用 Azure PowerShell 建立 Azure 服務主體。

$sp = New-AzADServicePrincipal -role "Owner" -scope /subscriptions/$subscriptionID

執行下列命令來擷取服務主體的密碼。 請注意,此命令僅適用於 Az.Accounts 2.6.0 或以下版本。 當您安裝 AksHci PowerShell 模組時,我們會自動下載 Az.Accounts 2.6.0 模組:

$secret = $sp.PasswordCredentials[0].SecretText
Write-Host "Application ID: $($sp.ApplicationId)"
Write-Host "App Secret: $secret"

從先前的輸出中,您現在有 部署 AKS 時可用的應用程式識別碼秘密 。 您應該記下這些專案,並安全地儲存這些專案。 建立之後,在 Azure 入口網站 的 [訂用帳戶] 底下存取控制,然後選取 [角色指派],您應該會看到新的服務主體。

Azure 資源群組

註冊之前,您必須在澳大利亞東部、美國東部、東南亞或西歐 Azure 區域中有 Azure 資源群組。

Azure 區域

警告

AKS Arc 目前僅支援在下列指定的 Azure 區域內建立叢集。 如果您嘗試在此清單外部的區域部署,就會發生部署失敗。

AKS Arc 服務用於註冊、計費和管理。 目前支援下列區域:

  • 美國東部
  • 美國中南部
  • 西歐

Active Directory 需求

若要讓具有 2 個以上實體節點的 AKS 故障轉移叢集在 Active Directory 環境中以最佳方式運作,請確定符合下列需求:

注意

單一節點 Azure Stack HCI 或 Windows Server 部署不需要 Active Directory。

  • 設定時間同步處理,讓所有叢集節點和域控制器的分歧不會超過 2 分鐘。 如需設定時間同步處理的相關信息,請參閱 Windows 時間服務
  • 請確定用來新增更新和管理 AKS 或 Windows Server Datacenter 叢集的用戶帳戶在 Active Directory 中具有正確的許可權。 如果您使用組織單位 (OU) 來管理伺服器和服務的組策略,用戶帳戶需要 OU 中所有物件的清單、讀取、修改和刪除許可權。
  • 針對 AKS 或 Windows Server Datacenter 叢集的伺服器和服務使用不同的組織單位 (OU)。 使用個別的 OU 可讓您以更細微度來控制存取權和許可權。
  • 如果您在 Active Directory 中的容器上使用 GPO 範本,請確定在 Azure Stack HCI 和 Windows Server 上部署 AKS 不受原則限制。

下一步

滿足上述所有必要條件之後,您可以使用下列方式在 Azure Stack HCI 上設定 AKS 主機: