System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及軟件運維,尤其涉及一種集群容器化部署支持外部服務訪問方法及系統。
技術介紹
1、在kubernetes?簡稱(k8s容器云)平臺上,?部署rocketmq?簡稱(消息隊列)服務集群,?但由于rocketmq服務集群都是k8s(容器云)容器化部署運行方式,?集群服務使用的網絡ip地址是集群內部網絡ip地址,?內部網絡ip地址是k8s(容器云)平臺內部服務組件cni(calico)組件負責網絡通信,?但只能k8s(容器云)集群內部通訊。
2、容器化后,?由于基于k8s(容器云)環境部署運行,rocketmq(消息隊列)(nameserver,?brokermaster,?brokerslave,?rocketmq-dashboard)服務組件基于k8s(容器云)?每個服務組件分別已最小單元獨立運行容器pod(最小單元),?從而導致以下幾個問題:
3、基于k8s(容器云)?rocketmq(消息隊列)?nameserver(注冊中心)?以獨立最小單元部署啟動,?但基于集群內使用的網絡是集群內部網絡ip地址段;
4、基于k8s(容器云)rocketmq(消息隊列)其他服務組件(brokermaster,brokerslave,?rocketmq-dashboard)?相互之間獨立以最小單元部署啟動服務,分配ip網絡同樣是集群內部網絡ip地址段,?導致服務只能k8s(容器云)內部通信,?集群外部服務無法訪問鏈接,?即使是使用集群內功能nodeport暴漏也無法對外提供服務,?所以服務只能同
技術實現思路
1、本專利技術提出了一種集群容器化部署支持外部服務訪問方法及系統,以實現集群外部訪問。
2、一方面,一種集群容器化部署支持外部服務訪問方法,包括:
3、采用多階構建rocketmq鏡像文件,rocketmq4.x集群容器化支持外部服務反問方法;
4、k8s容器云使用不同的的網絡組件在不同?模式下會創建tunnl0?ip隧道;
5、容器云平臺broker服務組件使用當前宿主機的ip地址和端口,增加dns解析策略;
6、服務啟動注冊需要獲取到本機的主機名與主機名對應的地址,根據環境動態變化;
7、以root用戶運行容器定義pod的特權和訪問控制權限,設置pod安全性上下文。
8、進一步,所述采用多階構建rocketmq鏡像文件具體包括:
9、rocketmq鏡像文件在部署運行階段將broker服務組件的地址映射到宿主機,保證同一子網內部可以訪問使用宿主機的ip地址與端口;
10、開發helm?chart?yaml文件包管理工具,增加支持配置hostnetwork網絡模式,?得到部署的broker服務組件;
11、在helm?chart?yaml?文件包管理工具部署broker服務組件增加環境變量,傳遞需要的變量屬性。
12、進一步,所述增加dns解析策略還包括:適用于hostnetwork網絡模式運行的pod。
13、進一步,所述pod安全性上下文包括:securitycontext:?fsgroup:?0?runasuser:0?pod安全上下文。
14、進一步,所述在不同?模式下會創建tunnl0?ip隧道還包括:k8s容器云內部服務pod內部網絡數據包經過tunnl0設備封裝一個ip頭進行轉發。
15、另一方面,一種集群容器化部署支持外部服務訪問系統,用于實現權利要求1~5任意一所述的一種集群容器化部署支持外部服務訪問方法,包括生產者和消費者模塊,還包括:
16、注冊中心nameserver:幫助生產者和消費者在集群中定位正確的broker,?并實現消息的可靠傳遞和負載均衡;
17、broker-master服務組件:服務運行過程中,?負責消息中轉和存儲消息;
18、brokerslaave服務組件:在服務運行過程中,?集群模式里每個broker-master服務組件,一個master主組件角色一般配置一個slave從組件角色。
19、本專利技術的有益效果:本專利技術提出了一種集群容器化部署支持外部服務訪問方法及系統,利用多個階段,?使用rocketmq4.x集群容器化服務在容器運行過程中,提供k8s(容器云)內部鏈接訪問、同時支持集群外部應用服務鏈接訪問,從而有效支持使用場景不受限制,?使用場景方式更加廣泛,?更加充分利用計算資源用于業務應用。
本文檔來自技高網...【技術保護點】
1.一種集群容器化部署支持外部服務訪問方法,其特征在于,包括:
2.根據權利要求1所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,所述采用多階構建RocketMQ鏡像文件具體包括:
3.根據權利要求1所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,所述增加DNS解析策略還包括:適用于HostnetWork?網絡模式運行的Pod。
4.根據權利要求1所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,所述Pod安全性上下文包括:?SecurityContext:?fsGroup:?0?runAsUser:?0?Pod安全上下文。
5.根據權利要求4所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,所述在不同?模式下會創建tunnl0?IP隧道?還包括:k8s容器云內部服務Pod內部網絡數據包經過tunnl0設備封裝一個IP頭進行轉發。
6.一種集群容器化部署支持外部服務訪問系統,用于實現權利要求1~5任意一所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,包括生產者和消費者模塊,還
...【技術特征摘要】
1.一種集群容器化部署支持外部服務訪問方法,其特征在于,包括:
2.根據權利要求1所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,所述采用多階構建rocketmq鏡像文件具體包括:
3.根據權利要求1所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,所述增加dns解析策略還包括:適用于hostnetwork?網絡模式運行的pod。
4.根據權利要求1所述的一種集群容器化部署支持外部服務訪問方法,其特征在于,所述pod安全性上下文包括:?sec...
【專利技術屬性】
技術研發人員:謝斌,田吉,李佳,劉彪,婁江南,李成,楊爽,牛建平,孫大臣,管春元,宋錦程,焦質曄,滕訓超,孫增強,
申請(專利權)人:啟明信息技術股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。