頂級三種服務網格比較 - cncf

banq發表於2021-07-19

隨著微服務架構的普及,服務網格技術應運而生。因為服務網格促進了網路與業務邏輯的分離,它使您能夠專注於應用程式的核心能力。
微服務應用程式分佈在多個伺服器、資料中心或大洲,使其高度依賴網路。服務網格透過使用路由規則和服務之間包的動態方向控制流量來管理服務之間的網路流量。 
在本文中,我們將檢視用例、比較頂級網格選項並回顧最佳實踐。 
雖然每次會議上總會有一些初創公司推出花哨的服務網格產品,但只有三個頂級網格選項在雲原生世界中被廣泛使用:IstioLinkerdConsul Connect。它們都是具有活躍社群的開源產品。根據他們的願景和實施,他們每個人都有自己的優缺點。
 

Istio

Istio是一個 Kubernetes 原生的服務網格,最初由 Lyft 開發並被業界廣泛採用。Google、IBM 和 Microsoft 等領先的雲 Kubernetes 提供商使用 Istio 作為其服務中的預設服務網格。Istio 提供了一組強大的功能來建立服務之間的連線,包括請求路由、超時、熔斷和故障注入。此外,Istio 透過延遲、流量和錯誤等指標深入瞭解應用程式。 
優點
最活躍的社群 業內採用率高 與 Kubernetes 和 VM 配合使用
缺點
陡峭的學習曲線 叢集的大量開銷 沒有本地管理儀表板
 

Linkerd

Linkerd是第二受歡迎的服務網格,並且是雲原生計算基金會 (CNCF) 的一部分
從架構的角度來看,Linkerd 與 Istio 類似,但具有更大的靈活性。這種靈活性來自可插拔架構的多個維度。例如,在連線性方面,Linkerd 可與最流行的入口控制器配合使用,如 Nginx、Traefik 或 Kong。同樣,除了自己的 GUI 之外,它還與 Grafana、Prometheus 和 Jaeger 一起使用以實現可觀察性。  
優點
文件和易於安裝在行業中受到採用和企業支援的牽引力 
缺點
僅適用於 Kubernetes,不支援 VM 缺少一些網路路由功能,例如斷路或速率限制

  

Consul

Consul是分散式應用程式中最流行的服務發現和鍵/值儲存,直到其母公司 HashiCorp 轉換為名為 Consul Connect 的服務網格。
因此,Consul Connect 有一個混合架構,在應用程式旁邊有 Envoy sidecar,它的控制平面和鍵/值儲存是用 Go 開發的。從連線性和安全性的角度來看,Consul Connect 與其替代品相比並沒有提供出色的功能。但是,它具有較少的配置和複雜性,因此更容易上手——就像雲原生世界中的其他 HashiCorp 工具一樣。
優點
由 HashiCorp 和企業級支援可用性支援 適用於 VM 和 Kubernetes 
缺點
有限的開源社群 缺乏完整且易於遵循的文件 
 

 

相關文章