如需將購買的ECS執行個體添加到ACK叢集中作為Worker節點,或將移除的Worker節點重新加入節點池,您可以在Container Service管理主控台自動添加或手動添加節點。添加後,節點將預設使用節點池的配置,並在節點池維度進行統一管理。
使用限制
執行個體規格限制
限制項 | 說明 | 推薦解決方案 |
神龍裸金屬GPU執行個體 | 神龍裸金屬GPU執行個體(ECS規格類型系列為ebmgn7、ebmgn7e)不支援自動MIG清理。因此,ACK添加該類型的節點時會重設已有的MIG設定。由於重設時間不定,可能會出現重設時間過長導致自動添加節點失敗。 | 排查失敗原因,請參見裸金屬執行個體節點添加失敗怎麼辦?。 |
配額限制
限制項 | 說明 | 推薦解決方案 |
節點配額 | 需確保您的叢集節點配額充足。關於ACK叢集的配額限制,請參見配額與限制。 | 如需添加更多節點,前往配額中心調整。 |
ECS執行個體限制
限制項 | 說明 | 推薦解決方案 |
所屬帳號、地區、VPC | 僅支援添加同一帳號下的ECS執行個體,且添加的ECS執行個體必須與叢集在同一地區、同一VPC下。 | 重新建立符合要求的ECS執行個體或叢集。 |
所屬叢集 | 不支援添加已屬於其他叢集的ECS執行個體。 | 如ECS執行個體已屬於其他叢集,請先將該節點移除出舊叢集,再將節點添加到目的地組群中。移除方式,請參見移除節點。 |
網路限制
限制項 | 說明 | 推薦解決方案 |
Terway網路外掛程式 | 對待添加的ECS執行個體機型支援的最大Pod數有如下限制。
需要注意的是,不同彈性網卡模式支援的最大Pod數取決於該雲端服務器機型所支援的最大的彈性網卡(ENI)數。關於如何計算不同彈性網卡模式支援的最大Pod數,請參見使用Terway網路外掛程式;關於如何查看執行個體規格支援的Pod數量,請參見使用Terway網路外掛程式。 | |
對彈性網卡有如下限制。 | ||
當添加的節點包含新增可用性區域時,您需要為Terway更新vSwitch配置,否則Pod IP將從節點主網卡對應的vSwitch分配。 | ||
當添加已有節點到節點池時,已有節點上已經綁定的彈性網卡(ENI)會繼續保留,Pod IP會從已經綁定的彈性網卡所關聯的vSwitch上分配。請確保添加的節點中彈性網卡只包含一個主網卡。 | 如果有Pod IP不屬於您配置的vSwitch,請在叢集中移除節點,刪除除主網卡外的輔助網卡,再重新加入叢集。 | |
當添加已有節點到節點池時,需確保目標ECS執行個體已綁定叢集RAM Role,避免因許可權問題無法正確計算MaxPod(節點最大可用Pod數),繼而導致彈性網卡數量計算錯誤。 | ||
Flannel網路外掛程式 | 對叢集VPC下的系統路由表自訂路由條目數量存在限制,不能超過每個路由表中可保有的自訂路由條目配額,自訂路由條目的相關資訊,請參見路由表。 | 在配額中心調整。 |
IPv6雙棧 | 需要為ECS主網卡分配一個IPv6地址。 | 關於如何為ECS主網卡分配IPv6地址,IPv6通訊。 |
安全性群組限制
限制項 | 說明 | 推薦解決方案 |
安全性群組類型 | 添加已有ECS執行個體到節點池時,會將ECS執行個體加入到節點池安全性群組中。由於ECS的限制,ECS執行個體無法同時加入普通安全性群組和企業安全性群組。因此,ECS執行個體已加入的安全性群組類型必須與節點池安全性群組類型相同。 您可以單擊目標節點池後面的詳情,在基本資料頁簽中查看節點池的安全性群組資訊;可以登入ECS控制台查看ECS執行個體已加入的安全性群組資訊。關於安全性群組的詳細資料,請參見安全性群組概述。 | 節點池的安全性群組不支援修改,安全性群組的類型也不允許變更。如遇衝突,請通過以下方式解決。
|
安全性群組規則 | ECS執行個體已有安全性群組規則不能與即將加入的節點池安全性群組以及叢集安全性群組規則衝突。 | 提前將已有節點加入到節點池安全性群組中。 通過安全性群組規則檢測功能,檢測節點池安全性群組中的每一條規則。 |
安全性群組數量 | 添加已有ECS執行個體到節點池時,會將執行個體加入到節點池安全性群組中,需要保證ECS執行個體加入的安全性群組數量未超過限制(預設5個)。 | 關於安全性群組的數量限制以及如何申請提升ECS執行個體能夠加入的安全性群組數量,請參見安全性群組。 |
注意事項
執行個體釋放
添加到節點池的ECS執行個體不會隨叢集或節點池的刪除而釋放,需手動移除。如需手動移除,請參見移除節點。
相關計費
添加到叢集中的ECS執行個體不會隨叢集或節點池的刪除而釋放。請您關注ECS計費狀態,避免產生額外費用。更多資訊,請參見計費概述。
節點池和執行個體配置
向節點池中添加已有ECS執行個體時,其付費類型和規格保持不變。
本功能不支援開啟自動調整的節點池,即擴縮容模式配置為自動的節點池。
作業系統與雲端硬碟
強烈建議您在操作前做好相關備份,以免資料丟失造成損失。具體操作,請參見建立快照。
自動添加節點會根據節點池當前的作業系統重設該節點原有的作業系統;手動添加節點會保留節點原有作業系統。如需保留節點原作業系統,請手動添加節點。
自動添加節點時,原系統硬碟會被釋放,資料盤不會被釋放,但資料盤磁碟ID會發生變更,其中儲存的資料不受影響。
自動添加節點時,原系統硬碟的使用者快照會保留,自動快照則根據該系統硬碟是否開啟了自動快照隨雲端硬碟釋放來判斷是保留還是隨磁碟刪除。您可以登入ECS管理主控台,參見設定自動快照隨雲端硬碟釋放進行配置。
為確保快照額度充足,以順利完成周期性的自動快照策略,您可以刪除無需使用的使用者快照和自動快照。
自動或手動添加節點
自動或手動添加並不影響您叢集已有的節點和應用的運行。為避免相容性問題,不建議您將已建立服務的ECS執行個體初始化為Worker節點。
自動添加節點:會根據節點池當前的作業系統重設該節點原有的作業系統。如果不希望重設節點作業系統,請使用手動方式添加節點。
手動添加節點:會保留節點原有作業系統,即不重設作業系統。手動添加節點前,除使用限制外,還需關注如下限制。
不支援添加作業系統類型為ContainerOS的ECS執行個體。
作業系統不支援啟用Swap。
如果將容器和鏡像儲存在資料盤,則僅支援ext和xfs檔案系統。
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
在叢集列表頁面,單擊目的地組群名稱,然後在左側導覽列,選擇。
在節點池頁面,單擊目標節點池右側操作列下的
,然後單擊添加已有節點。
手動添加節點
需擷取安裝命令,登入到對應的ECS雲端服務器上進行安裝。每次只能添加一個ECS雲端服務器。
在選擇已有雲端服務器執行個體配置項頁面,選擇添加方式為手動添加,在已有雲端服務器的列表,選擇所需的ECS雲端服務器,然後單擊下一步。
在填寫執行個體資訊頁面,填寫相關資訊,然後單擊下一步。
配置項
說明
叢集ID/名稱
當前要添加的叢集資訊,已預設配置。
資料盤掛載
設定是否將容器和鏡像儲存在資料盤。
如果ECS已掛載資料盤,且最後一塊資料盤的檔案系統未初始化,系統會自動將最後一塊資料盤格式化為ext4,用於存放內容/var/lib/docker、/var/lib/kubelet(分別為Docker容器運行時和kubelet組件預設對應的資料目錄)。
重要被格式化的資料盤內原有資料將會丟失,請提前備份資料。
如果ECS未掛載資料盤,則不會自動掛載新的資料盤。
保留執行個體名稱
添加節點時,預設開啟保留執行個體名稱。如果您不需要保留執行個體名稱,您可以關閉保留執行個體名稱,此時會按照自訂節點名稱指定的規則來重新命名節點。
執行個體資訊
待添加雲端服務器執行個體的執行個體ID及名稱。
在添加完成頁面,複製執行命令,供下文遠端連線ECS執行個體使用,然後單擊完成。
登入ECS管理主控台,單擊左側導覽列中的執行個體與鏡像 > 執行個體,選擇叢集所在的地區,選擇需要添加的ECS執行個體。
單擊ECS執行個體右側的遠端連線,選擇遠端連線方式後進入ECS遠端連線介面。
關於不同方式的介紹,請參見ECS遠端連線方式概述。
根據頁面指引,輸入此前儲存的命令並執行指令碼。
指令碼執行成功後,該雲端服務器添加成功。
成功添加後,您可以在節點池頁面的操作列,單擊目標節點池對應的詳情,然後在節點管理頁簽查看添加的節點資訊。
自動添加節點
會列出當前帳號下可用的ECS執行個體,在控制台介面進行安裝部署,並自動添加到叢集。
在選擇已有雲端服務器執行個體設定精靈頁面,選擇添加方式為自動添加,在已有雲端服務器的列表中,選擇所需的ECS雲端服務器,然後單擊下一步。
在填寫執行個體資訊頁面,填寫相關資訊,然後單擊下一步。
配置項
說明
叢集ID/名稱
當前要添加的叢集資訊,已預設配置。
資料盤掛載
設定是否將容器和鏡像儲存在資料盤。
如果ECS已掛載資料盤,且最後一塊資料盤的檔案系統未初始化,系統會自動將最後一塊資料盤格式化為ext4,用於存放內容/var/lib/docker、/var/lib/kubelet(分別為Docker容器運行時和kubelet組件預設對應的資料目錄)。
重要被格式化的資料盤內原有資料將會丟失,請提前備份資料。
如果ECS未掛載資料盤,則不會自動掛載新的資料盤。
保留執行個體名稱
添加節點時,預設開啟保留執行個體名稱。如果您不需要保留執行個體名稱,您可以關閉保留執行個體名稱,此時會按照自訂節點名稱指定的規則來重新命名節點。
執行個體資訊
待添加雲端服務器執行個體的執行個體ID及名稱。
在添加已有執行個體到叢集對話方塊,仔細閱讀注意事項,然後單擊確定。
成功添加後,您可以在節點池頁面的操作列單擊目標節點池右側的詳情,然後在節點管理頁簽查看添加的節點資訊。
常見問題
ECS執行個體加入叢集後,後續ECS升降配是否會對叢集業務產生影響?
ECS升降配通常包含修改執行個體規格、修改公網頻寬計費方式、修改公網頻寬、修改資料盤計費方式等,詳情請參見升降配執行個體概述。不同的升降配方式對於ECS執行個體的影響不同。
添加已有節點後報錯,提示timeout,怎麼辦?
請排查節點與API Server CLB的網路是否可以連通,請先排查安全性群組是否符合要求。添加已有節點時安全性群組的使用限制,請參見安全性群組限制。關於網路不通的其他問題,請參見網路管理FAQ。
我可以將不同規格的已有節點添加到ACK叢集中嗎?
可以。您可以在節點池中指定多個執行個體規格,避免由於執行個體規格不可用或庫存不足,導致節點池彈出節點失敗。流程如下。
如何跨ACK叢集移動節點?
ACK不支援直接跨叢集移動節點,但您可以通過添加已有節點的方式來完成。流程如下。
添加已有節點後,節點池的期望節點數會自動變化嗎?
添加已有節點後,期望節點數會自動增加添加節點的數量。例如,您節點池配置的期望節點數為5,此時通過添加已有節點的方式在節點池中增加了1台ECS執行個體,那麼節點池的期望節點數會自動變為6。
相關文檔
除控制台外,您還可以通過OpenAPI(查詢添加已有節點到叢集節點池的指令碼)、CLI(添加已有ECS執行個體)將ECS執行個體添加至ACK叢集。
節點池功能上線前的老叢集中可能存在游離節點(不屬於任何節點池的叢集節點),請參見遷移游離節點至節點池將其納入節點池進行統一管理。