全部產品
Search
文件中心

Container Service for Kubernetes:調整可使用的節點Pod數量

更新時間:Jun 19, 2024

單Worker節點支援的最大Pod數受網路外掛程式類型影響,在大部分情境下不支援變更。在Terway模式下,單節點支援的最大Pod數依賴於ECS執行個體所提供的彈性網卡數量;在Flannel模式下,單節點最大Pod數在建立叢集時指定。指定後不支援修改。Pod數量達到上限時,推薦您通過擴容節點池增加節點,提升可使用的Pod數量。

節點最大Pod數說明

Terway

節點最大容器網路Pod數

Terway不同模式使用的組件有所不同。使用不同的組件,支援配置的Pod數量、Pod維度網路、網路資料路徑也有所不同。詳情見下表:

說明

更多資訊,請參見使用Terway網路外掛程式

Terway模式

建立叢集時選擇的Terway模式

使用的組件

特點

節點最大容器網路Pod數量

Pod維度網路(固定IP、虛擬交換器、安全性群組)支援配置的Pod數量

網路資料路徑

共用ENI多IP模式

預設為terway-eniip,無需進行其他選擇。

terway-eniip

  • Pod使用ENI上的IP資源,多個Pod共用一個ENI。

  • 節點部署密度高。

ECS支援的彈性網卡數-1)×單個ENI支援的私人IP數

(EniQuantity-1)×EniPrivateIpAddressQuantity

說明

節點最大容器網路Pod數量>11。

0

  • veth

  • datapathv2

  • ipvlan

共用ENI多IP模式+Trunk ENI

您需要在建立叢集時選擇Trunk ENI。

terway-eniip + terway-controlplane

  • 在共用ENI多IP模式基礎上,增加了對Trunk ENI的支援,允許混合部署。

  • 使用Trunk ENI類型的Pod可配置獨立的虛擬交換器、安全性群組,支援固定IP。

  • 兼備部署密度高、配置靈活的特點。

ECS支援的彈性網卡數-1)×單個ENI支援的私人IP數

(EniQuantity-1)×EniPrivateIpAddressQuantity

說明

節點最大容器網路Pod數量>11。

ECS支援的總網卡數-ECS支援的彈性網卡數

EniTotalQuantity-EniQuantity

  • veth

  • datapathv2

  • ipvlan

獨佔ENI模式

Pod獨佔彈性網卡模式

terway-eni + terway-controlplane

Pod獨佔使用ENI資源,提供最佳網路效能。

ECS支援的彈性網卡數-1

EniQuantity-1

說明

節點最大容器網路Pod數量>6。

ECS支援的彈性網卡數-1

EniQuantity-1

獨佔

主機網路Pod數

主機網路Pod數預設為3,不支援修改。修改後可能會導致新的Pod無法分配IP,且在節點重啟後,單節點支援的最大Pod數會被重新置為預設值。

Flannel

Flannel模式的節點最大Pod數量(節點 Pod 數量)在建立叢集時指定,叢集建立後不支援修改。

image

提升可使用的Pod數量的方案

您可以參見下文,根據您的網路外掛程式選擇合適的Pod數量提升方案。以下方案提高的是您可使用的Pod數,並不是提高了單節點支援的最大Pod數。

通過擴容節點池增加節點(推薦)

適用範圍:Terway和Flannel。

操作說明:手動或自動擴容節點池以增加可使用的Pod數。具體操作,請參見擴縮容節點池節點伸縮

操作影響:業務不受影響。但是叢集規模過大可能對叢集的可用性及效能產生影響,請合理設計和使用規模化叢集。更多資訊,請參見大規模ACK Pro叢集使用建議

提升執行個體規格來擴容單節點Pod數

適用範圍:Terway

操作說明:通過升級Worker節點的執行個體規格來擴容單節點Pod數。具體操作,請參見升配Worker節點的資源。但節點支援的最大Pod數與節點規格並不是直接的線性關係。單節點支援的最大Pod數依賴於ECS執行個體規格類型系列所提供的彈性網卡數量。

操作影響:執行個體規格升配後,需要重啟ECS執行個體以使配置生效,可能會導致業務的短暫中斷。升級執行個體規格前,請根據實際負載情況,判斷是否需要擴容冗餘節點用於承接業務Pod,並將需要升配的節點排水並從ACK叢集中移除。在業務低峰期完成升配後,再將該節點添加到叢集中。關於升級執行個體規格的更多介紹(例如涉及的計費)和具體操作,請參見升降配方式概述升配Worker節點的資源;關於移除和添加已有節點的相關注意事項及具體操作步驟,請參見移除節點添加已有節點

重建叢集並重新規劃Pod網段

適用範圍:Flannel

操作說明:建立叢集,設定節點 Pod 數量的值。節點 Pod 數量的值即為單節點支援的最大Pod數。更多資訊,請參見使用Flannel網路外掛程式

操作影響:業務重建。

常見問題

Terway模式下,如何查看節點的最大容器網路Pod數?

  • 方式一:建立節點池時,在執行個體規格地區,通過Terway相容性(可支援 Pod 數量)查看某一執行個體規格支援的最大容器網路Pod數。

  • 方式二:先參考下列方式擷取計算資料,然後手動電腦型支援的Pod數。

    • 通過文檔查詢執行個體規格支援的彈性網卡數量。具體資訊,請參見執行個體規格類型系列

    • 通過OpenAPI進行查詢,通過指定已有節點的執行個體規格InstanceTypes,單擊發起調用,傳回值中EniQuantity表示執行個體規格支援的彈性網卡上限,EniPrivateIpAddressQuantity表示單個彈性網卡支援的私人IP數量。

如何查看現有節點支援的最大Pod數?

對於已建立完成的節點,您可以通過以下方式查看:

  1. 登入Container Service管理主控台,在左側導覽列選擇叢集

  2. 叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇節點管理 > 節點

  3. 節點頁面,查看容器組的總額度,即節點支援的最大Pod數。97.png

為什麼我剛建立了一個叢集,節點的Pod數量就快達到上限了?

叢集組件會以Pod的形式存在,佔用您的節點資源。部分組件可能會採用多副本形式。如果您建立叢集配置組件時啟用的功能較多,可能會佔用節點較多的Pod數量。建議您參見提升可使用的Pod數量的方案提升可用的Pod數量。

Terway模式下,可否手動修改彈性網卡數量或Pod總額度以提升單節點Pod上限?

不能。Terway模式的節點允許建立的Pod數量依賴ECS執行個體規格所提供的彈性網卡數量。即使您手動修改了Pod數量上限,實際使用時,新建立的、超出上限的Pod仍然會因為IP不足而調度失敗,會導致叢集巡檢、叢集升級前置檢查上報相關錯誤。

如果您已經手動修改了節點最大Pod數量,推薦您移除節點然後將該節點重新添加到叢集中。相關注意事項及具體操作步驟,請參見移除節點添加已有節點

為什麼相同CPU和記憶體規格的節點,可建立的Pod數卻不一樣?

節點支援的最大Pod數跟CPU和記憶體並不是直接的線性關係。Terway網路下,單節點支援的最大Pod數依賴於ECS執行個體規格類型系列所提供的彈性網卡數量。Flannel網路下,單節點預設支援的最大Pod數為256,個別叢集類型支援升配。