全部產品
Search
文件中心

Container Service for Kubernetes:託管節點池概述

更新時間:Dec 21, 2024

如果您希望將節點進行分組納管,同時降低節點的營運負擔,例如作業系統(OS)CVE漏洞自動修複、kubelet自動升級、節點故障時重啟節點等,您可以啟用託管節點池。託管節點池是ACK推出的自動化營運型節點池,在普通節點池的基礎上支援多種自訂營運能力。

託管節點池介紹

使用情境

  • 只關註上層應用開發,不希望花費過多精力營運Worker節點。

  • 對底層節點的變更不敏感,業務Pod對遷移有較高的容忍度,更加關注業務的彈性而非不可變性。

架構圖

託管節點池

注意事項

準備工作

  • 託管節點池提供自動化營運能力,需要配置叢集維護視窗才可使用。您可以單擊託管節點池的操作列的託管配置,在託管配置頁面配置維護視窗。

  • 託管節點池支援作業系統(OS)CVE漏洞修複,使用該功能需要開通Security Center的旗艦版版且保證配額充足。ACK不額外收取費用。具體操作,請參見購買Security Center功能特性

  • ACK建議您務必開啟事件中心,否則將無法接收託管節點池的警示事件。關於開啟事件中心的具體操作,請參見事件監控

  • ACK建議您務必安裝ack-node-problem-detector,否則將無法檢測節點的異常情況。關於ack-node-problem-detector的具體說明,請參見ack-node-problem-detector

使用須知

  • 節點池升級

    ACK採用替換系統硬碟的方式執行託管節點池的節點升級時,會刪除節點系統硬碟上的資料。資料盤內的資料不受影響,請勿在系統硬碟上儲存任何持久化資料。

  • 排水

    託管節點池在替盤升級前會執行節點下線與排水,因此會造成Pod的重啟、長串連的中斷。執行排水操作時,ACK會先嘗試通過cordon命令或者Container Service管理主控台將節點設定為不可調度,然後驅逐該節點上的Pod。建議服務後端採用多副本部署在多個節點上,同時為重要應用配置PDB,以避免節點上Pod被驅逐後影響服務的整體可用性。

  • 自愈:

    託管節點池會監控節點的運行狀態,如果節點超過10分鐘未上報節點狀態,或者狀態為NotReady,Container Service會嘗試通過重啟故障節點來恢複潛在的故障。因此,節點上的Pod會被重啟。

託管節點池與普通節點池的區別

ACK提供普通節點池和託管節點池。在叢集和節點池運行狀態正常的情況下,您可以在節點池列表的操作列,單擊開啟託管關閉託管,轉換節點池類型。

  • 普通節點池:為您提供管理一組同質節點的能力,同一個節點池的節點具有相同的配置,例如規格、標籤(Label)、汙點(Taint)。您可以自行營運普通節點池內的節點。

  • 託管節點池:在普通節點池的基礎上,提供作業系統CVE漏洞自動修複能力,自動觸發故障節點修複等能力,從而實現託管節點池的自動化營運。

    說明

    託管節點池的自動營運能力可以簡化節點營運工作,但部分複雜的節點故障可能仍需人工修複。關於節點自動回復的更多資訊,請參見開啟節點池節點故障自動回復

託管節點池與普通節點池具體的對比項及說明如下表所示。

對比項

普通節點池

託管節點池

營運能力

由您自行管理。

部分營運託管於Container Service。

損毀修復

手動觸發。

自動檢測並觸發損毀修復。支援配置是否允許重啟節點來修複故障。

作業系統(OS)CVE修複

由您手動觸發作業系統CVE修複。

支援自動觸發作業系統CVE漏洞修複,包括高危、中危和低危漏洞。

kubelet小版本升級

由您手動觸發kubelet升級。

可配置自動升級kubelet小版本。

containerd運行時升級

由您手動觸發運行時升級。

可配置自動升級containerd運行時。當containerd有重大作業系統CVE漏洞時,預設自動升級修複。

ECS系統事件自動響應

由您自行響應ECS系統事件。

支援ECS系統事件的自動響應。

目前支援的系統事件類型如下。

  • 因系統維護執行個體重啟(SystemMaintenance.Reboot)

    自動響應流程

    1. ACK接收到事件後,同步傳送簡訊或站內信通知。請及時關注。

    2. 針對受影響的ECS執行個體執行節點排水,將節點上Pod遷移到其他可用的節點,並重啟ECS執行個體。

      • 如果節點池在ECS設定的計劃執行時間前有可用的維護視窗,ACK會在維護視窗內執行自動響應流程。否則,ACK會在ECS計劃執行時間的前一個小時執行該流程。

      • 排水操作會驅逐節點上的Pod。服務應用後端應採用多副本部署在多個節點上,同時建議為重要應用配置PDB,以避免節點上Pod被驅逐後影響服務的整體可用性。

      • 若排水失敗,ACK不會嘗試強制重啟執行個體。

相關文檔

  • 建立、查看、編輯、擴縮容、刪除節點池,添加已有節點以及移除節點等,請參見節點池管理

  • 節點池升級,託管節點池節點自動回復以及節點池作業系統CVE修複等,請參見節點池營運

  • 節點池部署集最佳實務,搶佔式執行個體節點池最佳實務以及遷移游離節點至節點池等,請參見節點池最佳實務

  • 節點與節點池相關問題,請參見節點與節點池FAQ