“Kubespray 功能概述”:原始版本和我們的分支之間的區別

莫斯科時間 23 月 20.00 日 XNUMX 點,Sergey Bondarev 將舉辦免費網路研討會“Kubespray 功能概述”,他將告訴您如何準備 kubespray,以便快速、有效率且容錯地完成它。

Sergey Bondarev 將告訴您原始版本和我們的前叉版本之間的差異:

“Kubespray 功能概述”:原始版本和我們的分支之間的區別

原始版本和我們的叉子之間的區別。

那些已經接觸過cubespray的人現在可能想知道為什麼我將kubeadm與cubespray進行對比,因為創建集群的cubespray調用了kubeadm,乍一看像是一個用於安裝包和自動啟動的腳本。

但情況並非總是如此;最初,cubespray 獨立安裝了所有組件:

  • 組裝的etcd集群;
  • 安裝多維資料集,為靜態控制平面 Pod 和其他服務元件產生憑證、設定和存取令牌;
  • 為工作節點建立服務帳戶並將它們連接到叢集。

但前年他們砍掉了這個功能,只留下了 kubadm。 這在當時並不是很好。 我感到被冒犯了,於是我製作了自己的叉子,在其中我保留了經典的安裝模式,事實上,現在我使這個叉子保持最新狀態,從原始的cubespray中挑選提交給我自己。 一路走來,整理經典模式,進行新的改變。

結果,我的fork所建立的叢集和原來的叢集之間的差異就是kube-proxy和憑證的有效期限。

在我的分叉中,一切都保持原樣 - 代理多維資料集作為靜態 Pod 啟動,證書頒發 100 年。

在 Kubeadm 中,代理多維資料集作為守護程式啟動,頒發的憑證有效期為 1 年,且必須定期更新。 kubeadm 終於學會如何使用一個指令來做到這一點。

差異很小,今天我們使用這兩種選項。

工業運作時的特性(缺點):

該腳本是通用的,因此速度不是很快。 您可以透過消除檢查並從現成的映像啟動來顯著加快自己的速度。

劇本複雜,有不合邏輯的地方,遺產很重。 安裝額外的通過cubespray 的控制器和軟體 - 非常適合培訓和測試。 在舞會上。 對於操作而言,依賴Cubespray並不是一個很好的主意,而且軟體更新是使用「殺死它並製作一個新的」方法來實現的 - 這意味著服務的中斷。

只能新增工作節點,對於主節點來說,憑證存在一些細微差別,腳本不能處理所有可能出現的問題。

例如,我遇到了 kubeadm 的問題,在新增第二個和第三個 master 時崩潰了,之後,cubespray 在節點上重置了 kubeadm,並嘗試再次新增 master。

唯一的問題是,當故障發生時,第二個 etcd 實例已經成功註冊,並且由於重置後它也被刪除,我們最終陷入了一場噩夢 - 一個由兩個節點組成的 etcd 集群,其中一個是已刪除,第二個不再接受客戶。 結果,星團沒有出生就死了。

開源就是這樣。

所有這些以及更多內容都在免費網路研討會中“Kubespray 功能概述» 23 月 20.00 日,莫斯科時間 XNUMX 點。

Присоединяйтесь!

來源: www.habr.com

添加評論