日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

为特使建立控制平面的指南-识别组件

發(fā)布時(shí)間:2023/12/3 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为特使建立控制平面的指南-识别组件 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

確定控制平面所需的組件

由于操作環(huán)境的范圍千差萬(wàn)別,因此為Envoy實(shí)施控制平面所需的組件也可能如此。 例如,在一種極端情況下,如果您在構(gòu)建時(shí)靜態(tài)生成了Envoy文件并將其發(fā)送到Envoy,則需要以下組件:

  • 模板引擎
  • 數(shù)據(jù)存儲(chǔ)/ VCS
  • 每服務(wù)配置
  • 協(xié)調(diào)器將碎片拼湊在一起
  • 將這些交付給Envoy并熱重啟的方法

另一方面,如果您選擇使用gRPC流xDS實(shí)現(xiàn),則需要:

  • 核心xDS服務(wù)
  • 發(fā)現(xiàn)注冊(cè)表+您需要的任何集成
  • 描述您的Envoy配置的抽象對(duì)象模型

您最可能需要支持Envoy的其他輔助組件:

  • 證書/ CA商店
  • 統(tǒng)計(jì)收集引擎
  • 分布式跟蹤后端/引擎
  • 外部認(rèn)證
  • 限速服務(wù)

通常,您將需要考慮構(gòu)建控制平面,以便組件獨(dú)立運(yùn)行并可以松散協(xié)作以提供控制平面的需求。 例如,在Gloo中,我們具有驅(qū)動(dòng)基本控制平面的以下組件:

  • Gloo –一個(gè)事件驅(qū)動(dòng)的組件,負(fù)責(zé)核心xDS服務(wù)和自定義Envoy篩選器的配置
  • Discovery –一個(gè)可選組件,它知道如何與服務(wù)發(fā)現(xiàn)服務(wù)(領(lǐng)事,Kubernetes等)一起使用,以發(fā)現(xiàn)并發(fā)布上游集群和端點(diǎn)。 它還可以發(fā)現(xiàn)REST終結(jié)點(diǎn)(使用swagger),gRPC函數(shù)(基于gRPC反射)以及AWS / GCP / Azure云功能。 該組件創(chuàng)建配置(在Kubernetes上,用CustomResourceDefinitions表示), Gloo組件可用于構(gòu)建通過(guò)xDS表示的規(guī)范Envoy配置。 我們將在本系列博客的后續(xù)部分中看到更多內(nèi)容。
  • Gateway –該組件允許用戶使用更舒適的對(duì)象模型根據(jù)其角色(例如,邊緣網(wǎng)關(guān),共享代理,本地群集入口等)配置Envoy代理。 控制平面的這一部分還生成配置, Gloo控制平面可用于通過(guò)xDS生成Envoy配置

如您所見(jiàn),這些基本組件協(xié)同工作以構(gòu)建通過(guò)xDS服務(wù)的適當(dāng)?shù)腅nvoy配置。 Gloo通過(guò)使用這些無(wú)效協(xié)調(diào)的控制平面組件來(lái)實(shí)現(xiàn)Envoy配置,從而實(shí)現(xiàn)了其強(qiáng)大的功能(發(fā)現(xiàn)功能,對(duì)功能的語(yǔ)義理解等)。 當(dāng)將Gloo部署到Kubernetes中時(shí),存儲(chǔ)和配置表示具有“ kube-native”的感覺(jué):一切都由Custom Resource Definitions表示。 具體來(lái)說(shuō),所有面向用戶的配置都是CRD以及驅(qū)動(dòng)xDS端點(diǎn)的核心配置。 您可以只使用Kubernetes API和kubectl與Gloo進(jìn)行交互。 但是,我們還提供了一個(gè)glooctl CLI工具來(lái)簡(jiǎn)化與Gloo控制平面的交互 -特別是這樣,如果您不想這樣做,就不必大驚小怪。 這樣,Gloo非常專注于開發(fā)人員的經(jīng)驗(yàn),并且對(duì)開發(fā)人員(或任何人?)進(jìn)行YAML攻擊非常繁瑣。

Istio還采用了類似的方法,即使用通過(guò)Kubernetes CRD配置的松散協(xié)調(diào)控制平面組件。 Istio的控制平面由以下組成:

  • Istio Pilot –核心xDS服務(wù)
  • Istio Galley –配置/存儲(chǔ)抽象
  • Istio Citadel – CA /證書引擎
  • Istio Telemetry –遙測(cè)信號(hào)接收器
  • Istio Policy –可插拔策略引擎

帶走

確定控制平面所需的核心組件。 不要嘗試構(gòu)建單一的整體式控制平面抽象,因?yàn)檫@將成為維護(hù)和更新的噩夢(mèng)。 在松耦合架構(gòu)中構(gòu)建控制平面所需的組件。 如果您可以在Kubernetes之上構(gòu)建,請(qǐng)這樣做: Kubernetes為運(yùn)行分布式系統(tǒng)(例如Envoy控制平面) 提供了非常強(qiáng)大的集成數(shù)據(jù)平面。 如果您確實(shí)在Kubernetes上構(gòu)建了控制平面,則應(yīng)該利用自定義資源定義來(lái)驅(qū)動(dòng)控制平面的配置。 一些人選擇使用Ingress定義 , 服務(wù)注釋或配置圖來(lái)構(gòu)建其控制平面。 在Kubernetes CRD可用之前,這些可能是適當(dāng)?shù)慕鉀Q方法,但此時(shí)您應(yīng)該避免使用這些路徑并堅(jiān)持使用CRD。

翻譯自: https://www.javacodegeeks.com/2019/02/control-plane-envoy-identify-components.html

總結(jié)

以上是生活随笔為你收集整理的为特使建立控制平面的指南-识别组件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。