本文概述了 Azure Kubernetes Service (AKS) 中的節點自動配置(NAP),包括其運作方式、升級行為、前置條件、限制及入門資源。
對於大多數生產環境中的 AKS 工作負載,建議預設採用 AKS Automatic。 AKS 自動包含預先設定的 NAP 功能,並提供可投入生產環境的作業基準,以及具 SLA 支援的 Pod 就緒能力。
什麼是 AKS 中的節點自動佈建?
當您將工作負載部署至 AKS 時,您必須選取適當的虛擬機器 (VM) 大小,作為節點集區設定的一部分。 隨著工作負載變得更加複雜,您可能有不同的工作負載,具有不同的資源需求,這使得設計大量資源請求的 VM 組態變得更加困難。
節點自動佈建 (NAP) 可自動佈建和管理工作負載的最佳 VM 組態,以簡化此程式。 NAP 會使用擱置中的 Pod 資源需求來決定最佳 VM 組態,以最有效率且符合成本效益的方式執行工作負載。
NAP 會自動部署、配置並管理 Karpenter 在你的 AKS 叢集上,並基於開源的
在 AKS Automatic 中,NAP 預設已完成預先設定。 在 AKS 標準中,你可以明確啟用並設定 NAP。
選擇用於 NAP 的 AKS Automatic 或 AKS Standard
請參考以下指引來選擇你的起點:
| 劇本 | 建議的路徑 | 原因為何 |
|---|---|---|
| 大多數生產環境工作負載 | AKS 自動化系统 | NAP 已預先設定,Pod 就緒狀態受 SLA 保障,且第 2 天的節點維運作業得以減少。 |
| 進階自訂平台需求 | AKS 標準搭配 NAP | 可對叢集和佈建組態進行更多手動控制。 |
| 更快進入生產環境,減少 VM 規劃 | AKS 自動化系统 | 降低節點規模調整與生命週期管理作業的營運開銷。 |
| 從一開始就能進行平台的精細微調 | AKS 標準搭配 NAP | 提供更靈活的自訂控制與操作模式。 |
如需 AKS Automatic 概覽,請參閱 Introduction to Azure Kubernetes Service (AKS) Automatic。
節點自動佈建如何運作?
節點自動佈建可佈建、調整和管理叢集中的虛擬機器 (節點) 以因應待處理的 Pod 壓力。
節點自動佈建的關鍵元件
NAP 會使用下列主要元件來協助管理叢集的節點:
| 元件 | Description |
|---|---|
NodePool 和 AKSNodeClass |
您建立和管理的自訂資源定義 (CRD),以定義工作負載的節點佈建原則、VM 規格和限制。 |
NodeClaims |
由 NAP 管理,以代表您可以監視之佈建節點的目前狀態。 |
| 工作量資源需求 | 來自 Pod、部署、作業與其他 Kubernetes 資源的 CPU、記憶體與其他規格,以推動佈建決策。 |
小提示
在 AKS 自動 叢集中,NAP 預先配置並由 莢艙準備服務協議(SLA )支持,保證 99.9% 合格艙艙準備作業能在 5 分鐘內完成。 這表示你的工作負載能在適當大小的節點上迅速開始運行,無需手動選擇虛擬機或容量規劃。
對大多數生產團隊而言,這使 AKS Automatic 成為可預測啟動行為及降低第二天營運開銷的預設起點。
節點自動佈建節點的 Kubernetes 升級行為
節點自動佈建節點的 Kubernetes 升級會跟隨控制平面 Kubernetes 版本。 如果您執行叢集升級,您的節點會自動更新,以遵循與控制平面相同的版本設定。
建議您設定 Kubernetes 自動升級 通道,以自動處理叢集的 Kubernetes 升級。 我們也建議您為叢集設定 計劃性維護時段 。
aksManagedAutoUpgradeSchedule 維護時段可讓您控制何時執行指定自動升級通道所排程的叢集升級。 欲了解更多資訊,請參見 使用 計劃性維護來排程及控制您的 Azure Kubernetes Service (AKS) 叢集升級。
先決條件
若要在 AKS 中使用節點自動佈建,您需要下列必要條件:
- 一個 Azure 訂閱。 如果您沒有帳戶,您可以建立 免費帳戶。
- Azure CLI 版本
2.76.0以上。 若要尋找版本,請執行az --version。 欲了解更多安裝或升級Azure CLI的資訊,請參見 Install Azure CLI。
限制和不支援的功能
下列限制和不支援的功能適用於 AKS 中的節點自動布建:
- Windows 節點池不被支援。
- 不支援 IPv6 叢集。
- 不支援服務主體。 您可以使用系統指派或使用者指派的受控識別。
- 您無法停止啟用 NAP 的 叢集 。
- 建立已啟用 NAP 的叢集之後,您就無法變更 叢集輸出輸出類型 。
- 在自訂虛擬網路(VNet)建立 NAP 叢集時,必須使用 Standard Load Balancer。 基本的 Load Balancer 不被支援。
開始使用 AKS 上的節點自動配置
如果你要開始新的生產工作負載,請先從 AKS 自動開始:
對於 AKS 標準或進階 NAP 自訂情境,請使用以下資源: