欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Rainbond的ServiceMesh架構(gòu)組件端口沖突處理解決

 更新時間:2022年04月20日 16:41:56   作者:劉帥  
這篇文章主要大家介紹了Rainbond?ServiceMesh架構(gòu)組件端口沖突處理方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

組件間的通訊問題

在我們部署具有多個服務(wù)的分布式業(yè)務(wù)時,必須要考慮的一點就是如何處理服務(wù)之間的通信問題,那么當我們將業(yè)務(wù)部署到Rainbond 上時,又是如何去處理的呢?

Rainbond 開箱即用的ServiceMesh架構(gòu)默認通過 Sidecar 代理的方式,為我們透明的解決了分布式場景下組件間的通訊問題。

例如A組件需要訪問B組件,可以讓A組件依賴B組件,這樣A組件啟動時會同時以插件方式啟動一個 envoy 服務(wù),而 envoy 服務(wù)會將B組件的對內(nèi)端口映射到A組件 Pod 網(wǎng)絡(luò)空間的本地回環(huán)地址127.0.0.1的相同端口,也就是說B組件開通了對內(nèi)的8080端口,那么在建立了A到B的依賴關(guān)系后,在A組件內(nèi)訪問127.0.0.1:8080會由 envoy 將相關(guān)請求轉(zhuǎn)發(fā)到B組件的8080端口。

但是我們實際的業(yè)務(wù)中經(jīng)常會出現(xiàn)一種情況,那就是一個組件需要和多個其他組件通信,而這些組件使用的服務(wù)端口有可能會相同,這就會導(dǎo)致 envoy 在本地回環(huán)地址127.0.0.1起監(jiān)聽時出現(xiàn)端口沖突。

我們可以通過以下方式解決這個問題:

方式一:通過HTTP 7層網(wǎng)絡(luò)治理進行端口復(fù)用

這一類型的組件,通過Rainbond網(wǎng)絡(luò)治理插件設(shè)置下游組件的域名(Domain)、請求路徑、請求頭等路由條件,由envoy通過80端口將訪問對應(yīng)域名的請求轉(zhuǎn)發(fā)至對應(yīng)的后端組件端口,不再監(jiān)聽開通插件的組件網(wǎng)絡(luò)空間的對應(yīng)端口,具體配置流程如下:

建立依賴關(guān)系

開通A組件網(wǎng)絡(luò)治理插件

配置下游服務(wù)訪問域名

更新組件并測試域名訪問效果

注意事項

網(wǎng)絡(luò)治理類插件會監(jiān)聽服務(wù)網(wǎng)絡(luò)的127.0.0.1:80,因此如果A組件本身再監(jiān)聽80端口的,會出現(xiàn)因80端口已被占用服務(wù)無法啟動而導(dǎo)致的組件狀態(tài)運行異常

方式二:動態(tài)變更組件的監(jiān)聽端口

Rainbond上運行的組件在啟動時會自動注入一個環(huán)境變量PORT,值為組件設(shè)置的第一個端口,可以設(shè)置組件啟動時引用PORT變量設(shè)置服務(wù)的監(jiān)聽端口,將服務(wù)監(jiān)聽的端口由平臺控制,即可不修改代碼實現(xiàn)監(jiān)聽端口變更。這樣依賴的不同服務(wù)設(shè)置不同的端口就可以避免沖突問題了,以Java項目源碼構(gòu)建為例,具體配置流程如下:

設(shè)置構(gòu)建源的啟動命令為

