小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

容器戰(zhàn)爭(zhēng)

 KyunraWang 2018-05-05

引子



有意思的是 16 年我寫《Docker 的未來(lái)》的時(shí)候還被人「教育」過(guò)不懂 Docker,不好意思你大爺還是你大爺?,F(xiàn)在來(lái)看 CRI-O[2]、rkt[3] 甚至 Docker 自己的 containerd 發(fā)展趨勢(shì),只能回一個(gè)關(guān)愛智障的微笑并手動(dòng)再見。就連經(jīng)過(guò)了大量生產(chǎn)驗(yàn)證的老牌網(wǎng)絡(luò)組件 Calico[4] 都已在 3.X 版本之后不再維護(hù)和更新 libnetwork CNM 模型下的 Docker 網(wǎng)絡(luò)接口,去掉了對(duì) Mesos 的支持,還說(shuō)戰(zhàn)爭(zhēng)沒(méi)打完的不是蠢就是壞。

毫無(wú)疑問(wèn)戰(zhàn)爭(zhēng)已打完了,CNCF 天量資金加持下的 Kubernetes 贏得了天下,但它真的就無(wú)懈可擊么?

人!人!人!


不可否認(rèn) Kubernetes 是一個(gè)非常不錯(cuò)的系統(tǒng),無(wú)論是調(diào)度編排這個(gè)層面還是宏觀上架構(gòu)設(shè)計(jì)層面。你可以說(shuō)早期的 Kubernetes 就是娘不親爹不愛就那么幾個(gè)工程師打著 Google 旗號(hào)在開源界見縫插的這個(gè)針。無(wú)奈是豬對(duì)手加 G 家光環(huán),我一個(gè)開源系統(tǒng)怎么就做到了世界之王呢?

個(gè)人看來(lái)還是因?yàn)?G 家光環(huán)太過(guò)于耀眼。

前有 Mapreduce GFS bla bla 大量工業(yè)界論文,后有神乎其神的 Borg 把編排玩出花。大多數(shù)人選型的時(shí)候一看喲 G 家的東西啊,上上上,然后就沒(méi)然后了。再加上對(duì)手實(shí)在是不夠打,比如 Mesos 至今周邊無(wú)論是語(yǔ)言還是完善度都不統(tǒng)一(當(dāng)然你可以說(shuō)它兩層結(jié)構(gòu)注定的),再比如愚蠢的 Swarm mode 助攻。人又不傻,有爹的東西當(dāng)然最好啦。

然而我很不想說(shuō)的是,每一家的東西無(wú)論開源與否都是立足于自身業(yè)務(wù)上的,不是用了 G 家的東西就會(huì)讓你的團(tuán)隊(duì)成為 G 家的一毛一樣,就和 G 家平起平坐站在工程界金字塔的尖端了。手頭有什么牌就打什么牌,能贏那是技術(shù)好,但一對(duì)三真干不過(guò)四個(gè)二的。

我見過(guò)大多數(shù)用 Kubernetes 的團(tuán)隊(duì),很大程度上都是把 Kubernetes 當(dāng)黑箱用。規(guī)模小了搭建起來(lái)成本就很高,那么多概念上的東西在規(guī)模小的時(shí)候就去強(qiáng)加于業(yè)務(wù)真的有必要么?Pod 的設(shè)計(jì)不就是 Virtual Machine 下多進(jìn)程業(yè)務(wù)在容器時(shí)代沒(méi)辦法的一個(gè) Workaround,那服務(wù)治理概念一堆堆但本質(zhì)上沒(méi)有什么事是一個(gè) Proxy 解決不了的,有那不就再加個(gè) Proxy 么。另外規(guī)模大了這么一個(gè)大黑箱真出了什么毛病,怎么搞?我自己看 Kubelet 的執(zhí)行流程和實(shí)現(xiàn),包括對(duì)比 CRI-O、rktnetes containerd、docker-shim 等 Runtime 實(shí)現(xiàn)細(xì)節(jié)想找人交流交流都很難找到。另外還有社區(qū)有更新你跟不跟,不跟有 security 問(wèn)題怎么辦,升級(jí)出了幺蛾子怎么搞,要知道 Kubernetes 嚴(yán)格意義上可不算什么旁路編排和調(diào)度系統(tǒng),升級(jí)慘案還少么?
真不是用了 G 家的東西就和 G 家工程師一個(gè)水平了。

