2020年云原生技術關鍵趨勢總結

開源云中文社區(qū)
幾十年來,我們的操作系統(tǒng)和其他重要基礎設施軟件都是用C語言或C++語言編寫,它們是快速、低級語言。然而,現(xiàn)在越來越多的系統(tǒng)架構師得出這樣的結論:完全保護用這些語言編寫的程序是非常困難的,因為它們處理內(nèi)存和其他因素的不安全方式。

云原生技術快速發(fā)展,這里有幾個有趣的技術趨勢,已經(jīng)在過去12個月出現(xiàn),而且將在未來幾年深刻影響云原生。

系統(tǒng)設計:單體歸來

在過去的幾年里,用微服務構建云原生應用程序興起,它將一個大型應用程序分解成更小的、相互連接的組件,允許獨立的團隊處理應用程序的不同部分而不必互相干涉。然而,微服務也面臨著一系列挑戰(zhàn),最大的挑戰(zhàn)是跨組件調(diào)試的困難。Kubernetes的傳道者Kelsey Hightower提出了一個想法,“單體是未來,因為人們試圖用微服務解決的問題并不符合現(xiàn)實。”實際上,核心云原生應用程序Istio服務網(wǎng)格背后的設計團隊,正在遷移到單體的方法,其中更多的服務被集成到一個單一的守護進程中。

折中無處不在,2020年,微服務與企業(yè)軟件設計中的其他因素開始平衡。

云服務:一個統(tǒng)一的控制平面

Kubernetes在如何方便地擴展和管理分布式應用程序方面帶來了一場革命,盡管它的接口主要面向系統(tǒng)管理員。對于開發(fā)人員來說,它意味著一個陡峭的學習曲線,需要在它自己的運維概念(即“入口”、“pods”、“服務”)和開發(fā)人員所理解的應用程序的實際需求之間進行大量的轉(zhuǎn)換。因此,毫不奇怪,今年我們看到了很多關于一個通用的控制平面的討論,它將為企業(yè)為其開發(fā)人員構建自己的基于Kubernetes的自助式平臺(即服務)奠定基礎。Kubernetes就在下面,開發(fā)者不必擔心。關鍵的早期工作是一個稱為Open Application Model(OAM)的標準化模板,它正在迅速成為Kubernetes社區(qū)中的事實標準。Crossplane是Upbound構建的一個基于OAM的開源控制平面,在這個領域獲得了很多關注。IBM現(xiàn)在正在測試Crossplane,以幫助用戶在其IBM Cloud上統(tǒng)一操作。另一個獲得關注的基于OAM的項目是KubeVela,它是一個可擴展的“平臺引擎”。

“對于開發(fā)人員來說,KubeVela是一個易于使用的工具,它使你能夠以最小的努力來描述應用程序并將其發(fā)送給Kubernetes,而對于平臺構建者來說,KubeVela是一個框架,使他們能夠輕松地創(chuàng)建面向開發(fā)人員但完全可擴展的平臺。”

運維:可編程Linux內(nèi)核

Linux內(nèi)核是云原生的事實標準操作系統(tǒng),由于Extended Berkeley Packet Filter(eBPF)的引入,它的使用方式開始發(fā)生根本性的轉(zhuǎn)變。雖然最初的目標是用于高級內(nèi)核監(jiān)控,但這個原始BPF的內(nèi)存映射擴展可以在內(nèi)核空間中運行任何沙盒程序,而無需更改內(nèi)核源代碼或加載模塊。

實際上,eBPF充當了一個微內(nèi)核,提供了一種可能更快、更安全的方式來使用Linux內(nèi)核。通過這種方式,eBPF為開發(fā)人員提供了一種將自己的程序添加到內(nèi)核本身的方法。最直接的好處將是應用程序和系統(tǒng)監(jiān)控(和調(diào)試),以及加快網(wǎng)絡路由的決策過程,允許內(nèi)核內(nèi)聯(lián)完成迄今為止交給模塊的工作。目前,幾家專注于Kubernetes的公司,如Cilium、Isovalent和Tigera,正在使用這項技術為使用Kube-Proxy進行流量路由提供一種更快的替代方案。

2345截圖20200908083720.png

安全:重新思考漏洞管理

在過去的一年里,越來越明顯的是,當前用于處理新安全漏洞的系統(tǒng)可能沒跟上云原生計算的步伐。來自云安全公司Rezilion的Tal Klein指出,目前全行業(yè)范圍內(nèi)對新發(fā)現(xiàn)的漏洞進行優(yōu)先排序的系統(tǒng),即通用漏洞評分系統(tǒng)(CVSS),與攻擊者如何利用漏洞來破壞系統(tǒng)的方式不符。有些人認為,人們過于關注嚴重程度評分本身,對評分所涉及的環(huán)境背景了解不夠。Rezilion發(fā)現(xiàn)67%~75%具有“高嚴重性”CVSS分數(shù)的漏洞從未加載到內(nèi)存中,因此不可能被利用。同時,鑒于實際修補評級較低漏洞的公司越來越少,攻擊者轉(zhuǎn)而利用評級較低的漏洞。

開發(fā):慢慢遠離C++

幾十年來,我們的操作系統(tǒng)和其他重要基礎設施軟件都是用C語言或C++語言編寫,它們是快速、低級語言。然而,現(xiàn)在越來越多的系統(tǒng)架構師得出這樣的結論:完全保護用這些語言編寫的程序是非常困難的,因為它們處理內(nèi)存和其他因素的不安全方式。要安全地處理內(nèi)存分配需要大量的人才,即便如此,一個被忽視的錯誤也可能會導致錯誤。最近,更多的擁護者們開始使用一種新的語言——RIST,它既有C/C++的速度,也有編寫安全應用所必需的安全性。在今年早些時候的AllThingsOpen虛擬會議期間,微軟云開發(fā)者倡導者Ryan Levick解釋了為什么微軟逐漸轉(zhuǎn)向RID來構建其基礎設施軟件,也鼓勵其他軟件業(yè)巨頭考慮同樣的問題。

2345截圖20200908083720.png

原文鏈接:The New Stack:Top Cloud Native Technology Trends from 2020–The New Stack

THEEND

最新評論(評論僅代表用戶觀點)

更多
暫無評論