背景介紹
Kubernetes在1.24版本中移除了Dockershim,并從此不再默認支持Docker容器引擎。CCE 1.25集群中仍將繼續維護Docker容器引擎,并計劃在1.27版本中移除對Docker容器引擎的支持。如果您需要將容器引擎為Docker的節點遷移至Containerd節點,請參考本文。
前提條件
- 已創建至少一個集群,并且該集群支持Containerd節點,詳情請參見節點操作系統與容器引擎對應關系。
- 您的集群中存在容器引擎為Docker的節點或節點池。
注意事項
- 理論上節點容器運行時的遷移會導致業務短暫中斷,因此強烈建議您遷移的業務保證多實例高可用部署,并且建議先在測試環境試驗遷移的影響,以最大限度避免可能存在的風險。
- Containerd不具備鏡像構建功能,請勿在Containerd節點上使用Docker Build功能構建鏡像。Docker和Containerd其他差異請參考 容器引擎。
節點遷移步驟
步驟 1 登錄CCE控制臺,單擊集群名稱進入集群。
步驟 2 在左側選擇“節點管理”,并在節點列表中選擇一個或多個需要重置的節點,單擊“更多 > 重置節點”。
步驟 3 在容器引擎中選擇Containerd,其余參數可根據需要進行調整,也可以和創建時保持一致。


步驟 4 當節點狀態顯示為安裝中時,即表示正在重置節點。
待節點狀態顯示為運行中時,您即可檢查節點容器運行時是否切換成功,頁面中可以看到節點運行時版本已經切換為Containerd,并且登錄節點可以執行crictl等Containerd相關命令查看節點上運行的容器信息。
節點池遷移步驟
您可使用節點池拷貝功能,拷貝原有的Docker節點池,并將新節點池的容器引擎選擇為Containerd,其余配置和原Docker節點池保持一致。
步驟 1 登錄CCE控制臺,單擊集群名稱進入集群。
步驟 2 在左側選擇“節點管理”,切換至“節點池”頁簽,并在需要拷貝的Docker節點池“操作”欄中,單擊“更多 > 拷貝”。


步驟 3 在節點池配置頁面中,選擇容器引擎為Containerd,其余參數可根據需要進行調整,并完成節點池創建。


步驟 4 將創建完的Containerd節點池擴容至原Docker節點池的數量,并逐個刪除Docker節點池中的節點。
推薦使用滾動的方式遷移,即擴容部分Containerd節點,再刪除部分Docker節點,直至新的Containerd節點池中節點數量和原Docker節點池中節點數量一致。
說明
若您在原有Docker節點或節點池上部署的負載設置了對應的節點親和性,則需要將負載的節點親和性策略配置為的新Containerd節點或節點池。