web: java -Dserver.port=$PORT $JAVA_OPTS -jar target/*.jar

添加組件端口并構(gòu)建組件。

驗證服務(wù)監(jiān)聽端口

不同的開發(fā)語言和中間件設(shè)置監(jiān)聽端口的方式不同,開發(fā)者需要根據(jù)實際的設(shè)置方式進行開發(fā)配置。

方式三:使用 Kubernetes 原生 Service 治理模式

在 Rainbond 即將到來的5.3版本中,將支持直接使用 Kubernetes 原生 Service 模式,并提供友好的配置方式,在這種網(wǎng)絡(luò)治理模式下,每個對內(nèi)端口都可以設(shè)置自定義訪問域名,設(shè)置之后會生成對應(yīng)的 Service 資源,這樣組件間就可以直接通過內(nèi)部域名+端口的方式進行訪問,不再由 envoy 進行端口代理,從根本上避免出現(xiàn)端口沖突的問題。

方式四:使用 Istio 網(wǎng)絡(luò)治理模式

在 Rainbond 的后續(xù)版本中也將會支持 Istio 網(wǎng)絡(luò)治理模式,在這種網(wǎng)絡(luò)治理模式下,只會監(jiān)聽 Istio 配置的固定 Pod 端口,而不去監(jiān)聽需要訪問的組件端口,需要訪問的其他組件都會由 Pilot 設(shè)置流量規(guī)則和配置后交由 Envoy 通過 15001/15006 進行轉(zhuǎn)發(fā)。

Rainbond 云原生應(yīng)用管理平臺,實現(xiàn)微服務(wù)架構(gòu)不用改代碼,管理 Kubernetes 不用學(xué)容器,幫企業(yè)實現(xiàn)應(yīng)用上云,一站式將任何企業(yè)應(yīng)用持續(xù)交付到 Kubernetes 集群、混合云、多云等基礎(chǔ)設(shè)施。是 Rainstore 云原生應(yīng)用商店的支撐平臺。

1. Rainbond 官網(wǎng)

2. Rainbond 安裝使用

3. Rainbond 參考手冊全集

以上就是Rainbond的ServiceMesh架構(gòu)組件端口沖突處理解決的詳細內(nèi)容,更多關(guān)于Rainbond ServiceMesh端口沖突解決的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • k8s自身原理service及實現(xiàn)圖文示例解析

    k8s自身原理service及實現(xiàn)圖文示例解析

    這篇文章主要為大家介紹了k8s自身原理service圖文示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • kubernetes需要默認的serviceaccount的原因解析

    kubernetes需要默認的serviceaccount的原因解析

    這篇文章主要介紹了kubernetes為何需要默認的serviceaccount,ServiceAccount 是 Kubernetes 中的一種重要概念,它的實際使用場景包括很多,本文給大家講解的非常詳細,需要的朋友可以參考下
    2023-04-04
  • Kubernetes中創(chuàng)建命名空間實現(xiàn)方法

    Kubernetes中創(chuàng)建命名空間實現(xiàn)方法

    這篇文章主要為大家介紹了Kubernetes中創(chuàng)建命名空間實現(xiàn)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • Kubernetes訪問控制之鑒權(quán)方法詳解

    Kubernetes訪問控制之鑒權(quán)方法詳解

    這篇文章主要為大家介紹了Kubernetes訪問控制之鑒權(quán)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • 理解k8s控制器DaemonSet創(chuàng)建及使用場景

    理解k8s控制器DaemonSet創(chuàng)建及使用場景

    這篇文章主要為大家介紹了k8s控制器DaemonSet創(chuàng)建及使用場景詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • k8s service使用詳解(云原生kubernetes)

    k8s service使用詳解(云原生kubernetes)

    這篇文章主要介紹了k8s service使用詳解(云原生kubernetes),一個Service可以看作一組提供相同服務(wù)的Pod的對外訪問接口,作用于哪些Pod是通過標簽選擇器來定義的 ,Service是一個概念,主要作用的是節(jié)點上的kube-proxy服務(wù)進程,本文結(jié)合示例代碼詳解,需要的朋友參考下
    2023-02-02
  • Rainbond的ServiceMesh架構(gòu)組件端口沖突處理解決

    Rainbond的ServiceMesh架構(gòu)組件端口沖突處理解決

    這篇文章主要大家介紹了Rainbond?ServiceMesh架構(gòu)組件端口沖突處理方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-04-04
  • 如何給k8s集群里的資源打標簽

    如何給k8s集群里的資源打標簽

    k8s集群,節(jié)點如果有多個角色,需要標記出來,可以給對應(yīng)的節(jié)點打上標簽,方便后續(xù)了解節(jié)點的功能,這篇文章主要介紹了如何給k8s集群里的資源打標簽,需要的朋友可以參考下
    2023-02-02
  • Rainbond云原生部署SpringCloud應(yīng)用架構(gòu)實踐

    Rainbond云原生部署SpringCloud應(yīng)用架構(gòu)實踐

    這篇文章主要為大家介紹了Rainbond云原生部署SpringCloud應(yīng)用架構(gòu)實踐,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-04-04
  • Kubernetes(K8S)基礎(chǔ)知識

    Kubernetes(K8S)基礎(chǔ)知識

    本文詳細講解了Kubernetes(K8S)的基礎(chǔ)知識,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04

最新評論