2022-10-04 分類(lèi): 網(wǎng)站建設(shè)
服務(wù)網(wǎng)格(Service Mesh)并不是新概念,但將其作為運(yùn)行容器平臺(tái)在Kubernetes之上的微服務(wù)連接來(lái)實(shí)現(xiàn),則是服務(wù)網(wǎng)格變得更為流行的原因。如果沒(méi)有服務(wù)網(wǎng)格,則每個(gè)微服務(wù)都需要配置接受并發(fā)送與其通信的其他微服務(wù)的連接,而服務(wù)網(wǎng)格完全改變了這一點(diǎn)。
開(kāi)發(fā)者現(xiàn)在可以創(chuàng)建一個(gè)網(wǎng)格,使微服務(wù)能夠以可靠,安全和可控的方式相互通信,而不必處理手動(dòng)配置,并且不必花費(fèi)大量時(shí)間和精力來(lái)維護(hù)微服務(wù)之間的連接。Kubernetes和服務(wù)網(wǎng)格相輔相成,因?yàn)槭褂梅?wù)網(wǎng)格可以實(shí)現(xiàn)更復(fù)雜的容器化架構(gòu),而不會(huì)增加額外的工作量。還有很多方法可以將服務(wù)網(wǎng)格建立為Kubernetes上的一層,來(lái)看看時(shí)下流行的服務(wù)網(wǎng)格工具。
AWS App Mesh
目前,許多Kubernetes支持的應(yīng)用和微服務(wù)都在AWS的環(huán)境中運(yùn)行,因此談到服務(wù)網(wǎng)格很難避開(kāi)AWS App Mesh不談。AWS App Mesh是亞馬遜自己的服務(wù)網(wǎng)格,為AWS的服務(wù)創(chuàng)建服務(wù)網(wǎng)格層。
AWS App Mesh結(jié)合了Envoy的專(zhuān)有技術(shù)作為其服務(wù)代理,通過(guò)創(chuàng)建虛擬服務(wù)在相同名稱(chēng)空間內(nèi)的連接服務(wù)。AWS環(huán)境中的每個(gè)微服務(wù)都可以找到該虛擬服務(wù),并將其用于將通信引導(dǎo)至其他微服務(wù)。
AWS App Mesh與其他AWS服務(wù),如EKS,F(xiàn)argate和EC2的無(wú)縫集成是其最強(qiáng)的優(yōu)勢(shì)之一,但是在使用AWS App Mesh方面存在一些限制,不能遷移到App Mesh外部或在多云設(shè)置中使用這項(xiàng)服務(wù)。
此外,App Mesh還借助CloudWatch和AWS X-Ray來(lái)管理服務(wù)網(wǎng)格,但這意味著你無(wú)需離開(kāi)主儀表板就可完全控制服務(wù)網(wǎng)格層。盡管App Mesh不支持授權(quán)規(guī)則,但也支持如mTLS、高級(jí)負(fù)載均衡之類(lèi)的安全功能。
Istio
Istio是Kubernetes最受歡迎的服務(wù)網(wǎng)格工具。最初是由為L(zhǎng)yft開(kāi)發(fā),之后成為了Google和IBM聯(lián)合的開(kāi)發(fā)項(xiàng)目。背靠這樣的巨頭,Istio在許多部署類(lèi)型中得到廣泛使用就不足為奇了。
與App Mesh相似,Istio也使用Envoy作為其服務(wù)代理,但并不僅限于Envoy作為唯一的入口控制器。Istio的獨(dú)特之處在于它提供了巨大的靈活性,而沒(méi)有通常的復(fù)雜性。實(shí)際上可以將Istio用于其他容器化平臺(tái),但是它與Kubernetes的無(wú)縫集成才是最為關(guān)鍵的
例如,Istio支持網(wǎng)格擴(kuò)展和多集群網(wǎng)格,這兩個(gè)功能都是App Mesh和許多其他服務(wù)網(wǎng)格工具所沒(méi)有的。Istio也像執(zhí)行這些任務(wù)一樣處理流量訪(fǎng)問(wèn)控制和負(fù)載均衡。它甚至支持故障注入和延遲注入。
而使用Istio的唯一不足就是可能會(huì)對(duì)它提供的功能感到不知如何下手。但如果有足夠的資源使用Istio處理服務(wù)網(wǎng)格層,則它可以利用其功能簡(jiǎn)化最復(fù)雜的微服務(wù)體系架構(gòu)。
Linkerd
Linkerd也是非常流行的服務(wù)網(wǎng)格工具。Kubernetes社區(qū)已經(jīng)很好地接受了新的系列版本,到2020年4月中旬,其穩(wěn)定的2.7.1版本已經(jīng)發(fā)布。它完全是作為獨(dú)立的服務(wù)網(wǎng)格工具構(gòu)建的,因此它不依賴(lài)Envoy等第三方工具進(jìn)行管理。它甚至包含linkerd-proxy作為服務(wù)代理。
最近的升級(jí),還包括儀表板改進(jìn)和金絲雀部署的流量拆分功能的可視化。這使其成為實(shí)時(shí)監(jiān)控和編排金絲雀和藍(lán)/綠部署的好工具。
Linkerd在保持獨(dú)立性的同時(shí),還與入口控制器保持高度兼容性。實(shí)際上,Linkerd能夠與你使用的任何入口控制器一起使用,從而使其在這方面具有很好的靈活性。要使服務(wù)網(wǎng)格與應(yīng)用程序集成在一起,只需要一個(gè)簡(jiǎn)單的連接器注入命令即可。
Linkerd2也進(jìn)行了高度優(yōu)化,安裝僅需60秒。如果你正在尋找一個(gè)可以使表格發(fā)揮好性能的服務(wù)網(wǎng)格工具,那么可以嘗試一下。Linkerd一旦部署,并不需要太多的優(yōu)化。開(kāi)箱即用的配置能夠支持復(fù)雜的微服務(wù)陣列,并且能夠防止重大攻擊。Linkerd通過(guò)mTLS加密來(lái)增強(qiáng)應(yīng)用程序安全性。
它也是專(zhuān)門(mén)為Kubernetes開(kāi)發(fā)的工具,不支持多云和多集群網(wǎng)格創(chuàng)建,但是當(dāng)用作Kubernetes實(shí)例的服務(wù)網(wǎng)格層時(shí),它的功能也不會(huì)因此降低。此外,它還可以與OpenCensus配合使用,使跟蹤和管理變得非常容易。
Kuma
Kuma提供了Envoy作為服務(wù)代理和對(duì)任何入口控制器支持的獨(dú)特組合。它與Consul Connect非常相似,但有些新功能令人耳目一新,Kuma也是與其他工具相比,還很年輕。
Kuma不僅可以投入生產(chǎn),而且還具有功能強(qiáng)大的服務(wù)網(wǎng)格功能。它支持與OpenTracing兼容的所有后端,并在需要時(shí)允許使用外部CA證書(shū)。但它還存在許多功能的不足。
目前,在Kuma中無(wú)法進(jìn)行基于路徑或基于標(biāo)頭的流量拆分,還不支持流量訪(fǎng)問(wèn)控制和指標(biāo)等功能。這些功能可能會(huì)在以后的更新中引入,但是就目前而言,必須手動(dòng)進(jìn)行代理模板處理才能解決這些工具的不足。
盡管如此,Kuma看起來(lái)還不錯(cuò)。它當(dāng)前為0.4.0的版本,它的開(kāi)發(fā)團(tuán)隊(duì)正在不斷聽(tīng)取社區(qū)用戶(hù)的意見(jiàn),盡快追上與其他服務(wù)網(wǎng)格工具的差距。
Consul Connect
HashiCorp的Consul Connect,它可以與Envoy和其他各種服務(wù)代理替代產(chǎn)品一起使用。它還可以與任何入口控制器一起使用,使其成為最容易集成到現(xiàn)有Kubernetes集群中的一種工具。
Consul Connect可在任何Consul環(huán)境中無(wú)縫運(yùn)行。該服務(wù)網(wǎng)格工具雖然提供了許多方便的功能,但只能滿(mǎn)足與其他HashiCorp產(chǎn)品一起使用。
它支持從TCP到gRPC的所有內(nèi)容,也可與Kubernetes,VM和Nomads一起使用。完全支持網(wǎng)格擴(kuò)展,因此可以擁有跨多個(gè)云服務(wù)和集群的環(huán)境,并且具有支持微服務(wù)的功能強(qiáng)大的服務(wù)網(wǎng)格層。
Consul Connect需要改進(jìn)的一方面是監(jiān)控。目前它可以集成其他監(jiān)控工具來(lái)訪(fǎng)問(wèn)日志和按路由度量。如可以集成Prometheus和Grafana之類(lèi)的工具來(lái)進(jìn)行可視化數(shù)據(jù)監(jiān)控。只需要從服務(wù)代理中提取數(shù)據(jù)即可,而不是直接從Consul Connect中提取數(shù)據(jù)。
Envoy Proxy
以上服務(wù)網(wǎng)格工具主要設(shè)計(jì)為與Envoy一起用作服務(wù)代理。與其他邊緣代理工具相比,Envoy確實(shí)具有一些優(yōu)勢(shì),高級(jí)負(fù)載均衡是所有這些工具中最突出的優(yōu)勢(shì)。
自動(dòng)重試,區(qū)域本地負(fù)載均衡和請(qǐng)求屏蔽,使你可以配置流量負(fù)載均衡來(lái)實(shí)現(xiàn)好性能。另一方面,高可可視性使Envoy成為維護(hù)支持功能強(qiáng)大架構(gòu)的強(qiáng)大網(wǎng)絡(luò)的理想解決方案。
寫(xiě)在最后,這些工具的主要目標(biāo)是創(chuàng)建一種云架構(gòu),以滿(mǎn)足微服務(wù)以可靠,安全的方式相互通信。無(wú)論你使用以上哪種工具,都能夠?qū)崿F(xiàn)這個(gè)目標(biāo)。
文章題目:微服務(wù)利器,6個(gè)值得擁有的服務(wù)網(wǎng)格工具
標(biāo)題來(lái)源:http://m.2m8n56k.cn/news48/201648.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、關(guān)鍵詞優(yōu)化、定制網(wǎng)站、自適應(yīng)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:[email protected]。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容