1)Service Mesh與Istio介紹
Session主題:Istio: A Modern Service Mesh。
Google 和 IBM 作為 Istio 項目的主要發(fā)起方,第一天上午 Keynote 結束之后,兩大巨頭派出工程師對 Istio 項目的現狀和未來(lái)發(fā)展進(jìn)行了系統的介紹。

Service Mesh 的主要特征包括可監控性、自愈性、流量控制、安全性、策略執行、零代碼改動(dòng)等,采用 Sidecar 機制對微服務(wù)之間的流量進(jìn)行全面管理和控制。Istio 是今年發(fā)布的 Service Mesh 開(kāi)源項目,默認采用 Envoy 作為 Sidecar 代理,與應用容器一起運行在 K8S Pod 中,由 Envoy 接管流量傳輸,并通過(guò)控制平臺管理所有Sidecar。典型的一種應用場(chǎng)景是用于控制不同版本 Pod 之間的流量分配比例,如下圖所示:

兩位演講者還介紹了將要發(fā)布的Istio 1.0版本的目標,目前來(lái)看,穩定性和可靠性仍然是Istio最迫切需要解決的問(wèn)題。

2)Linkerd發(fā)起者分享Service Mesh的前世今生&發(fā)布Conduit項目
Session主題:The Service Mesh: Past, Present and Future
Buoyant 公司作為 Linkerd 項目的發(fā)起者,在本次大會(huì )中也備受關(guān)注,公司創(chuàng )始人 William Morgan 分享了 Service Mesh 的前世今生。Service Mesh 在最近一年的爆發(fā),其實(shí)是隨著(zhù)云原生應用的普及而水到渠成的,與傳統應用相比,云原生應用的基礎抽象發(fā)現了巨大的變化,如下圖所列。因此,云原生應用的落地,迫切需要在容器編排層之上,引入微服務(wù)的管理層,即 Service Mesh 。

William Morgan 還分享了 Service Mesh 下一步需要完善的工作,如下圖所示,其中包括一系列與微服務(wù)治理、安全、協(xié)議、監控和運行平臺相關(guān)的特性。另外,他還提到安全性、性能和可用性是 Service Mesh 目前最值得關(guān)注的三大問(wèn)題。

William Morgan 也帶來(lái)了 one more thing —— 新一代 Service Mesh 項目Conduit 發(fā)布。Conduit 并不能視作 Linkerd 的升級版,其主要特性在于超輕量級、高效、安全等,并只針對于 Kubernetes 環(huán)境。

3)分布式事務(wù)追蹤項目OpenTracing在Service Mesh中的應用
Keynote主題:Service Meshes and Observability
OpenTracing 作為 CNCF 基金會(huì )托管的分布式事務(wù)追蹤項目,與 Istio 、Envoy 、Conduit 等 Service Mesh 項目深度集成,為它們提供事務(wù)追蹤服務(wù)。

在 Service Mesh 架構中,OpenTracing 可以通過(guò)類(lèi)似 Sidecar 的方式與各個(gè)服務(wù)一起部署,并將各個(gè)調用點(diǎn)與追蹤系統連接起來(lái),以實(shí)現對分布式應用系統的事務(wù)追蹤。

4)Istio與Kubernetes腳本工具Brigade配合實(shí)現CI/CD流水線(xiàn)
Session主題:Microservice, Service Mesh & CI/CD Pipelines: Making it all work together
來(lái)自微軟 Azure 團隊的工程師分享了 Istio 與 CI/CD 流水線(xiàn)相互配合的實(shí)踐經(jīng)驗,使用 Istio 作為應用的管理平面,對接 CI/CD 工具鏈,通過(guò) Istio 的流量控制來(lái)實(shí)現金絲雀發(fā)布測試。

值得一提的是,該團隊并未使用國內常用的 Jenkins 作為 CI/CD 流水線(xiàn)工具,而是使用了微軟新發(fā)布的專(zhuān)門(mén)針對 Kubernetes 平臺的事件驅動(dòng)腳本工作來(lái)實(shí)現 CI/CD 。

在 Demo 展示環(huán)節中,演講者詳細演示了 Istio 如何與 CI/CD 流水線(xiàn)協(xié)同工作。如下面3個(gè)圖所示,在代碼提交 PR 之前,Web 端流量全部導入當前生產(chǎn)環(huán)境版本(藍色),而在測試版本提交PR之后,通過(guò) Istio 對新舊版本的流量進(jìn)行了分配(90%與10%),實(shí)現金絲雀發(fā)布,測試完成之后,再將全部流量導入新版本中(綠色)。



Demo源代碼鏈接:https://github.com/chzbrgr71/kube-con-2017
社區評論
在 Kubernetes 贏(yíng)得容器編排之戰后,社區、廠(chǎng)商和用戶(hù)的關(guān)注點(diǎn)不約而同的都開(kāi)始集中在如何更好的落地微服務(wù)化的云原生應用。可以看到,業(yè)界目前比較明顯的趨勢是將微服務(wù)應用管理這層從支撐平臺中解耦出來(lái),形成 Service Mesh 層,包括服務(wù)的路由、負載均衡、流量分配和監控等一系列功能,都由 Service Mesh 來(lái)完成。
目前來(lái)看,社區的各個(gè) Service Mesh 項目發(fā)布時(shí)間都不長(cháng),不管是Istio、Linkerd 還是新發(fā)布的 Conduit ,雖然社區發(fā)展非常迅速,但都還需要經(jīng)過(guò)時(shí)間的檢驗,以達到企業(yè)級用戶(hù)所需的穩定性、可靠性、安全性、易用性等要求。隨著(zhù)云原生應用的日趨普及,毫無(wú)疑問(wèn) Service Mesh 這項技術(shù)將具備美好的前景,讓我們拭目以待。
—— KubeCon 北美峰會(huì )評論員 Pablo Zhong
雙12福利預告:
12月12日,開(kāi)源云中文社區將聯(lián)合K8S技術(shù)社區、EasyStack為國內社區用戶(hù)精彩送上“赴美大咖團國內首輪直播訪(fǎng)談”,為大家解讀KubeCon北美峰會(huì )最新最熱議題內容!添加小助手免費報名!