Serverless 终结 Kubernetes?
戳藍字“CSDN云計算”關(guān)注我們哦!
Kubernetes 是基礎(chǔ)架構(gòu)管理的終極解決方案嗎?還是說我們更加需要 Serverless?究竟哪種技術(shù)能夠解救運維團隊?不要忘記,NoOps 的世界即將到來。
作者 | Daniele Fontani
譯者 | 彎月
封圖 | CSDN 下載自 VCG
出品 | CSDN 云計算(ID:CSDNcloud)
以下為譯文:
你覺得 Kubernetes 是 DevOps 世界里最好的技術(shù)嗎?它是終極解決方案嗎?當(dāng)然,這個世界上沒有終極解決方案,以前沒有今后也不會有,技術(shù)都是瞬息萬變的,我們需要時刻做好準(zhǔn)備。我很喜歡 Kubernetes,很高興再次討論這個話題。Kubernetes 是當(dāng)前 DevOps 世界里最熱門的技術(shù)。在本文中,我們將共同探討這樣一個問題:
Kubernetes 是基礎(chǔ)架構(gòu)管理的終極解決方案嗎?還是說我們更加需要 Serverless?究竟哪種技術(shù)能夠解救運維團隊?不要忘記,NoOps 的世界即將到來。
我認為變革是技術(shù)世界里的常態(tài)。我們的祖先出門騎馬,而我們乘坐飛機。這就是技術(shù)進步的象征。
在過去的幾年中,技術(shù)世界發(fā)生了一次小小的革命,越來越多的應(yīng)用程序從虛擬機移到了容器中,這主要歸功于 Kubernetes 部署。?
在這場革命發(fā)生期間,還有一個雖小卻很強大的技術(shù)流行了起來,那就是“Serverless ”。大多數(shù)人將其視為惡魔,而有些人則認為它是拯救開發(fā)人員于運維噩夢的“白馬王子”。下面就讓我們一起來看一看這究竟是機遇還是麻煩。
Kubernetes 和 Serverless 之間有什么區(qū)別?
Serverless 是一種云模型,可以幫助你擺脫服務(wù)器和基礎(chǔ)架構(gòu)的束縛。其目的是省卻一定的成本,縮短產(chǎn)品上市的時間,減少運維與開發(fā)團隊之間的摩擦。具體來說,你可以想象有一堵墻能夠吸收你的代碼,并負責(zé)執(zhí)行代碼,這堵墻就是 Serverless。
最常見的 Serverless 實現(xiàn)是帶有 SDK 的無狀態(tài)容器,負責(zé)將你的代碼集成到系統(tǒng)中,并根據(jù)資源的使用情況向你收費。在大多數(shù)情況下,我們只需將我們的函數(shù)上傳到云(函數(shù)即服務(wù),Functions as a Service,即 FaaS),然后通過 HTTP 調(diào)用這些函數(shù)。主流云提供商都提供了類似的云體驗:
亞馬遜:AWS Lambda
微軟 Azure:Azure Functions
谷歌云:Cloud Functions
當(dāng)然并不是真的沒有服務(wù)器。只不過你看不到它們,因為它們被供應(yīng)商藏了起來,并用它們來提供服務(wù)。服務(wù)器仍在運行,但是你看不到內(nèi)存、CPU 或磁盤空間。你只需關(guān)注代碼,將精力放在真正需要的地方。
那么,什么是 Kubernetes?你可以將 Kubernetes 視為運行分布式系統(tǒng)的框架,這些系統(tǒng)源自 Docker 鏡像。Kubernetes 能夠滿足規(guī)模擴展的需求,還能夠管理好部署以及負載平衡。Kubernetes 利用簡潔且可重復(fù)使用的 YAML 文件來書寫配置,部署出來的環(huán)境可輕松復(fù)制。
你只需要更改一些配置文件,就可以全權(quán)掌控容器實例(服務(wù)和 Pod)、網(wǎng)絡(luò)以及部署。Kubernetes 的功能包括擴展規(guī)模、故障轉(zhuǎn)移以及部署模式等等。
與 Serverless 一樣,Kubernetes 可以幫助系統(tǒng)管理員輕松地完成復(fù)雜的體系結(jié)構(gòu)。這項技術(shù)可以將費時費力的傳統(tǒng)部署轉(zhuǎn)變成智能快捷的方式。NoOps 的時代就要來了!
Kubernetes 有哪些優(yōu)點?
Kubernetes 最大的優(yōu)勢在于,你可以像處理常規(guī)服務(wù)器一樣處理集群,同時還無需管理物理機器。從邏輯上講,服務(wù)器和集群組件是對等的關(guān)系。你可以把 Pod 和服務(wù)當(dāng)成虛擬機來實例化。此外,你還擁有網(wǎng)絡(luò)、存儲等等。因此,你可以通過操控底層的集群來深入控制所有組件。
與 Serverless 平臺相比,Kubernetes 的優(yōu)勢如下:
與過往技術(shù)有良好的兼容性。如果你正在使用容器,那么毫不費力就可以移動到 Kubernetes 上;如果你沒有使用容器,那么也只需將應(yīng)用程序組件容器化。
良好的控制。
供應(yīng)商的限制較少,Kubernetes 就是單純的 Kubernetes,而 Docker 容器也只是 Docker 容器而已。從理論來講,你只需點一下鼠標(biāo)即可將基礎(chǔ)架構(gòu)移動到其他地方。
可以微調(diào)每個組件的功能。
可在自建的基礎(chǔ)設(shè)施上運行(比如可以用于開發(fā)環(huán)境,或者極端情況,或者只是你想嘗試些瘋狂的東西)。
成本預(yù)測。你只需支付集群資源的費用,比 Serverless 更好預(yù)測。
Serverless 的優(yōu)點是什么?
Kubernetes 在減少系統(tǒng)管理員工作方面邁出了一大步,但還沒有減少到零。Serverless 可以從根本上避免所有系統(tǒng)管理組件,你唯一需要關(guān)心的就是源代碼。就好像一組樂高積木,將它們拼在一起。每一塊都可以單獨運行,你只需要讓積木塊之間正確溝通即可,僅此而已。由于 FaaS 解決方案需要思想上的轉(zhuǎn)變,因此似乎很難實施。在這種情況下,你可以采用一些“軟”Serverless 解決方案——無需更改即可直接托管你的應(yīng)用程序。Heroku 就是這類的一個解決方案,它從服務(wù)器和傳統(tǒng)的 DevOps 中進行了抽象,提供了無運維、Serverless 的體驗,可以促進應(yīng)用程序的開發(fā),減輕所有托管負擔(dān)。
Serverless 會終結(jié) Kubernetes 嗎?
現(xiàn)如今,Serverless 還是一項很新的技術(shù),第一版的 AWS Lambda 于 2014 年發(fā)布。同年,Docker 也邁出了第一步(第一版于 2013 年發(fā)布,但我不確定發(fā)布時是否可以投入生產(chǎn)環(huán)境)。而 Kubernetes 誕生于 2014 年。
因此,我們可以說,Serverless 與容器幾乎同時問世,不分伯仲。從這個角度來看,Serverless 并非誕生于 Kubernetes 之后,因此我們不能認為 Serverless 將取代容器。二者只是 Web 應(yīng)用程序中實現(xiàn)托管的兩種不同的方法。也許在某些情況下,你可能更喜歡 Serverless ,而有些時候則會更喜歡 Kubernetes。那么具體選擇哪個呢?不得不說這要視具體情況而定。普通的咨詢師與優(yōu)秀的咨詢師之間的區(qū)別就在于,優(yōu)秀的咨詢師了解許多互補的解決方案,并能夠根據(jù)實際情況找到最佳解決方案。
總結(jié)
在本文中,我們分別討論了這兩種解決方案的優(yōu)點,你可以根據(jù)對這兩項技術(shù)的了解找到適合自身的最佳解決方案。你可以使用 Google Cloud 等大型云服務(wù),實現(xiàn)任何解決方案。你需要花點時間嘗試一下這些工具,并了解它們的優(yōu)點和缺點。
英文:Is Serverless The End Of Kubernetes?
鏈接:https://towardsdatascience.com/kubernetes-serverless-differences-84699f370609
作者:Daniele Fontani
譯者 :彎月
福利掃描添加小編微信,備注“姓名+公司職位”,入駐【CSDN博客】,加入【云計算學(xué)習(xí)交流群】,和志同道合的朋友們共同打卡學(xué)習(xí)! 推薦閱讀:微服務(wù)架構(gòu)何去何從? 疫情肆虐下,程序員用代碼告訴你為什么千萬不要出門! 終于!孫宇晨和巴菲特吃上 3153 萬元的晚餐,還送了一個比特幣! 2020年AI如何走?Jeff Dean和其他四位“大神”已做預(yù)測! 為什么說 Julia 更優(yōu)于 Python? AI 醫(yī)生“戰(zhàn)疫”在前線 真香,朕在看了!總結(jié)
以上是生活随笔為你收集整理的Serverless 终结 Kubernetes?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 倒计时 1 天 | 2019 中国大数据
- 下一篇: 阿里巴巴宣布架构调整;英伟达放大招!重磅