<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
在我們部署具有多個服務的分散式業務時,必須要考慮的一點就是如何處理服務之間的通訊問題,那麼當我們將業務部署到Rainbond 上時,又是如何去處理的呢?
Rainbond 開箱即用的ServiceMesh架構預設通過 Sidecar 代理的方式,為我們透明的解決了分散式場景下元件間的通訊問題。
例如A元件需要存取B元件,可以讓A元件依賴B元件,這樣A元件啟動時會同時以外掛方式啟動一個 envoy 服務,而 envoy 服務會將B元件的對內埠對映到A元件 Pod 網路空間的本地迴環地址127.0.0.1的相同埠,也就是說B元件開通了對內的8080埠,那麼在建立了A到B的依賴關係後,在A元件記憶體取127.0.0.1:8080會由 envoy 將相關請求轉發到B元件的8080埠。
但是我們實際的業務中經常會出現一種情況,那就是一個元件需要和多個其他元件通訊,而這些元件使用的伺服器埠有可能會相同,這就會導致 envoy 在本地迴環地址127.0.0.1起監聽時出現埠衝突。
我們可以通過以下方式解決這個問題:
這一型別的元件,通過Rainbond網路治理外掛設定下游元件的域名(Domain)、請求路徑、請求頭等路由條件,由envoy通過80埠將存取對應域名的請求轉發至對應的後端元件埠,不再監聽開通外掛的元件網路空間的對應埠,具體設定流程如下:
建立依賴關係
開通A元件網路治理外掛
設定下游服務存取域名
更新元件並測試域名存取效果
注意事項
網路治理類外掛會監聽服務網路的127.0.0.1:80,因此如果A元件本身再監聽80埠的,會出現因80埠已被佔用服務無法啟動而導致的元件狀態執行異常
Rainbond上執行的元件在啟動時會自動注入一個環境變數PORT,值為元件設定的第一個埠,可以設定元件啟動時參照PORT變數設定服務的監聽埠,將服務監聽的埠由平臺控制,即可不修改程式碼實現監聽埠變更。這樣依賴的不同服務設定不同的埠就可以避免衝突問題了,以Java專案原始碼構建為例,具體設定流程如下:
設定構建源的啟動命令為
web: java -Dserver.port=$PORT $JAVA_OPTS -jar target/*.jar
新增元件埠並構建元件。
驗證服務監聽埠
不同的開發語言和中介軟體設定監聽埠的方式不同,開發者需要根據實際的設定方式進行開發設定。
在 Rainbond 即將到來的5.3版本中,將支援直接使用 Kubernetes 原生 Service 模式,並提供友好的設定方式,在這種網路治理模式下,每個對內埠都可以設定自定義存取域名,設定之後會生成對應的 Service 資源,這樣元件間就可以直接通過內部域名+埠的方式進行存取,不再由 envoy 進行埠代理,從根本上避免出現埠衝突的問題。
在 Rainbond 的後續版本中也將會支援 Istio 網路治理模式,在這種網路治理模式下,只會監聽 Istio 設定的固定 Pod 埠,而不去監聽需要存取的元件埠,需要存取的其他元件都會由 Pilot 設定流量規則和設定後交由 Envoy 通過 15001/15006 進行轉發。
Rainbond 雲原生應用管理平臺,實現微服務架構不用改程式碼,管理 Kubernetes 不用學容器,幫企業實現應用上雲,一站式將任何企業應用持續交付到 Kubernetes 叢集、混合雲、多雲等基礎設施。是 Rainstore 雲原生應用商店的支撐平臺。
1. Rainbond 官網
以上就是Rainbond的ServiceMesh架構元件埠衝突處理解決的詳細內容,更多關於Rainbond ServiceMesh埠衝突解決的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45