溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Kubernetes應(yīng)用管理的難題是什么

發(fā)布時(shí)間:2021-12-14 14:10:08 來源:億速云 閱讀:128 作者:iii 欄目:大數(shù)據(jù)

這篇文章主要講解了“Kubernetes應(yīng)用管理的難題是什么”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Kubernetes應(yīng)用管理的難題是什么”吧!

研發(fā)對(duì)應(yīng)用管理的訴求

1. K8s all in one 的 YAML 文件


讓我們來看一下這樣一個(gè) K8s 的 yaml 文件,這個(gè) yaml 文件已經(jīng)是被簡(jiǎn)化過的,但是我們可以看到它仍然還是比較長(zhǎng)。

Kubernetes應(yīng)用管理的難題是什么

面對(duì)這樣一個(gè)廣受“復(fù)雜”詬病的 YAML 文件,我相信大家都會(huì)忍不住想該怎么簡(jiǎn)化。

自上而下,我們大致把它們分為三塊:

  • 一塊是擴(kuò)縮容、滾動(dòng)升級(jí)相關(guān)的參數(shù),這一塊應(yīng)該是應(yīng)用運(yùn)維的同學(xué)比較關(guān)心的;

  • 中間一塊是鏡像、端口、啟動(dòng)參數(shù)相關(guān)的,這一塊應(yīng)該是開發(fā)的同學(xué)比較關(guān)心的;

  • 最后一塊大家可能根本看不懂,通常情況下也不太需要明白,可以把它們理解為 K8s 平臺(tái)層的同學(xué)需要關(guān)心的。

看到這樣一個(gè) yaml 文件,我們很容易想到,只要把里面的字段封裝一下,把該暴露的暴露出來就好了。確實(shí),我們內(nèi)部就有 PaaS 平臺(tái)這么做。

2. 只透出部分字段:簡(jiǎn)單卻能力不足

內(nèi)部的某個(gè) PaaS 平臺(tái)精心挑選了部分字段,并做了一個(gè)漂亮的前端界面給用戶,只透出給用戶 5 個(gè)左右的字段,大大降低了用戶理解 K8s 的心智負(fù)擔(dān)。然后底層實(shí)現(xiàn)用類似模板的方式把用戶這五個(gè)字段渲染出來一個(gè)完整的 yaml 文件。

突出的字段大概如下圖所示:

Kubernetes應(yīng)用管理的難題是什么

不得不說這種方式是非常有效的,針對(duì)簡(jiǎn)單無狀態(tài)的應(yīng)用,精簡(jiǎn) API 可以大大降低 K8s 的門檻,快速并且高效的對(duì)接用戶,PaaS 平臺(tái)也順利讓大家使用了起來。同時(shí),我也從一些技術(shù)分享中了解到許多其他公司也是用這種類似的方式簡(jiǎn)化的 K8s API。

但是當(dāng)用戶的業(yè)務(wù)開始大規(guī)模對(duì)接以后,我們就會(huì)自然而然遇到有狀態(tài)的復(fù)雜應(yīng)用,用戶就會(huì)開始抱怨 PaaS 平臺(tái)能力不夠了。比如我們的 Zookeeper 多實(shí)例選主、主從切換這些邏輯,在這五個(gè)字段里就很難展開了。

歸根結(jié)底就是屏蔽大量字段的方式會(huì)限制基礎(chǔ)設(shè)施本身的能力演進(jìn),但是 K8s 的能力是非常強(qiáng)大而靈活的。我們不可能為了簡(jiǎn)化而放棄掉 K8s 強(qiáng)大的能力。

就比如當(dāng)前這個(gè)例子,我們很容易想到,針對(duì)復(fù)雜有狀態(tài)的應(yīng)用,應(yīng)該通過 K8s 里面的 CRD 和 Operator 來解決。

3. CRD+Operator: K8s 擴(kuò)展能力強(qiáng)大卻難以上手

確實(shí),我們內(nèi)部對(duì)接復(fù)雜應(yīng)用云原生化的時(shí)候,也推薦他們編寫 Operator,但是經(jīng)常出現(xiàn)這樣一段對(duì)話。

Kubernetes應(yīng)用管理的難題是什么

中間件的工程師跟我們說,我這有個(gè) Zookeeper 該用哪種 K8s 的 Workload 接入?。课覀兿肓讼?,K8s 設(shè)計(jì)如此精妙,自然沒有解決不了的問題,于是我們推薦他們使用 Operator。他們就懵了,說你們搞云原生的這幾年造新詞的能力絕對(duì)一流,之前都沒聽說過。

想想也是,業(yè)務(wù)方理解這些新概念不難,但是真的要自己去上手實(shí)現(xiàn),還是非常困難的。我們自然也覺得業(yè)務(wù)方更應(yīng)該專注于他們的業(yè)務(wù)本身,于是我們不得不幫他們一起寫。

可以看到,我們亟需一個(gè)統(tǒng)一的模型去解決研發(fā)對(duì)應(yīng)用管理的訴求。

感謝各位的閱讀,以上就是“Kubernetes應(yīng)用管理的難題是什么”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)Kubernetes應(yīng)用管理的難題是什么這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI