在雲邊協同情境下,不同分組的節點間往往存在網路不互連、資源不共用、資源異構和應用獨立等明顯的隔離屬性,針對這種情境,Container Service Edge 版提供了節點池(NodePool)功能,將節點按照特定屬性抽象成節點池概念,以節點池的維度對不同分組的節點進行統一管理和營運。本文簡單介紹節點池的概念,分類,以及工作原理。
節點池分類
在雲邊協同情境下,Container Service Edge 版的節點池分成兩種類型:雲端節點池和邊緣節點池。
雲端節點池
雲端節點池的屬性和操作與ACK託管叢集Pro版一致。請參見雲端節點池概述。
邊緣節點池
邊緣節點池作為邊緣節點分組的抽象,建立邊緣節點池時您需要預先明確該節點池內節點的一些基本屬性,如雲邊網路連接、節點間網路互連、Pod網路模式等。另外,我們也建議您根據其他屬性,如CPU/GPU、地區、AMD64/Arm64等,將邊緣節點分散到多個邊緣節點池中管理。
在建立完成後,您可以通過編輯邊緣節點池批量管理節點池內節點的標籤和汙點。當所有的邊緣節點都移除叢集後,您可以刪除該邊緣節點池。
當多個節點池都需要部署同一套應用時,您可以使用應用集(YurtAppSet)將應用便捷地部署到多個節點池中。YurtAppSet提供了靈活的響應機制以感知節點池標籤的變化,統一管理多個節點池的工作負載配置,如執行個體數量和軟體版本等。
原生Kubernetes Service的後端可以分布在叢集中任意節點。因此,當兩個邊緣節點池間網路不互連,跨越不同邊緣節點池的Service流量,大機率會出現訪問不可達、或者訪問效率低下的問題。Service流量拓撲支援將Service流量限制在同一個邊緣節點池(或邊緣節點)上,從而避免邊緣情境下跨網域訪問導致的Service網路不通的問題。