Kubernetes 的未來(lái)


不管怎么說(shuō),Kubernetes 已經(jīng)成為了事實(shí)的標(biāo)準(zhǔn)??梢灶A(yù)見的未來(lái)里面,在 CNCF 的支持下,社區(qū)是它最深的護(hù)城河。假如你需要一個(gè)能解決容器調(diào)度編排,能解決服務(wù)治理,能鏈路控制(升降級(jí)、流控、發(fā)現(xiàn)等),能一勞永逸開箱即用(拋開各種概念)的基礎(chǔ)設(shè)施,它是唯一的選擇,也是最好的選擇。

但它實(shí)在是太復(fù)雜了,遠(yuǎn)的 Pod 不說(shuō),近一點(diǎn)服務(wù)治理里面的 Sidecar 概念和我單獨(dú)起 SDK 中間件有啥區(qū)別。好你要說(shuō)不需要語(yǔ)言綁定是沒(méi)毛病,但比性能這種模式你也比不過(guò) in-memory 的設(shè)計(jì)?。?/section>

你想用 Istio[5] ok,上 Kubernetes。你想用 Linkerd[6] ok,上 Kubernetes 。拆開用是能用,但只有 Kubernetes 下,這些東西所宣稱的那些花樣你才玩得溜,這和強(qiáng)制綁定有啥區(qū)別。hmmm,新時(shí)代的 Apache httpd[7] 即視感有沒(méi)有?

那么隨著業(yè)務(wù)的增長(zhǎng),基礎(chǔ)平臺(tái)是抽象出來(lái)了,但依然需要大量人力成本去維護(hù)去學(xué)習(xí)。本來(lái)搞個(gè)平臺(tái)層面的東西就想自動(dòng)化壓低成本,現(xiàn)在倒好概念能和前端界一樣日新月異靠人堆,個(gè)人覺得并不是什么好事情。在戰(zhàn)爭(zhēng)結(jié)束前 Kubernetes 可能還沒(méi)這么多爭(zhēng)議,戰(zhàn)爭(zhēng)結(jié)束后眾口難調(diào)的情況下只有這一個(gè)靶子,攤手??梢韵胂蟮贸鲭S著時(shí)間的增長(zhǎng)對(duì) Kubernetes 復(fù)雜度的吐槽將會(huì)越來(lái)越多。同樣的,我也預(yù)計(jì)不久的將來(lái),和 Apache httpd 終究遭遇了 nginx 一樣,編排和調(diào)度系統(tǒng)的 「nginx」也會(huì)出現(xiàn)在我們視野,就像老牌 Hashicrop 下的 Nomad[8] 一樣等待著和 Kubernetes 平分天下。

新的戰(zhàn)場(chǎng)


Docker 是輸了編排和調(diào)度,也失去了那種號(hào)令天下的霸權(quán)。然而對(duì) Kubernetes 來(lái)說(shuō)最不幸的是產(chǎn)生容器的「工廠」標(biāo)準(zhǔn)依然在 Docker 手中。

無(wú)論是 OCI 鏡像標(biāo)準(zhǔn)和 Docker 鏡像標(biāo)準(zhǔn)親兄弟,還是運(yùn)行層面的 containerd。Kubernetes 整了 CRI/CNI 什么的,又扶持了 CRI-O 還有隔壁 Rkt 什么的,并沒(méi)有一點(diǎn)卵用,看看那個(gè) AppC 的概念還有人提么。containerd 在最新 RC 中內(nèi)置 CRI 支持,可以直接替換 kubelet 的 dockershim 實(shí)現(xiàn),也把之前的 cri-containerd 丟入了歷史的垃圾堆,已然成為了集大成的事實(shí)標(biāo)準(zhǔn)。

