2020 云原生 7 大趨勢(shì)預(yù)測(cè)
過(guò)去的幾年,是云原生技術(shù)和理念得到廣泛接受的幾年。在這個(gè)快速發(fā)展的領(lǐng)域,預(yù)測(cè)未來(lái)顯得尤其困難,但是我們又有著一些堅(jiān)定的信念,相信以開(kāi)放創(chuàng)新為支撐的云原生領(lǐng)域會(huì)持續(xù)重塑軟件生命周期,帶來(lái)不斷的價(jià)值。
2019,在眾多熱門技術(shù)趨勢(shì)中,云原生的關(guān)注度居高不下,很多開(kāi)發(fā)者都對(duì)由此而興起的一眾技術(shù)十分追捧,眾多企業(yè)開(kāi)始探索云原生架構(gòu)轉(zhuǎn)型落地。在中國(guó),開(kāi)發(fā)者們經(jīng)歷了從關(guān)注“云原生概念”到關(guān)注“云原生落地實(shí)踐”的轉(zhuǎn)變。
在籌備阿里云首屆云原生實(shí)踐峰會(huì)的過(guò)程中,我們展開(kāi)了對(duì)云原生技術(shù)的應(yīng)用和研究領(lǐng)域的探索,邀請(qǐng)了 17 位云原生技術(shù)專家從 Serverless、Service Mesh、Kubernetes、邊緣計(jì)算、容器實(shí)例與容器引擎、云原生基礎(chǔ)架構(gòu)、云原生應(yīng)用開(kāi)發(fā) 7 個(gè)發(fā)展方向,回顧 2019 云原生領(lǐng)域進(jìn)展,描繪云原生技術(shù)的新十年。
2020 云原生標(biāo)志性事件預(yù)測(cè)
展望 2020,在云原生技術(shù)的應(yīng)用和研究領(lǐng)域,我們預(yù)見(jiàn)會(huì)有這些標(biāo)志性事件。
第一,云原生技術(shù)關(guān)注重心在上移,Serverless 和應(yīng)用管理重點(diǎn)。
過(guò)去的幾年我們看到,云原生技術(shù)重心圍繞容器和容器編排。Docker 和 K8s 的成功幾乎成了云原生的代名詞。很多人說(shuō),Kubernetes is becoming boring,這是對(duì)于技術(shù)的趨勢(shì)來(lái)說(shuō)。
云原生關(guān)注重心即將上移:
- 應(yīng)用的定義和配置、發(fā)布和線上的自動(dòng)化運(yùn)維,成為開(kāi)發(fā)和運(yùn)維人員關(guān)心的核心內(nèi)容。阿里巴巴和微軟聯(lián)合推出的 Open Application Model (OAM) 就是這個(gè)方向的一個(gè)重要項(xiàng)目。
- 作為云原生技術(shù)的延伸,無(wú)服務(wù)器計(jì)算(Serverless)將進(jìn)一步釋放云計(jì)算的能力,將安全、可靠、可伸縮等需求由基礎(chǔ)設(shè)施實(shí)現(xiàn),使用戶僅需關(guān)注業(yè)務(wù)邏輯而無(wú)需關(guān)注具體部署和運(yùn)行,極大地提高應(yīng)用開(kāi)發(fā)效率,同時(shí)這個(gè)方式促進(jìn)了社會(huì)分工協(xié)作,云廠商可以進(jìn)一步通過(guò)規(guī)模化、集約化實(shí)現(xiàn)計(jì)算成本大幅優(yōu)化。相信在 2020 會(huì)有更多的創(chuàng)新和落地實(shí)踐在這個(gè)領(lǐng)域涌現(xiàn)。
第二,云原生技術(shù)成為云服務(wù)商的創(chuàng)新和競(jìng)爭(zhēng)力的主陣地。
隨著以容器為基礎(chǔ)的云原生技術(shù)被用戶廣泛接受,可以肯定的預(yù)期,容器會(huì)很快成為云和用戶的基本界面。因此對(duì)于云的服務(wù)提供商來(lái)說(shuō),基于容器、微服務(wù)、無(wú)服務(wù)器、服務(wù)網(wǎng)格等新型云原生技術(shù)的領(lǐng)域,必將是云廠商未來(lái)創(chuàng)新和競(jìng)爭(zhēng)力的主陣地。
虛擬化未來(lái) 3 年還會(huì)是云上資源增量的主體,但是硬件虛擬化加速的裸金屬和安全沙箱容器的組合,正在加速企業(yè)的上云和容器化過(guò)程。云廠商未來(lái)技術(shù)競(jìng)爭(zhēng)力的關(guān)鍵,在云傳統(tǒng)的優(yōu)勢(shì)包括規(guī)模、穩(wěn)定性、成本發(fā)揮到極致的前提下,必將通過(guò)云原生技術(shù)和產(chǎn)品的持續(xù)創(chuàng)新來(lái)服務(wù)客戶來(lái)獲得客戶的認(rèn)可。云原生產(chǎn)品領(lǐng)域?qū)⒊蔀樵茝S商競(jìng)爭(zhēng)白熱化的必爭(zhēng)之地。
第三,云原生從數(shù)據(jù)中心走向云邊端一體化,將無(wú)處不在。
云原生技術(shù)起源于數(shù)據(jù)中心內(nèi)的應(yīng)用和服務(wù),并在過(guò)去幾年逐漸擴(kuò)展到邊緣場(chǎng)景甚至端上的計(jì)算。相信未來(lái)隨著 5G/IoT 的快速發(fā)展,云邊端一體化的云原生技術(shù)將深入更多的企業(yè)和更豐富場(chǎng)景,將無(wú)處不在。
第四,云原生將經(jīng)歷企業(yè)落地之痛,云原生上云將成為趨勢(shì)。
云的技術(shù)發(fā)展會(huì)領(lǐng)先于企業(yè)落地的速度。盡管云原生技術(shù)已經(jīng)被廣泛接受,其在企業(yè)技術(shù)棧的落地仍然需要時(shí)間,也面臨不少挑戰(zhàn)。如容器化過(guò)程中改變傳統(tǒng)虛擬機(jī)模式下的運(yùn)維習(xí)慣,企業(yè)傳統(tǒng)應(yīng)用分布式微服務(wù)化的改造涉及 re-architecturing 等因素。
云原生被企業(yè)接受之后,落地的過(guò)程需要解決這些挑戰(zhàn)。運(yùn)維管理含有豐富組件并快速演進(jìn)的云原生的基礎(chǔ)設(shè)施也對(duì)企業(yè) IT 人員的技術(shù)技能提出了更高的要求。然而我們相信,云原生技術(shù)帶來(lái)的資源成本降低,研發(fā)運(yùn)維效率提升等巨大價(jià)值,會(huì)驅(qū)動(dòng)企業(yè)迎接這些挑戰(zhàn)。
在這個(gè)過(guò)程中,使用云原生上云,基于容器和服務(wù)網(wǎng)格等標(biāo)準(zhǔn)界面和混合云方案,將極大的降低遷云復(fù)雜度,使企業(yè)可以更快遷移到云上標(biāo)準(zhǔn)服務(wù)。通過(guò)云原生上云最大化使用云的能力,高效的社會(huì)分工,使企業(yè)聚焦于自身業(yè)務(wù)發(fā)展,相信將成為企業(yè)的共識(shí)。
2020 云原生 7 大技術(shù)領(lǐng)域趨勢(shì)
1、Serverless
2019,行業(yè)中的各大 Serverless 計(jì)算平臺(tái)的能力有了長(zhǎng)足進(jìn)步,變得更加通用。例如通過(guò)預(yù)留資源完全消除冷啟動(dòng)對(duì)延時(shí)的影響,使得延時(shí)敏感的在線應(yīng)用也能夠使用 Serverless 方式構(gòu)建。Serverless 生態(tài)不斷發(fā)展。在應(yīng)用構(gòu)建,安全,監(jiān)控報(bào)警等方面涌現(xiàn)了很多開(kāi)源項(xiàng)目和創(chuàng)業(yè)公司,工具鏈越來(lái)越成熟。
用戶對(duì) Serverless 的接受度不斷增加。除了互聯(lián)網(wǎng)等迅速擁抱新技術(shù)的行業(yè),傳統(tǒng)企業(yè)用戶也開(kāi)始采用 Serverless 技術(shù)。站在新的一個(gè)十年, Serverless 領(lǐng)域?qū)l(fā)生如下演進(jìn):
- Serverless 將進(jìn)一步從偏離線業(yè)務(wù)進(jìn)入在線業(yè)務(wù)。
真正的按請(qǐng)求次數(shù)計(jì)費(fèi)和從零到一的響應(yīng)時(shí)間是一個(gè)天然的矛盾,以 FaaS 為代表的 Serverless 技術(shù)一開(kāi)始都是從對(duì)響應(yīng)時(shí)間不敏感的,事件驅(qū)動(dòng)的偏離線業(yè)務(wù)入手。但是今天我們已經(jīng)看到,包括 AWS Lambda Provisioned Capacity 和 Azure Functions Premium plan 在內(nèi)的產(chǎn)品特性,都在讓用戶稍微付出一點(diǎn)額外的成本以換取更低的響應(yīng)時(shí)間。這對(duì)于在線業(yè)務(wù)來(lái)說(shuō),無(wú)疑是更適合的。
- Serverless 不僅是應(yīng)用或者函數(shù)的能力,也會(huì)加速推動(dòng)基礎(chǔ)設(shè)施和服務(wù) Serverless 化。
業(yè)務(wù)代碼托管給 Serverless 平臺(tái)之后,即能享受到自動(dòng)彈性,按請(qǐng)求計(jì)費(fèi)能能力。但是如果基礎(chǔ)設(shè)施和相關(guān)服務(wù)不具備實(shí)時(shí)的擴(kuò)縮容能力,那么對(duì)于業(yè)務(wù)整體來(lái)說(shuō),就不是彈性的。我們已經(jīng)看到 AWS 圍繞 Lambda 對(duì) VPC 網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)連接池等資源做了大量實(shí)時(shí)彈性優(yōu)化,相信其他的廠商也會(huì)跟進(jìn),進(jìn)而行業(yè)整體會(huì)加速基礎(chǔ)設(shè)施和各類云服務(wù)的 Serverless 化。
- 以 Knative 為代表的開(kāi)源解決方案將得到越來(lái)越多的關(guān)注。
盡管各個(gè)云廠商都在大力推廣自己的 Serverless 產(chǎn)品,但是開(kāi)發(fā)者普遍還是會(huì)擔(dān)心被廠商綁定,因此具備一定規(guī)模的組織會(huì)基于開(kāi)源方案,如 Knative,搭建自己的 Serverless 平臺(tái)。而一旦某個(gè)開(kāi)源方案成為主流,云廠商就會(huì)主動(dòng)去兼容開(kāi)源標(biāo)準(zhǔn)并增大社區(qū)投入。
- Serverless 開(kāi)發(fā)者工具和框架會(huì)進(jìn)一步繁榮。
IDE,問(wèn)題診斷,持續(xù)集成/發(fā)布等配套的工具和服務(wù)的用戶體驗(yàn)會(huì)更加完整。我們將看到更多的成功案例和最佳實(shí)踐。在前端開(kāi)發(fā)等領(lǐng)域?qū)?huì)出現(xiàn)為 Serverless 而生的應(yīng)用框架,將工程效率發(fā)揮到極致。
- Java 持續(xù)進(jìn)擊,將成為 Serverless 平臺(tái)主流語(yǔ)言之一。
Serverless 平臺(tái)要求應(yīng)用的鏡像足夠小以能夠快速分發(fā),同時(shí)要求應(yīng)用的啟動(dòng)時(shí)間極短。雖然在這些方面,Java 和 NodeJS 和 Python 等語(yǔ)言有差距,但是 Java 社區(qū)在不斷努力。我們看到 Java 通過(guò) Java 9 Modules 以及 GraalVM Native Image 等技術(shù)在不斷努力“減肥”,主流框架 Spring 也開(kāi)始擁抱 GraalVM,而新的框架如 Quarkus 和 Micronaut 也在做新的突破。期待 Java 在 Serverless 領(lǐng)域給人煥然一新的感覺(jué)。
- 解決 FaaS 狀態(tài)傳遞的中間層(加速層)研究或產(chǎn)品有望得到突破。
Serverless 在 Function 場(chǎng)景下未來(lái)最大的挑戰(zhàn)是 function 之間串聯(lián)需要狀態(tài)(state)傳遞、function 處理需要頻繁和外部存儲(chǔ)交互等帶來(lái)的時(shí)延放大。傳統(tǒng)的架構(gòu)這些都是在一個(gè)程序進(jìn)程內(nèi)部處理完畢。解決上述挑戰(zhàn)需要可計(jì)算中間層(加速層),可計(jì)算中間層(加速層)是未來(lái)學(xué)術(shù)研究和產(chǎn)品攻堅(jiān)發(fā)展方向之一。
- 基于 WebAssembly(簡(jiǎn)稱 WASM) 的 FaaS 方案有望出現(xiàn)。
Docker 的創(chuàng)始人之一 Solomon Hykes 曾說(shuō),“如果2008年有 WASM 和 WASI,我們當(dāng)時(shí)就沒(méi)有必要?jiǎng)?chuàng)造 Docker 了”,這句話在一定程度上說(shuō)明了 WASM 的重要性。雖然當(dāng)下 WASM 更多作為一種運(yùn)行在瀏覽器端的技術(shù)被人了解,但是它具備非常優(yōu)秀的安全隔離能力,極快的啟動(dòng)速度,以及對(duì)于超過(guò)20種語(yǔ)言的支持,那么為什么不能讓它運(yùn)行在服務(wù)端呢?這些技術(shù)特性都非常契合 FaaS 的要求。
2、Service Mesh
在 2019 年,Service Mesh 的整體解決方案逐漸顯現(xiàn)了寡頭壟斷的局面。一個(gè)解決方案能否得到行業(yè)的普遍認(rèn)可,關(guān)鍵在于其背后的技術(shù)團(tuán)隊(duì)對(duì)分布式應(yīng)用治理復(fù)雜度是否有深刻洞見(jiàn),以及能否打造一個(gè)被所有云廠商都采納的事實(shí)標(biāo)準(zhǔn)。事實(shí)標(biāo)準(zhǔn)對(duì)于使用 Service Mesh 的客戶來(lái)說(shuō),意味著分布式應(yīng)用能根據(jù)自己的需要在多云和混合云上方便部署。
站在新的一個(gè)十年, 2020 年 Service Mesh 領(lǐng)域?qū)⒂腥缦伦兓?/p>
- 2019 Service Mesh 熱度持續(xù)上升,落地的問(wèn)題將在 2020 得到解決。
2019 年,Service Mesh 在部分公司如螞蟻金服迎來(lái)大規(guī)模的落地,整個(gè)業(yè)界的熱度在持續(xù)上升,大大加大了國(guó)內(nèi)公司對(duì)于 Service Mesh 的信心,目前幾乎每家稍微大一點(diǎn)的互聯(lián)網(wǎng)公司都已經(jīng)開(kāi)始實(shí)踐 Service Mesh,包括美團(tuán)、頭條、百度等公司。
當(dāng)然,在 2019 年業(yè)界落地遇到的各種問(wèn)題,包括 Sidecar 大規(guī)模運(yùn)維的問(wèn)題等等,以 OpenKruise/kruise 的為代表的 SidecarSet 雖然已經(jīng)在做一些努力,但是目前仍然存在升級(jí) Pod 過(guò)程過(guò)于復(fù)雜的問(wèn)題,這些問(wèn)題有望在 2020 年得到解決。
- Istio 將更加成熟,更加適合大規(guī)模集群的落地。
2020 年 Istio 作為控制平面的一種技術(shù)實(shí)現(xiàn)仍將在 Service Mesh 領(lǐng)域扮演核心角色。Istio 獲得業(yè)界廣泛關(guān)注的原因,在于背靠 Google 公司的內(nèi)部工程實(shí)踐,以及對(duì)工程實(shí)踐的再思考和重新提煉。Istio 在過(guò)去一年的重要工作是完善功能和改善穩(wěn)定性確保小規(guī)模生產(chǎn)可用,在 2020 年隨著阿里巴巴采用這一技術(shù)實(shí)現(xiàn)大規(guī)模落地將為 Istio 的規(guī)模化運(yùn)用提供真實(shí)的場(chǎng)景,這將使得 Istio 在接下來(lái)的一年在支持集群規(guī)模的能力上大幅提高。
此外,隨著探索,Istio 的可運(yùn)維性和架構(gòu)的合理性在 2020 年也將迎來(lái)積極的變化,其部署和運(yùn)維的復(fù)雜性高等問(wèn)題將得到解決。Istio 所采納的 Envoy 開(kāi)源項(xiàng)目,在新的一年依然保持 Service Mesh 數(shù)據(jù)平面的事實(shí)標(biāo)準(zhǔn)這一領(lǐng)導(dǎo)地位,Istio 和 Envoy 兩大開(kāi)源社區(qū)因?yàn)榫o密協(xié)作而更好地推動(dòng) Service Mesh 向前演進(jìn)。
- Serivce Mesh on EdgeService 熱度持續(xù) Service Mesh & IoT。
2019 年 Serivce Mesh on Edge 的熱度在逐漸提升,Edge 本質(zhì)上要提供更快的響應(yīng)提升體驗(yàn)。對(duì)于 Service Mesh 來(lái)說(shuō),被從“舒適”的云端下放到 Edge,要解決性能,低資源消耗,安全,高可用等問(wèn)題,具體 Kernel Bypaasing,Sidecar as Node+WASM,SmartNic 軟硬件結(jié)合, IoT Identity 結(jié)合,secret 保護(hù),低輸出成本,非可靠網(wǎng)絡(luò)環(huán)境等,當(dāng)下看還非常有挑戰(zhàn),這些問(wèn)題將在 2020 年得到部分解決。
- More Than Service Mesh。
Service Mesh 作為解耦應(yīng)用與基礎(chǔ)設(shè)施的關(guān)鍵技術(shù),在 2020 年將有更多的產(chǎn)品通過(guò)與 Service Mesh 結(jié)合去完成 BaaS 化,這除了減少?zèng)]有必要的重復(fù)建設(shè),還使得云產(chǎn)品因?yàn)閷⒛切┡c應(yīng)用無(wú)關(guān)的內(nèi)容剝離出來(lái)下沉為基礎(chǔ)設(shè)施的一部分而加速自身的演進(jìn)速度,以及給云產(chǎn)品的使用者帶去更棒的軟件開(kāi)發(fā)和維護(hù)體驗(yàn)而加速業(yè)務(wù)的探索效率和降低探索成本。
我們看到 Envoy 也提供了 MySQL、Redis、MongoDB、DynamoDB 的協(xié)議支持,能夠支持請(qǐng)求解析、請(qǐng)求級(jí)統(tǒng)計(jì)、失敗統(tǒng)計(jì)等通用的可觀測(cè)性特性。后續(xù) Mesh 將繼續(xù)發(fā)展,成為整個(gè)網(wǎng)絡(luò)層面的一個(gè)基礎(chǔ)設(shè)施,用以管控所有應(yīng)用層面的出/入口流量。
展望 2020 年,Service Mesh 將會(huì)成為解決異構(gòu)系統(tǒng)通信、混合云架構(gòu)等方向上的必備組件,在混合云、新老架構(gòu)的場(chǎng)景下,Service Mesh 和原有基礎(chǔ)設(shè)施的結(jié)合能力將成為 Service Mesh 落地的關(guān)鍵,比如對(duì)于 VM 場(chǎng)景的支持,對(duì)于傳統(tǒng)服務(wù)注冊(cè)中心的支持等等,相信會(huì)有更多的公司通過(guò)實(shí)踐而對(duì) Service Mesh 的價(jià)值更有體感,通過(guò)創(chuàng)造更多的成功客戶故事而加速 Service Mesh 的普及。也許,2020 年將成為 Service Mesh 的普及年。
3、Kubernetes
2019 年,在社區(qū)頭部參與者的持續(xù)推進(jìn)下,“規(guī)模”與“性能”終于成為了 Kubernetes 項(xiàng)目的重要關(guān)鍵詞,這不僅真正意義上打通了 Kubernetes 在企業(yè)生產(chǎn)環(huán)境中大規(guī)模落地的最后一公里,也讓 Kubernetes 第一次成為了 “雙11” 等頂級(jí)互聯(lián)網(wǎng)規(guī)模化場(chǎng)景中實(shí)實(shí)在在的技術(shù)主角。
站在新的一個(gè)十年, 2020 年 Kubernetes 領(lǐng)域?qū)⒂腥缦伦兓?/p>
- Kubernetes 將成為用戶和云計(jì)算新的交互界面。
隨著云原生計(jì)算的普及,越來(lái)越多的應(yīng)用負(fù)載都部署在 Kubernetes 之上,包括數(shù)據(jù)庫(kù)、大數(shù)據(jù)、AI智能和創(chuàng)新應(yīng)用,Kubernetes 已成為云原生計(jì)算的基石。得益于 Kubernetes 的大規(guī)模應(yīng)用管理能力、多云混合云的支持能力,在 2020 年,Kubernetes 會(huì)成為用戶和云計(jì)算新的交互界面。從架構(gòu)的角度,Kubernetes 成為了 IaaS 層的控制平面,并進(jìn)一步推動(dòng)底層 IaaS(計(jì)算、存儲(chǔ)、網(wǎng)絡(luò))的能力優(yōu)化,來(lái)滿足容器帶來(lái)的一二個(gè)數(shù)量級(jí)的高密度和高動(dòng)態(tài)性要求。
- Kubernetes 掌控能力成為企業(yè)運(yùn)維團(tuán)隊(duì)的核心技能,并和 AIOPS 相互促進(jìn)發(fā)展。
Kubernetes 的大規(guī)模使用是否會(huì)帶來(lái)企業(yè)運(yùn)維人員的失業(yè)?實(shí)際上,隨著越來(lái)越多的企業(yè) IT 架構(gòu),從 on Kubernetes 到 in Kubernetes,大量的 CRD、自定義 Controller 和服務(wù)網(wǎng)格的引入,給 Kubernetes 的穩(wěn)定性和性能優(yōu)化帶來(lái)大量的挑戰(zhàn)。Kubernetes 的掌握深度逐漸成為企業(yè)運(yùn)維團(tuán)隊(duì)技術(shù)能力的重要評(píng)估標(biāo)尺,而企業(yè)運(yùn)維人員的技能也會(huì)從自動(dòng)化向數(shù)據(jù)化和智能化發(fā)展。
預(yù)測(cè)在 2020 年,圍繞著 Kubernetes 的 AIOps 會(huì)逐漸涌出,來(lái)進(jìn)一步完善 Kubernetes 的成本優(yōu)化、故障檢測(cè)和集群優(yōu)化。
而 Kubernetes 等云原生技術(shù)也會(huì)讓 AIOps 不再霧里看花:
1)得益于 Kubernetes 的良好設(shè)計(jì),包括聲明式API、不可變架構(gòu)、優(yōu)雅的擴(kuò)展機(jī)制,可以促進(jìn)應(yīng)用發(fā)布和運(yùn)維的操作歸一化(Normalization);2)結(jié)合 GItOps、Tekton、SecOps 等自動(dòng)化流程的落地,應(yīng)用的生命周期更加標(biāo)準(zhǔn)化(Standardization);3)隨著 OpenTelemetry、CloudEvents 等項(xiàng)目的推進(jìn),應(yīng)用可觀測(cè)性領(lǐng)域在日志、監(jiān)控、Tracing、事件等領(lǐng)域進(jìn)一步標(biāo)準(zhǔn)化和融合,使得多指標(biāo)、根因分析的數(shù)據(jù)集更加豐富,從而提高 AIOPS 的 AI 層面的準(zhǔn)確率和覆蓋率。
- 新內(nèi)核、新硬件助力容器優(yōu)化 OS 的演進(jìn)。
容器技術(shù)經(jīng)過(guò)了多年的發(fā)展,從早期的 Docker、rkt、CRI-O 等,到 containerd、Kata Container、gVisor,已經(jīng)成為 Kubernetes 運(yùn)行的重要基石。然而無(wú)論是 runc 場(chǎng)景的進(jìn)一步隔離,還是安全容器場(chǎng)景的進(jìn)一步性能優(yōu)化,還需要持續(xù)的打磨和增強(qiáng)。
隨著新內(nèi)核技術(shù)包括 CGroup V2、namespace、virtiofs 等的逐步成熟,可以進(jìn)一步增強(qiáng)容器運(yùn)行時(shí)的能力。另一方面,一些新硬件包括 NPU、MoC、NUMA 等的引入,也給容器和 K8s 調(diào)度帶來(lái)了更多的優(yōu)化空間和場(chǎng)景。得益于這些能力的加成,為容器場(chǎng)景量身定制的容器優(yōu)化 OS 成為可能,并會(huì)快速發(fā)展。
- 容器網(wǎng)絡(luò)和 Mesh 網(wǎng)絡(luò)將進(jìn)一步融合。
Service Mesh 經(jīng)過(guò)多年的市場(chǎng)培育,2020 年將會(huì)成為 Service Mesh 技術(shù)的普及年。而 Service Mesh 的性能優(yōu)化也會(huì)成為重頭戲,一些下沉方案也在選擇基于 CNI(容器網(wǎng)絡(luò)接口)和內(nèi)核技術(shù)進(jìn)一步優(yōu)化網(wǎng)絡(luò)轉(zhuǎn)發(fā)性能。
而容器網(wǎng)絡(luò)自身也在逐漸演進(jìn),從面向 ip 到面向 Identity,從單容器網(wǎng)絡(luò)平面到多網(wǎng)絡(luò)平面,并進(jìn)一步優(yōu)化網(wǎng)絡(luò)轉(zhuǎn)發(fā)性能和零可信安全。在 2020 年,我們相信容器網(wǎng)絡(luò)和 Mesh 網(wǎng)絡(luò)將進(jìn)一步融合,在 Network ServiceMesh、NFV等場(chǎng)景進(jìn)一步集成。
4、邊緣計(jì)算
隨著 5G 和萬(wàn)物互聯(lián)時(shí)代的到來(lái),聯(lián)網(wǎng)智能終端設(shè)備數(shù)量將急劇增加,傳統(tǒng)云計(jì)算中心集中存儲(chǔ)、計(jì)算的模式已經(jīng)無(wú)法滿足終端設(shè)備對(duì)于時(shí)效、容量、算力的需求,將云計(jì)算的能力下沉到邊緣側(cè)、設(shè)備側(cè),并通過(guò)中心進(jìn)行統(tǒng)一交付、運(yùn)維、管控,將是云計(jì)算的重要發(fā)展趨勢(shì)。
IDC 預(yù)計(jì),到 2020 年全球?qū)⒂谐^(guò) 500 億的終端與設(shè)備聯(lián)網(wǎng),超過(guò) 40% 的數(shù)據(jù)要在網(wǎng)絡(luò)邊緣側(cè)進(jìn)行分析、處理與存儲(chǔ),這對(duì)邊緣計(jì)算提供了充分的場(chǎng)景和想象空間。
站在新的一個(gè)十年,2020 年邊緣計(jì)算領(lǐng)域?qū)⒂腥缦伦兓?/p>
- 以 Kubernetes 為基礎(chǔ)的云原生技術(shù),經(jīng)過(guò)近幾年的高速發(fā)展,適用范圍、落地場(chǎng)景、技術(shù)成熟度等均有了長(zhǎng)足發(fā)展,其核心價(jià)值之一是通過(guò)統(tǒng)一的標(biāo)準(zhǔn)實(shí)現(xiàn)在任何基礎(chǔ)設(shè)施上提供和云上一致的功能和體驗(yàn)。將云原生技術(shù)和邊緣計(jì)算相結(jié)合,可以快速實(shí)現(xiàn)『云-邊-端』一體化的應(yīng)用分發(fā),解決在海量邊、端設(shè)備上統(tǒng)一完成大規(guī)模應(yīng)用交付、運(yùn)維、管控的訴求;
- 在安全方面,云原生技術(shù)可以提供容器等更加安全的工作負(fù)載運(yùn)行環(huán)境,以及流量控制、網(wǎng)絡(luò)策略等能力,能夠有效提升邊緣服務(wù)和邊緣數(shù)據(jù)的安全性;
- 在邊緣網(wǎng)絡(luò)環(huán)境下,基于云原生技術(shù)的邊緣容器能力,能保證弱網(wǎng)、斷網(wǎng)的自治性,提供有效的自恢復(fù)能力,同時(shí)對(duì)復(fù)雜的網(wǎng)絡(luò)接入環(huán)境有良好的兼容性;
- 依托云原生領(lǐng)域強(qiáng)大的社區(qū)和廠商支持,云原生技術(shù)對(duì)異構(gòu)資源的適用性逐步提升,在物聯(lián)網(wǎng)領(lǐng)域,云原生技術(shù)已經(jīng)能夠很好的支持多種 CPU 架構(gòu)和通信協(xié)議,并實(shí)現(xiàn)較低的資源占用。
目前已經(jīng)有不少?gòu)S商在進(jìn)行云原生邊緣計(jì)算的嘗試,并有了部分成功案例,相信在 2020 年隨著 5G 的快速鋪開(kāi),云原生邊緣計(jì)算的發(fā)展將大大提速。
5、容器實(shí)例與容器引擎
在 2019 年的最后一個(gè)月 AWS 終于發(fā)布了 Fargate for EKS 產(chǎn)品,這也宣告了云上 Kubernetes 使用 Serverless 容器實(shí)例作為底層運(yùn)行時(shí)資源的產(chǎn)品形態(tài)得到了業(yè)界更廣泛的認(rèn)可。通過(guò)容器實(shí)例作為底層運(yùn)行實(shí)體可以讓用戶專注于構(gòu)建自身的業(yè)務(wù)和服務(wù),無(wú)需再配置和管理服務(wù)器,擺脫基礎(chǔ)設(shè)施運(yùn)維的復(fù)雜性。同時(shí)通過(guò)真正的按需付費(fèi)和實(shí)時(shí)擴(kuò)容來(lái)降低用戶的使用成本。 無(wú)論是亞馬遜的 Fargate,微軟的 ACI 還是阿里云的 ECI,各產(chǎn)品當(dāng)前在對(duì)接 Kubernetes 的具體架構(gòu)上仍然有分歧,以 Fargate 為代表采用的是透?jìng)?Node 信息的方式來(lái)提供對(duì) Kubernetes 功能的完整支持;以 ACI/ECI 為代表則采用 virtual kubelet 方式對(duì)接 Kubernetes 對(duì)容器實(shí)例進(jìn)行管理。
但無(wú)論采用何種對(duì)接方式,容器實(shí)例產(chǎn)品的核心依然需要構(gòu)建在彈性、成本和 Kubernetes 兼容性上。通過(guò)彈性實(shí)現(xiàn)用戶服務(wù)的按需實(shí)時(shí)擴(kuò)容,用戶無(wú)需選擇實(shí)例和集群容量,不需要為額外的服務(wù)器預(yù)置而付費(fèi);通過(guò)實(shí)時(shí)擴(kuò)容實(shí)現(xiàn)真正的按使用資源付費(fèi),降低用戶的使用成本;Kubernetes 已經(jīng)成為容器編排領(lǐng)域的事實(shí)標(biāo)準(zhǔn),對(duì) Kubernetes 功能的兼容性決定著容器實(shí)例的適用范圍。
站在新的一個(gè)十年,相信在 2020 年容器實(shí)例產(chǎn)品會(huì)在這三個(gè)方面繼續(xù)改進(jìn)和完善,持續(xù)提升彈性能力,降低用戶的使用成本,并不斷完善與 Kubernetes 的集成。同時(shí)也會(huì)有更多的云原生應(yīng)用遷移到 Kubernetes+ 容器實(shí)例上,享受云原生的技術(shù)紅利。
從上述各廠商的同類產(chǎn)品中我們也可以看到此類產(chǎn)品在設(shè)計(jì)上的共同之處:
- 一個(gè)實(shí)例對(duì)應(yīng)一個(gè) Pod
- 對(duì)接 Kubernetes
- 安全容器作為底層容器引擎
這其中使用安全容器作為底層容器引擎是各家都很重視的底層基礎(chǔ)能力。在 2019 年安全容器技術(shù)的隔離性越來(lái)越被看重,作為一個(gè)隔離層,不僅提升云原生平臺(tái)的安全性,也對(duì)可運(yùn)維性、服務(wù)質(zhì)量和用戶數(shù)據(jù)保護(hù)有顯著效果。不過(guò),回歸初心,用戶選擇云原生的本質(zhì)是容器帶來(lái)的敏捷性,他們可以快速地調(diào)度并啟動(dòng)容器,并且可以靈活地使用資源,這方面安全技術(shù)尚不能達(dá)到傳統(tǒng)容器的水平。 不論是 Kata Containers 還是 gVisor,開(kāi)源安全容器引擎在 2019 年都取得了很多進(jìn)展,Kata Containers 明確提出了“做面向云原生的虛擬化”作為 2020 年的目標(biāo):
- 在沙箱間共享資源,同時(shí)保持沙箱邊界仍然清晰。
- 即時(shí)、動(dòng)態(tài)地按需為沙箱提供資源,而不是像分區(qū)那樣進(jìn)行固定的資源分配。
- 主機(jī)的用戶態(tài)工具、VMM、乃至應(yīng)用的內(nèi)核聯(lián)合起來(lái),彼此協(xié)同為沙箱中的應(yīng)用提供服務(wù)。
在 2020 年,Kata 代表的虛擬化容器會(huì)與傳統(tǒng)虛擬化漸行漸遠(yuǎn)而更加“應(yīng)用中心”,gVisor 為代表的進(jìn)程級(jí)虛擬化也期待更多為應(yīng)用的優(yōu)化。我們相信在 2020 年的時(shí)候,我們還不會(huì)有一個(gè)統(tǒng)一的安全容器技術(shù),但展望 21 世紀(jì) 20 年代的頭幾年,我們期待軟硬件的共同發(fā)展會(huì)讓主流的容器引擎都具有更好的隔離性。
6、基礎(chǔ)架構(gòu)演進(jìn)
基于 Kubernetes 的 Serverless Infras 架構(gòu)演進(jìn)一直是各大云廠商和社區(qū)關(guān)注的焦點(diǎn)。2019 年 12 月 AWS 在拉斯維加斯召開(kāi)了一年一度 re:Invent 大會(huì)上宣布了 EKS on AWS Fargate 產(chǎn)品正式 GA,這個(gè)消息在云市場(chǎng)和社區(qū)里掀起了不小的波瀾。
EKS on Fargate 提供了標(biāo)準(zhǔn)的 Serverless Infra.的用戶體驗(yàn),即用戶購(gòu)買了 EKS 的服務(wù)后,不再需要購(gòu)買額外的 Infra 云資源(如VM,Nitro),就可以使用原生 K8s API 部署自己的應(yīng)用,并且支持按量計(jì)費(fèi)。
Serverless Infra.架構(gòu)使得用戶無(wú)需關(guān)注計(jì)算、網(wǎng)絡(luò)、存儲(chǔ)等底層基礎(chǔ)設(shè)施細(xì)節(jié),真正讓用戶回歸到面向POD應(yīng)用資源部署形態(tài)上去;同時(shí)管控面與數(shù)據(jù)面的強(qiáng)隔離能力將會(huì)是 Serverless Infra.架構(gòu)的關(guān)鍵,除了對(duì)用戶屏蔽底層基礎(chǔ)設(shè)施細(xì)節(jié)外,Serverless Infra. 需要提供給用戶一個(gè)安全可信的租戶隔離環(huán)境
2019 年隨著經(jīng)濟(jì)體全面上云,底層調(diào)度系統(tǒng)全面升級(jí)到云原生 Kubernetes + 輕量級(jí)容器架構(gòu)演進(jìn),并且大規(guī)模部署在神龍裸金屬實(shí)例上;同時(shí)基于 kata-container 的安全容器運(yùn)行時(shí)技術(shù)趨于成熟,已經(jīng)具備大規(guī)模鋪開(kāi)的條件。
站在新的一個(gè)十年,預(yù)計(jì)2020 年,將是經(jīng)濟(jì)體全面邁向基礎(chǔ)設(shè)施 Serverless Infra. 的一年,Serverless Infra.架構(gòu)將會(huì)基于神龍+安全容器架構(gòu),通過(guò)構(gòu)建軟/硬多租戶能力,彈性能力和高度的容器自愈能力,為用戶提供極致的安全、穩(wěn)定、隔離性的用戶體驗(yàn)。同時(shí)底層資源池共享也能有效提升整體資源利用率,并池后資源互通將會(huì)有效降低整體機(jī)器成本
7、應(yīng)用開(kāi)發(fā)
展望 2020,我們認(rèn)為云原生+智能化將成為下一代研發(fā)平臺(tái)最重要的兩個(gè)特性,它將進(jìn)一步降低開(kāi)發(fā)者采納復(fù)雜技術(shù)的門檻以及通過(guò)工具釋放生產(chǎn)力。當(dāng)所有復(fù)雜度都卸載到云上以后,我們將回到 10 年前開(kāi)發(fā)單機(jī)程序時(shí)的高效。
站在新的一個(gè)十年, 2020 應(yīng)用開(kāi)發(fā)領(lǐng)域?qū)l(fā)生如下演進(jìn):
- 從 Web-IDE 演進(jìn)為 Cloud-Native IDE
2019 年是 VS Code 生態(tài)繼續(xù)高歌猛進(jìn)的一年,得益于其模塊化的設(shè)計(jì),VS Code 中的幾個(gè)核心組件Monaco編輯器,插件體系,Language Server Protocol(LSP)等成為了Web-IDE的標(biāo)準(zhǔn)選型。社區(qū)也出現(xiàn)了code-server這樣基于 VS Code 一行命令拉起 Web-IDE 的方案。
除了 VS Code 之外,Theia 也繼續(xù)演進(jìn),尤其是基于 Theia 的gitpod.io 讓人眼前一亮,通過(guò)把 gitpod 按鈕集成在諸如 GitHub README 頁(yè)面上,一鍵實(shí)現(xiàn)了從代碼到預(yù)覽的順滑體驗(yàn)。
另一方面,大廠已有的 Web-IDE 方案也需要回過(guò)頭來(lái)?yè)肀鐓^(qū),徹底如 Facebook 完全從自研的Nuclide 轉(zhuǎn)而投向 VS Code,而無(wú)論是 Amazon的Cloud9 還是 Google 尚未對(duì)外的 Cider,如果要在商業(yè)化上更進(jìn)一步,支持 VS Code 的插件體系想必也是理所當(dāng)然。
從 Local-IDE 到 Web-IDE 讓我想起了當(dāng)年從 PC 到移動(dòng)端。雖說(shuō)時(shí)至今日,不少專業(yè)工具 PC 端的體驗(yàn)仍然是移動(dòng)端難以企及的,但移動(dòng)端的主導(dǎo)地位早已不容置疑。
Web-IDE 具備開(kāi)箱即用,環(huán)境一致可控以及和其它Web服務(wù)無(wú)縫集成的先天優(yōu)勢(shì)。接下來(lái)要做的除了繼續(xù)補(bǔ)齊和 Local-IDE 在端功能的差距外,還可以結(jié)合分布式編譯構(gòu)建,集中式代碼倉(cāng)庫(kù),海量代碼索引分析,云端協(xié)同等,提供真正的 Cloud-Native IDE。
- 工具 -> 平臺(tái) -> 標(biāo)準(zhǔn)
GitHub 今年推出了 GitHub Actions,通過(guò)它可以在工作流中靈活地集成各種第三方服務(wù)。GitLab 也在更早的時(shí)候就推出了可定制化的 CI 流水線配置。無(wú)論是 GitHub 還是 GitLab,它們都從早期單純的代碼托管工具成長(zhǎng)為了一站式 DevOps 平臺(tái)。
最早以 IntelliJ 工具起家的 JetBrains 不再滿足于僅僅打磨 IDE,今年也推出了 Space,力圖打造一站式研發(fā)團(tuán)隊(duì)平臺(tái)。以項(xiàng)管工具 Jira 起家的 Atlassian,一直是自研收購(gòu)兩架馬車并駕齊驅(qū),今年通過(guò)收購(gòu)又在自己研發(fā)平臺(tái)的版圖上增加了針對(duì)管理者視角的 Jira Align。
后起之秀如 sourcegraph 干脆直接在網(wǎng)站上號(hào)稱自己是 The new standard developer platform。不管是基于 Dev 工具的右移,抑或是基于 Ops 工具的左移,當(dāng)年的工具們都或多或少地長(zhǎng)成所謂的一站式 DevOps/DevSecOps 平臺(tái)。
那接下來(lái),在這些平臺(tái)之上是否能提煉出通用的標(biāo)準(zhǔn)?比如 CI 領(lǐng)域,是否能有一套 CI 流水線定義可以一統(tǒng)CircleCI,GitLab,GitHub Actions 諸如此類?是否也有一套 workflow 標(biāo)準(zhǔn)可以讓用戶在 AWS Step Functions, Argo, Tekton 之間無(wú)縫遷移?
在更高的抽象層面,諸如 Open Appliction Model(OAM) 這樣的標(biāo)準(zhǔn)是不是能真正架起從業(yè)務(wù)架構(gòu)到基礎(chǔ)架構(gòu)的橋梁。雖然如今的研發(fā)平臺(tái)已然是諸侯割據(jù)的局面,但在云原生,標(biāo)準(zhǔn)先行的理念下,我還是會(huì)期待有離業(yè)務(wù)層更接近的云原生標(biāo)準(zhǔn)去串聯(lián)起整個(gè)研發(fā)平臺(tái)。
- 開(kāi)發(fā)者工具從本地工作到云端協(xié)作
當(dāng)前的開(kāi)發(fā)者工具絕大多數(shù)采用的是 lift and shift 的方式從本地平移上云,產(chǎn)品設(shè)計(jì)針對(duì)的還是單人人機(jī)交互,移到云端的研發(fā)工具還沒(méi)有很好地利用云端多人實(shí)時(shí)交互的能力。無(wú)論是多人協(xié)作(云已經(jīng)讓我們離彼此更近),還是人機(jī)協(xié)作(云已經(jīng)讓機(jī)器變得更強(qiáng)),我期待著出現(xiàn)進(jìn)一步挖掘云端協(xié)作能力的創(chuàng)新點(diǎn)。
- 更多云原生研發(fā)平臺(tái)涌現(xiàn)
以 Kubernetes、Serverless、Service Mesh、Cloud IDE 為代表的多項(xiàng)云原生技術(shù)在過(guò)去一年讓人印象深刻。我們意外的觀察到,以中小互聯(lián)網(wǎng)公司為代表的技術(shù)群體開(kāi)始快速擁抱這個(gè)技術(shù)體系,并且通過(guò)云原生落地,快速的獲得了以往互聯(lián)網(wǎng)大廠才有的精英軟件交付能力,比如復(fù)雜的流量治理能力,灰度發(fā)布能力,A/B Test 能力,多環(huán)境管理能力,基礎(chǔ)設(shè)施一鍵拉起,快速擴(kuò)縮能力等等。
但在企業(yè)采納新技術(shù)的同時(shí),也面臨著諸多挑戰(zhàn),比如開(kāi)源軟件復(fù)雜的搭建過(guò)程,黑屏化的交互設(shè)計(jì),缺乏研發(fā)管理方法,缺乏企業(yè)權(quán)限管理能力等。因此一大批軟件供應(yīng)商開(kāi)始基于云原生技術(shù)體系開(kāi)發(fā)相關(guān)的管理平臺(tái),比如 QingCloud,Rancher,阿里云容器服務(wù)。作為云上研發(fā)協(xié)同平臺(tái)領(lǐng)導(dǎo)者的云效也在積極將 CICD 工具、測(cè)試環(huán)境管理方法、應(yīng)用運(yùn)維理念、DevOps 協(xié)同方法論等與云原生技術(shù)融合貫通,為企業(yè)提供開(kāi)箱即用的新技術(shù)解決方案。
- 數(shù)據(jù)和智能的工具時(shí)代到來(lái)
云原生是一套開(kāi)放標(biāo)準(zhǔn)的技術(shù)體系,核心貢獻(xiàn)者就是當(dāng)今世界的互聯(lián)網(wǎng)云廠商巨頭企業(yè)。隨著技術(shù)的發(fā)展和影響力的增強(qiáng),逐步將企業(yè)的私有技術(shù)壁壘打破,并且開(kāi)始采納云上現(xiàn)成的云原生產(chǎn)品來(lái)改造自身的技術(shù)體系。技術(shù)的收斂帶來(lái)了統(tǒng)一數(shù)據(jù)規(guī)范的可能,而數(shù)據(jù)是所有智能化的基石。
我們觀察到最近一年 AWS、微軟、Facebook、ebay 等廠商都在積極布局智能化工具,從傳統(tǒng)的“代碼”智能工具逐步擴(kuò)展到“服務(wù)”智能工具。比如最近 AWS 發(fā)布的CodeGuru,它是一個(gè)用于代碼審查自動(dòng)化和性能優(yōu)化推薦的機(jī)器學(xué)習(xí)服務(wù)。它能找出最影響程序性能的代碼行,并讓提供修復(fù)或改進(jìn)代碼的具體建議。這就是代碼大數(shù)據(jù)和運(yùn)行時(shí)服務(wù)大數(shù)據(jù)結(jié)合的智能工具。
2020 如何兌現(xiàn)新技術(shù)給業(yè)務(wù)帶去的價(jià)值
對(duì)于云原生從業(yè)者來(lái)說(shuō),2020 年最大的挑戰(zhàn)可能是兌現(xiàn)新技術(shù)給業(yè)務(wù)帶去的價(jià)值。雖說(shuō)過(guò)去一年對(duì)云原生的價(jià)值有不同層次、不同視角的解讀,但更多還是從技術(shù)層面,鮮有各行各業(yè)的客戶成功案例闡述新技術(shù)所帶來(lái)的直接業(yè)務(wù)價(jià)值。
從市場(chǎng)的角度:仍存在大量的傳統(tǒng)行業(yè)的企業(yè)處于物理機(jī)或虛擬機(jī)時(shí)代,受資產(chǎn)狀況的影響他們很難一下子將核心業(yè)務(wù)搬遷到云原生之上而體會(huì)到新技術(shù)的巨大價(jià)值;另一方面,對(duì)于早已進(jìn)入容器時(shí)代的那些企業(yè),他們?cè)谲浖Y產(chǎn)上過(guò)去多年持續(xù)地投入了大量的資源做建設(shè),從功能層面早已建立起了與云原生等同的軟件資產(chǎn),不會(huì)很快從自建轉(zhuǎn)變?yōu)樵圃_@是市場(chǎng)面對(duì)新技術(shù)普及之前的正常姿態(tài),行業(yè)客戶從兩端正在被改變,今天大家正逐步對(duì)云原生這一概念達(dá)成有具象的共識(shí)。
站在新的一個(gè)十年起點(diǎn),云原生從業(yè)者應(yīng)當(dāng)堅(jiān)定自己對(duì)于新技術(shù)價(jià)值的理解和洞察,沉下心去將云原生的基礎(chǔ)能力建設(shè)好。同時(shí),需要特別重視以合適的方式和時(shí)機(jī)去兌現(xiàn)業(yè)務(wù)價(jià)值,通過(guò)更多的成功客戶故事去加速市場(chǎng)對(duì)新技術(shù)的接受,讓自己的成果更快、更好地被市場(chǎng)認(rèn)可,創(chuàng)造行業(yè)趨勢(shì),為云計(jì)算的發(fā)展做出自己的貢獻(xiàn)。
【本文為51CTO專欄作者“阿里巴巴官方技術(shù)”原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)聯(lián)系原作者】