共計 1342 個字符,預計需要花費 4 分鐘才能閱讀完成。
丸趣 TV 小編給大家分享一下 Rancher 2.4 如何實現零宕機升級集群,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
什么是零宕機升級集群
Rancher 2.4 已于上周 GA,在 Rancher 2.4 中,我們正式引入了零宕機集群升級功能。通俗來說,這個功能可以讓你在飛機飛行過程中更換引擎,而不受任何干擾。開發人員可以繼續將應用程序部署到集群,用戶也可以繼續使用服務而不會受到干擾。與此同時,與 Rancher 的 OOB(out of band)Kubernetes 更新結合使用之后,集群 operator 可以在已發布版本的數小時內安全地發布維護和安全更新。
在 Rancher 之前的版本中,RKE 首先升級 etcd 節點,并且注意不中斷 quorum。然后 Rancher 立刻迅速升級所有控制平面的節點,最后所有 worker 節點也會馬上升級。這導致 API 和工作負載可用性會出現短暫故障。此外,一旦控制平面更新,Rancher 便將集群狀態視為“active”,使得 operator 可能不知道工作節點依舊在升級中。
在 Rancher 2.4 中,我們優化了整個升級流程以保證 CI/CD 流水線的正常交付和工作負載持續為流量提供服務。在整個過程中,Rancher 會以更新狀態查看集群,這使 operator 可以快速看到集群中正在發生的某些事情。
Rancher 依舊先從 ectd 節點開始升級,一次升級一個節點,并且注意不破壞 quorum。作為額外的預防措施,operator 會在升級前對 etcd 和 Kubernetes 配置進行快照。并且如果你需要回滾,整個集群可以恢復到升級前的狀態。
如你所知,部署應用程序到集群需要 Kubernetes API 可用。在 Rancher 2.4 中,Kubernetes 控制平面節點也會一次升級一個。第一臺 server 將會 offline、升級然后放回集群。接下來,僅當之前的節點報告其狀態為健康時,控制平面節點才會開始升級。這一行為保證了 API 在升級過程中始終響應請求。
Rancher 2.4 節點升級的兩大更改
集群上的大多數活動發生在 worker 節點上。在 Rancher 2.4 中,節點的升級方式發生了兩個重大變化。第一個是可以設置單次升級 worker 節點的數量。對于傳統的方法或者較小的集群,operator 可以一次只選擇一個節點進行升級。對于較大集群的 operator 而言,可以調整設置以升級更大的批處理規模。該選項在風險和時間之間取得平衡,并提供了最大的靈活性。第二個更改是 operator 可以在 worker 節點升級前選擇消耗工作負載。首先驅逐節點可以最大程度地減少 Pod 重新啟動對 Kubernetes 次要版本升級的影響。
諸如 CoreDNS、NGINX Ingress 和 CNI 驅動程序之類的附加服務與 worker 節點同步更新。Rancher 2.4 公開了每種附加部署類型的升級策略,這使得附加升級可以使用原生 Kubernetes 可用性結構。
以上是“Rancher 2.4 如何實現零宕機升級集群”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!