你 CRI-O 說(shuō)自己測(cè)試完備率更高,高得過(guò)一直內(nèi)置代碼在 Kubernetes 的 dockershim/containerd 一脈相承?你 rkt 說(shuō)自己進(jìn)程樹扁平,能比 containerd 直接掛容器到 systemd 下更平?況且都抽象控制平面了,下面 Runtime 不都是支持 runC、runV 混布么。還有你一個(gè) CRI-O 別的不學(xué),硬要去做個(gè)內(nèi)置 Pod 你讓隔壁的 Kubelet 沒(méi)飯吃怎么辦?

基礎(chǔ)設(shè)施是一定圖穩(wěn)的,在目前換 CRI-O Rkt 等沒(méi)有明顯顯著優(yōu)勢(shì)的情況下,甚至大劣的情況下,containerd 就是事實(shí)標(biāo)準(zhǔn)。Docker 回歸到了他應(yīng)該在的位置,那就是容器「引擎」。當(dāng)然了 containerd 的成功也是依托于 Kubernetes 的成功,隨著 dockershim 的實(shí)現(xiàn)走進(jìn)千家萬(wàn)戶。

而隨著 containerd 的日益成熟,新的編排系統(tǒng),新的系統(tǒng)架構(gòu),也就有了新的血液。在這之上產(chǎn)生一個(gè)足以威脅到 Kubernetes 的新基礎(chǔ)設(shè)施系統(tǒng),是完全可以期待的。

尾聲


即便站在 2018 年這個(gè)時(shí)間點(diǎn)上,我依然認(rèn)為調(diào)度和編排還是一件可以做的事情。怎么單獨(dú)的用 containerd 去驅(qū)動(dòng)容器,怎么解構(gòu)復(fù)雜 Pod 轉(zhuǎn)變?yōu)?native container (1 process 1 container)再通過(guò)上層的組合完成復(fù)雜業(yè)務(wù)形態(tài),怎么通過(guò) CNI 結(jié)合現(xiàn)有的基礎(chǔ)網(wǎng)絡(luò)等插件,怎么實(shí)現(xiàn)更高效的萬(wàn)臺(tái)機(jī)器編排等,依然還有想象力空間。

舊的戰(zhàn)爭(zhēng)已經(jīng)結(jié)束,新的戰(zhàn)場(chǎng)已經(jīng)硝煙四起。對(duì)于 containerd 的前途而言我個(gè)人是比較看好的。沒(méi)有歷史的包袱,又向下兼容各類系統(tǒng)的接口,穩(wěn)定性經(jīng)過(guò)了大量生產(chǎn)實(shí)踐,還可以很方便的二次開發(fā)。也許過(guò)幾年我們就能看到基于其新的調(diào)度編排「nginx」了吧。

相關(guān)鏈接:

  1. https://projecteru2./white-paper/

  2. http:///

  3. https:///rkt/

  4. https://www./

  5. https://github.com/istio/istio

  6. https:///

  7. https://httpd./

  8. https://www./


原文鏈接:https://zhuanlan.zhihu.com/p/35951990


Kubernetes入門與進(jìn)階實(shí)戰(zhàn)培訓(xùn)


本次培訓(xùn)內(nèi)容包括:Docker基礎(chǔ)、容器技術(shù)、Docker鏡像、數(shù)據(jù)共享與持久化、Docker三駕馬車、Docker實(shí)踐、Kubernetes基礎(chǔ)、Pod基礎(chǔ)與進(jìn)階、常用對(duì)象操作、服務(wù)發(fā)現(xiàn)、Helm、Kubernetes核心組件原理分析、Kubernetes服務(wù)質(zhì)量保證、調(diào)度詳解與應(yīng)用場(chǎng)景、網(wǎng)絡(luò)、基于Kubernetes的CI/CD、基于Kubernetes的配置管理等,點(diǎn)擊了解具體培訓(xùn)內(nèi)容。


    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多