CNCF新增安全、服務(wù)網(wǎng)格和服務(wù)跟蹤項目:Docker Notary、Lyft Envoy和Uber Jaeger

責任編輯:editor004

作者:Daniel Bryant

2017-11-06 11:03:03

摘自:INFOQ

Cloud Native Computing Foundation(CNCF)發(fā)布了新的托管項目:Docker Notary通過使用強壯的加密簽名為容器鏡像等數(shù)字內(nèi)容提供了安全信任機制;紐約

Cloud Native Computing Foundation(CNCF)發(fā)布了新的托管項目:Docker Notary通過使用強壯的加密簽名為容器鏡像等數(shù)字內(nèi)容提供了安全信任機制;紐約大學Tandon工程學院的The Update Framework(TUF)是一個開源的安全信任規(guī)范,而Notary是TUF的一個實現(xiàn);Lyft Envoy服務(wù)網(wǎng)格是一種用在微服務(wù)通信方面的數(shù)據(jù)面板代理;Uber的Jaeger跟蹤系統(tǒng)可以用于在分布式系統(tǒng)(如基于微服務(wù)架構(gòu)的應(yīng)用)中跟蹤請求和數(shù)據(jù)的流向。

Docker公司于2015年創(chuàng)立了Notary項目,它通過使用強壯的數(shù)字簽名為數(shù)字內(nèi)容提供了高級的安全信任機制。例如,可以用它為容器鏡像和相關(guān)的元數(shù)據(jù)進行數(shù)字簽名。除了可以確保軟件的安全性,它還能保證軟件在沒有得到授權(quán)的情況下不會被修改。帶有Docker Content Trust(使用了Notary)的企業(yè)版Docker就可以為數(shù)字內(nèi)容建立清晰的安全策略。

TUF是一組開源的規(guī)范,由Justin Cappos教授于2009年制訂,后由Cappos教授領(lǐng)導的紐約大學Tandon工程學院安全系統(tǒng)實驗室繼續(xù)后續(xù)的開發(fā)工作。他們與Notary合作將該項目提交給了CNCF,因為Notary是眾多實現(xiàn)了TUF規(guī)范的項目中最為成熟的一個。Notary/TUF提供了一個客戶端和一對服務(wù)器應(yīng)用程序,可以用來托管簽名過的元數(shù)據(jù),并執(zhí)行有限的在線簽名。

圖1. Notary/TUF的簽名和驗證流程圖

目前Notary的使用案例:Docker使用Notary來實現(xiàn)Docker Content Trust和所有的子命令安全信任機制;CoreOS的Quay(一種容器注冊表SaaS)使用Notary來驗證容器鏡像和元數(shù)據(jù);LinuxKit使用Notary來發(fā)行它的內(nèi)核和系統(tǒng)包。Notary不僅被用在容器發(fā)行上,還被用在生產(chǎn)環(huán)境當中,比如Cloudflare將它集成到他們的PAL工具中,而Kolide用它來加固osquery工具的更新管理器。

上月,Envoy成為CNCF的第11個托管項目。Envoy最初由Lyft開發(fā),用于拆解他們的單體系統(tǒng),是一個高性能的開源服務(wù)代理,旨在讓網(wǎng)絡(luò)通信對應(yīng)用程序透明。軟件工程師Matt Klein領(lǐng)導了這支開發(fā)團隊,通過巧妙的設(shè)計為應(yīng)用程序開發(fā)人員隱藏掉了復雜的網(wǎng)絡(luò)通信細節(jié)。出于性能方面的考慮,他們選擇使用C++來開發(fā)Envoy。它的進程外(out-of-process)架構(gòu)讓它可以被用在基于任何一門語言開發(fā)或使用任意一種運行時運行的應(yīng)用程序。它支持HTTP/2或gRPC、MongoDB過濾和速率限定,等等。

圖2. Envoy目前在Lyft的使用情況

Klein在最近的一篇博文上寫道,Lyft的業(yè)務(wù)幾乎都是以開源技術(shù)為支撐的。

如果沒有這些開源技術(shù),我們所鐘愛的共乘服務(wù)可能就不會存在到今天。我們在Envoy上投入了大量的開發(fā)工作,我們也意識到很多組織在從單體遷移到微服務(wù)架構(gòu)過程中也面臨著同樣的問題,我們希望能夠為促進Lyft發(fā)展的廣大社區(qū)回饋我們的力量。因此,我們決定將Envoy開源,并努力為其建立一個社區(qū)。

目前,Envoy項目有78個貢獻者,他們至少來自10個不同的公司,與一些來自Lyft和谷歌的主要開發(fā)者共同維護著這個項目。Klein相信,“從技術(shù)方面來看,Envoy完全有機會成為現(xiàn)代微服務(wù)架構(gòu)的一個主要組件”。這種信念很快就成為了現(xiàn)實,Verizon已經(jīng)將其用在他們的Nelson自動化容器部署平臺上,而Istio服務(wù)網(wǎng)格控制面板項目也很快在業(yè)界引起了人們的注意,初創(chuàng)公司Datawire正在基于Envoy開發(fā)開源工具Ambassador。Envoy彌補了CNCF服務(wù)網(wǎng)格項目Linkerd(由Buoyant公司創(chuàng)立)的不足。

最近發(fā)布的托管項目還有Jaeger分布式跟蹤器,最初由Uber創(chuàng)立,是CNCF的第12個托管項目。Jaeger使用了與OpenTracing兼容的數(shù)據(jù)模型,提供了多種語言的增強包,如Go語言、Java、Node和Python。OpenTracing是一個現(xiàn)有的CNCF托管項目,定義了一個與廠商無關(guān)的分布式跟蹤開放標準。

圖3. Jaeger的架構(gòu)和Jaeger在Uber的使用情況

Uber從2015年開始在公司內(nèi)部部署Jaeger,現(xiàn)在它已經(jīng)被集成到數(shù)千個微服務(wù)當中,每秒鐘可以記錄數(shù)千個跟蹤事件。Base CRM、Stagemonitor和Symantec等公司也使用了跟蹤系統(tǒng)。另外,Red Hat等公司也是該項目的活躍貢獻者。CNCF技術(shù)委員會代表及項目贊助者Bryan Cantrill在最近的一篇博文中說,分布式跟蹤系統(tǒng)為微服務(wù)系統(tǒng)提供了可觀測性:

微服務(wù)架構(gòu)的槽點之一是微服務(wù)有可能變成分布式單體:復雜而相互依賴的系統(tǒng),一些不可預(yù)見的交互就會導致它們失效。為了解決這個問題,我們必須具備在服務(wù)間跟蹤代碼的能力。

關(guān)于Jaeger更多的信息可以在Uber的“解決分布式跟蹤”這篇博文中看到,博文由Yuri Shkuro撰寫,解釋了Jaeger背后的歷史和架構(gòu)發(fā)展的來龍去脈。

CNCF網(wǎng)站上提供了章程細節(jié)、當前的成員關(guān)系和托管項目的清單。CNCF網(wǎng)站上的公告區(qū)也包含了在這篇新聞里提到的托管項目的細節(jié)。

查看英文原文:CNCF Adds Security, Service Mesh and Tracing Projects: Docker Notary, Lyft Envoy and Uber Jaeger

鏈接已復制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號