willian morgan(linker 的ceo)給出的service mesh定義:
服務網格是乙個用於處理服務間通訊的基礎設施層,它負責為構建複雜的雲原生應用傳遞可靠的網路請求。在實踐中,服務網格通常實現為一組和應用程式部署在一起的輕量級的網路**,但對應用程式來說是透明的。
理解服務網格。
對於單個服務呼叫,服務網格表現為sidecar(類似kubernetes中pod的sidecar容器)。
定義關鍵點
istio
istio是由google、ibm和lyft開源的微服務管理、保護和監控框架。
使用istio可以很簡單的建立具有負載均衡、服務間認證、監控等功能的服務網路,而不需要對服務的**進行任何修改。只需要在部署環境中,例如kubernetes的pod裡注入乙個特別的sidecar proxy來增加對istio的支援,用來截獲微服務之間的網路流量。
linkerd
linkerd由buoyant開源,也是業界第乙個service mesh專案。
linkerd 是乙個提供彈性雲端原生應用服務網格的開源專案。其核心是乙個透明**,可以用它來實現乙個專用的基礎設施層以提供服務間的通訊,進而為軟體應用提供服務發現、路由、錯誤處理以及服務可見性等功能,而無需侵入應用內部本身的實現。
conduit
buoyant在linkerd不敵istio的惡劣情況下,絕地反擊,推出全新設計的 conduit 作為對抗 istio 的**。
conduit是一款針對kubernetes的超輕量級的service mesh。可以透明得管理服務執行時之間的通訊,使得在kubernetes上執行服務更加安全和可靠;還具有不用修改任何應用程式**即可改進應用程式的可觀測性、可靠性及安全性等方面的特性。
servicemesh開源工具對比
feature
istio
linkerd
conduit
功能支援
負載均衡,服務tls認證,服務呼叫監控,熔斷,動態請求路由,服務發現,服務間流量管理,服務間訪問策略管理
負載均衡,服務tls認證,服務呼叫監控,熔斷,動態請求路由,服務發現
官方文件暫未列出,發展還不完善
第三方外掛程式整合
分布式呼叫鏈跟蹤zipkin、監控套件prometheus與grafana、日誌套件efk、服務圖展示servicegraph
分布式呼叫鏈跟蹤zipkin、監控套件prometheus,influxdb,statsd
監控套件prometheus
部署架構
envoy/sidecar
daemonsets
sidecar
易用性複雜
簡單適中
支援平台
kuberentes
kubernetes/mesos/istio/local
kuberentes
當前版本
0.71.3.7
0.3是否已有生產部署否是
否評分★★★★☆
★★☆☆☆
★★☆☆☆
ServiceMesh 服務網格有哪些應用?
微服務的部署架構中有乙個有趣的邊車模式,並且基於邊車模式,擴充套件出了 service mesh 服務網格的概念。我們一起來學習下 service mesh 相關的知識。service mesh 解決方案 在了解服務網格之前,先來看乙個微服務的設計模式 sidecar,也就是邊車模式。邊車模式是一種...
Istio 服務網格
istio是乙個完全開源的服務網格,作為透明的一層接入到現有的分布式應用程式裡。它也是乙個平台,擁有可以整合任何日誌 遙測和策略系統的 api 介面。istio 多樣化的特性使您能夠成功且高效地執行分布式微服務架構,並提供保護 連線和監控微服務的統一方法。服務網格用來描述組成這些應用程式的微服務網路...
服務網格 前路漫漫
隨著越來越多的公司採用微服務架構,istio linkerd和cilium等服務網格也越來越受關注。服務網格提供了非常有吸引力的特性 全堆疊可觀測性 透明的安全性 系統彈性等。但是,服務網格真的是雲原生應用程式的正確解決方案嗎?本文將討論服務網格在什麼情況下是有意義的,以及什麼時候不應該使用服務網格...