app aws_服务网格:Istio和AWS App Mesh
app aws
本周在AWS re:Invent上的重大公告之一是AWS App Mesh 。
在談論它之前,讓我們先看一下網格到底是什么……
什么是服務網格?
服務網格是微服務體系結構的基礎結構層。 它處理服務之間的通信問題,使該通信更加可見(或“可觀察”)且易于管理。 更具體地說,它可以處理諸如服務發現,路由和負載平衡,安全性(例如,加密,TLS,身份驗證,授權)之類的事情,并提供錯誤處理(例如重試和斷路)。
控制計劃與數據平面
上面提到的功能(服務發現,路由,加密,身份驗證/身份驗證等)是將數據(網絡數據包)執行進出微服務的操作。 結果,它們有時被稱為“數據平面”。
我們如何控制對數據的操作稱為“控制平面”。 控制平面是用于控制流量的策略和配置。
數據平面通常實現為與每個微服務一起運行的“邊車”代理。 最受歡迎的是Envoy代理 (由Lyft的人們創建),而這確實是AWS App Mesh所使用的。 過去,主要控制平面是Istio ,但現在AWS App Mesh也已移入該空間。
數據平面和控制平面一起稱為服務網格。
(我想您可能會爭論AWS App Mesh是將Envoy用作其數據平面的控制平面,還是App Mesh只是具有相應數據和控制計劃的Service Mesh。后者–認為App Mesh僅僅是一個Service Mesh –對我來說似乎更有意義)。
為什么我們需要服務網格?
盡管該術語是新術語,但數據平面的概念卻并非如此。 路由,加密等是分布式計算必不可少的。 但是,控制平面的概念是新概念,或者至少該概念以前從未真正地正式化或命名過。 馬特·克萊因(Matt Klein)(Envoy的架構師) 認為 ,通常通常使用即席配置和腳本工??具手動完成此操作。 但是確實存在需求。 嚴重缺乏更容易控制和觀察流量的功能。 我當然已經看到微服務的間歇性問題,您很難解釋,開發人員聳了聳肩,問“網絡問題?”。
使用邊車在服務網格中處理這些類型的問題的優點是,它使應用程序(和相關的開發團隊)免于必須在每個應用程序中處理這些問題的麻煩。 過去,通常會在每個應用程序中使用通用代碼(例如庫)來解決此類問題,但缺點是需要特定于語言以及必須與應用程序發行版捆綁在一起。
AWS App網格
新的AWS App網格(當前可作為公共預覽使用)旨在使其“易于監視和控制在AWS上運行的微服務”。 App Mesh可以與在EC2上運行的ECS , EKS和Kubernetes一起使用,并且可以與現有的AWS服務(例如CloudWatch和X-Ray)結合使用 。
除了提供流量可觀察性之外,App Mesh還旨在幫助進行部署,允許您通過使用虛擬路由器來配置流量路由,并允許使用藍色/綠色金絲雀部署來推出新的服務版本。
App Mesh沒有額外的價格,僅是您與ECS / EKS / EC2等一起使用的計算資源的價格。
那Istio呢?
一段時間以來,Istio一直是服務網格的主要選擇,而且AWS App Mesh和Istio之間肯定有很多相似之處。 兩者都是服務網格。 兩者都包裝Envoy作為數據平面。 兩者的目的都是為了解決相似的需求,以允許您監視和控制微服務之間的流量。
但是,Istio是開源的,與供應商無關,并且已經存在了很長時間,因此更加成熟。 例如,Istio 安全功能包括通過支持mTLS進行傳輸(服務到服務)身份驗證,以及通過JWT并與Auth0 , Firebase Auth和Google Auth集成,進行原始(最終用戶)身份驗證 。 它還不僅支持使用AWS IAM的服務身份,還支持Kubernetes和GKE / GCE / GCP的服務身份。
AWS App Mesh確實提供了與IAM策略,角色和權限的集成,但是我無法在文檔中找到有關身份驗證支持的其他信息。 也許我只是想念它。 請注意,Istio通過Envoy提供了其Mutual TLS身份驗證,因此大概(?)App Mesh將能夠做到這一點。
因此,App Mesh似乎缺少Istio的某些功能。 但是,考慮到AWS是房間中的800磅大猩猩,不僅擁有大量的工程資源,而且在工程界也得到了廣泛的普及,因此它似乎有可能成為一種主導工具。 它會取代Istio嗎? 觀看會很有趣……
參考資料和進一步閱讀
- re:Invent 2018中的“ AWS App Mesh簡介”會話視頻
- 服務網格數據平面與控制平面 (Matt Klein)
- AWS App Mesh (AWS)
- 推出AWS App Mesh –適用于AWS (AWS) 上微服務的服務網格
- AWS App Mesh (AWS) 入門
- 特使代理
- Istio
翻譯自: https://www.javacodegeeks.com/2018/12/service-mesh-istio-aws-app-mesh.html
app aws
總結
以上是生活随笔為你收集整理的app aws_服务网格:Istio和AWS App Mesh的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么实现电脑版和手机上的微信同步微信如何
- 下一篇: 消息称《原神》游戏可在搭载 M1 芯片的