李效利,王志欣通信作者,于 淦
(1.國家無線電監(jiān)測中心云南監(jiān)測站,云南 昆明 650000;2.國家無線電監(jiān)測中心,北京 100037)
分布式是指將不同地點(diǎn)、擁有不同數(shù)據(jù)或不同功能的多臺(tái)計(jì)算機(jī)通過網(wǎng)絡(luò)連接起來,由控制系統(tǒng)統(tǒng)一管理,完成大規(guī)模信息處理的計(jì)算機(jī)系統(tǒng)[1]。
集群是指多臺(tái)服務(wù)器集中在一起提供統(tǒng)一服務(wù),在邏輯上可以看作是一臺(tái)服務(wù)器對(duì)外進(jìn)行服務(wù),這些服務(wù)器就是集群[1]。
在國家短波監(jiān)測一體化平臺(tái)中,九個(gè)監(jiān)測站分布在不同地區(qū),擁有不同的監(jiān)測設(shè)備及監(jiān)測數(shù)據(jù), 監(jiān)測中心對(duì)九個(gè)站點(diǎn)集中統(tǒng)一管理,該平臺(tái)模式可使用集群分布式架設(shè),充分發(fā)揮集群分布式網(wǎng)絡(luò)架構(gòu)優(yōu)勢,提高工作效率及數(shù)據(jù)安全可靠性。
短波監(jiān)測一體化平臺(tái)依托于國家無線電管理一體化平臺(tái)的技術(shù)架構(gòu)進(jìn)行設(shè)計(jì)和實(shí)施,本質(zhì)上是國家無線電管理一體化平臺(tái)的一組應(yīng)用系統(tǒng)。短波監(jiān)測一體化平臺(tái)中管控系統(tǒng)、監(jiān)測設(shè)備、監(jiān)測數(shù)據(jù)庫以及應(yīng)用系統(tǒng)之間的服務(wù)請求與響應(yīng),都經(jīng)過國家無線電管理一體化平臺(tái)進(jìn)行交互。如圖1所示。
圖1 邏輯架構(gòu)總覽
短波監(jiān)測一體化平臺(tái)系統(tǒng)基于SOA服務(wù)架構(gòu)設(shè)計(jì),遵循《短波監(jiān)測管理一體化平臺(tái)技術(shù)規(guī)范》等相關(guān)標(biāo)準(zhǔn)規(guī)范,通過服務(wù)總線對(duì)設(shè)備操作分解為原子服務(wù)層,并通過管控系統(tǒng)規(guī)范標(biāo)準(zhǔn)服務(wù),實(shí)現(xiàn)上層業(yè)務(wù)流程、業(yè)務(wù)應(yīng)用于底層監(jiān)測設(shè)備的解耦[2]。
依據(jù)短波業(yè)務(wù)需要,結(jié)合無線電管理一體化基礎(chǔ)平臺(tái)建設(shè)方式,短波監(jiān)測一體化平臺(tái)核心業(yè)務(wù)調(diào)度(如監(jiān)測管控系統(tǒng)任務(wù)調(diào)度、數(shù)據(jù)處理系統(tǒng)數(shù)據(jù)路由索引)采用中心集中集群部署,通過在監(jiān)測站安裝同步災(zāi)備系統(tǒng),確保網(wǎng)絡(luò)異常情況下監(jiān)測站點(diǎn)監(jiān)測業(yè)務(wù)能正常開展,同時(shí)使用反向代理技術(shù)實(shí)現(xiàn)自動(dòng)切換。數(shù)據(jù)傳輸存儲(chǔ)分析采用中心、監(jiān)測站點(diǎn)分布式部署,將數(shù)據(jù)計(jì)算處理前置,有效緩解網(wǎng)絡(luò)壓力,充分利用監(jiān)測站點(diǎn)計(jì)算和存儲(chǔ)資源,中心具備匯總計(jì)算能力實(shí)現(xiàn)各站數(shù)據(jù)的統(tǒng)一并對(duì)外提供服務(wù)。
圖2 集群分布式架構(gòu)圖
反向代理將短波核心業(yè)務(wù)調(diào)度處理請求路由到國家中心節(jié)點(diǎn),對(duì)設(shè)備、數(shù)據(jù)進(jìn)行統(tǒng)一的調(diào)度、處理,此時(shí),各個(gè)監(jiān)測站災(zāi)備系統(tǒng)自動(dòng)從國家中心同步本站的設(shè)備元數(shù)據(jù),以備斷網(wǎng)模式下對(duì)本站的設(shè)備、數(shù)據(jù)調(diào)度。
當(dāng)中心和監(jiān)測站斷網(wǎng)模式或出現(xiàn)網(wǎng)絡(luò)故障時(shí), 監(jiān)測站的反向代理自動(dòng)監(jiān)測網(wǎng)絡(luò)異常,自動(dòng)將監(jiān)測應(yīng)用的請求切換到本站的短波分布式平臺(tái),保證應(yīng)用對(duì)本站設(shè)備的控制及分析。此時(shí)各個(gè)監(jiān)測站僅對(duì)本站設(shè)備進(jìn)行控制,發(fā)起基礎(chǔ)的監(jiān)測測向功能,包括單頻測量、單頻測向、頻段掃描及頻譜觀測等, 支持本站計(jì)劃任務(wù)、整點(diǎn)半點(diǎn)錄音功能、基礎(chǔ)數(shù)據(jù)分析(頻段占用度統(tǒng)計(jì)、信號(hào)占用度統(tǒng)計(jì)),并將監(jiān)測過程數(shù)據(jù)、業(yè)務(wù)數(shù)據(jù)、結(jié)果數(shù)據(jù)存儲(chǔ)與監(jiān)測站。網(wǎng)絡(luò)恢復(fù)后,監(jiān)測站通過合理的數(shù)據(jù)同步機(jī)制,保證短波站與國家中心的數(shù)據(jù)一致性。
構(gòu)建應(yīng)用系統(tǒng)核心服務(wù)集群,讓核心微服務(wù)模塊都能依據(jù)并發(fā)壓力和高可用需要任意擴(kuò)展,保證集群中任意一臺(tái)服務(wù)器出現(xiàn)問題不會(huì)影響整個(gè)應(yīng)用系統(tǒng)的正常運(yùn)行。
通過應(yīng)用服務(wù)的集群化,實(shí)現(xiàn)根據(jù)需求對(duì)高并發(fā)的模塊進(jìn)行平滑擴(kuò)容,通過負(fù)載均衡實(shí)現(xiàn)服務(wù)的高并發(fā)需求,如最大在線用戶數(shù)≥100人等需求。
集群橫向擴(kuò)展的前提是將服務(wù)的狀態(tài)信息從服務(wù)中剝離,實(shí)現(xiàn)無狀態(tài)的微服務(wù),相同微服務(wù)多實(shí)例運(yùn)行時(shí)達(dá)到狀態(tài)一致,同時(shí)使用負(fù)載均衡策略將服務(wù)消費(fèi)者路由到合理的微服務(wù)上。如圖3所示。
圖3 微服務(wù)關(guān)系圖
負(fù)載均衡微服務(wù)的業(yè)務(wù)狀態(tài)信息統(tǒng)一存儲(chǔ)在Redis緩存中,各實(shí)例共享使用狀態(tài)信息,實(shí)現(xiàn)狀態(tài)的一致性。
服務(wù)消費(fèi)者通過負(fù)載均衡器(Ribbon)使用配置好的均衡策略實(shí)現(xiàn)微服務(wù)實(shí)例的路由。
Redis緩存服務(wù)器構(gòu)建集群保障狀態(tài)數(shù)據(jù)的安全性,采用Redis哨兵模式建立集群,監(jiān)控Redis系統(tǒng)的運(yùn)行狀況,主要實(shí)現(xiàn)單個(gè)redis節(jié)點(diǎn)宕機(jī)時(shí)無縫切換備用redis服務(wù)器。Sentinel(哨兵)系統(tǒng)用于管理多個(gè)Redis服務(wù)器(instance),該系統(tǒng)執(zhí)行三個(gè)任務(wù):一是監(jiān)控(Monitoring),Sentinel會(huì)不斷地檢查你的主服務(wù)器和從服務(wù)器是否運(yùn)作正常;二是提醒(Notif ication),當(dāng)被監(jiān)控的某個(gè)Redis服務(wù)器出現(xiàn)問題時(shí),Sent inel通過API向應(yīng)用程序發(fā)送通知;三是自動(dòng)故障遷移(Automatic failover),當(dāng)一個(gè)主服務(wù)器不能正常工作時(shí),Sentinel會(huì)開始一次自動(dòng)故障遷移操作,將失效主服務(wù)器的其中一個(gè)從服務(wù)器升級(jí)為新的主服務(wù)器,并讓失效主服務(wù)器的其他從服務(wù)器改為復(fù)制新的主服務(wù)器;當(dāng)客戶端試圖連接失效的主服務(wù)器時(shí),集群也會(huì)向客戶端返回新主服務(wù)器的地址,使得集群可以使用新主服務(wù)器代替失效服務(wù)器。
短波業(yè)務(wù)應(yīng)用系統(tǒng)在國家中心和監(jiān)測站分布式部署,中心采用集群模式、監(jiān)測站使用單節(jié)點(diǎn)進(jìn)行部署,保證中心和監(jiān)測站的系統(tǒng)能夠作為邏輯上統(tǒng)一的應(yīng)用系統(tǒng)對(duì)外提供服務(wù)。
各個(gè)監(jiān)測站通過Nginx反向代理發(fā)布給本站的監(jiān)測應(yīng)用,國家中心與監(jiān)測站之間使用統(tǒng)一部署的DNS域名解析服務(wù)器集群實(shí)現(xiàn)灰度發(fā)布,對(duì)所有區(qū)域用戶實(shí)現(xiàn)無差別化訪問聯(lián)網(wǎng)模式下,反向代理將短波業(yè)務(wù)(包括監(jiān)測管控、數(shù)據(jù)分析、存儲(chǔ)等)處理路由到國家中心節(jié)點(diǎn),對(duì)設(shè)備、數(shù)據(jù)進(jìn)行統(tǒng)一的調(diào)度、處理,此時(shí),各個(gè)短波站自動(dòng)從國家中心同步本站的設(shè)備元數(shù)據(jù),以備斷網(wǎng)模式下對(duì)本站的設(shè)備調(diào)度。
當(dāng)中心和監(jiān)測站斷網(wǎng)模式下,監(jiān)測站的反向代理自動(dòng)監(jiān)測網(wǎng)絡(luò)異常,自動(dòng)將監(jiān)測應(yīng)用的請求切換到本站的短波分布式平臺(tái),保證應(yīng)用對(duì)本站設(shè)備的控制及分析,并將監(jiān)測過程數(shù)據(jù)、業(yè)務(wù)數(shù)據(jù)、結(jié)果數(shù)據(jù)存儲(chǔ)與監(jiān)測站,不影響用戶對(duì)本站的控制及日常監(jiān)測分析工作,保障系統(tǒng)的高可用。
當(dāng)中心和監(jiān)測站網(wǎng)絡(luò)恢復(fù)后,監(jiān)測站通過合理的數(shù)據(jù)同步機(jī)制,保證監(jiān)測站與國家中心的數(shù)據(jù)一致性。
本文分析了集群分布式網(wǎng)絡(luò)架設(shè)的實(shí)現(xiàn)方法和保障性應(yīng)用及意義,凸顯了在短波監(jiān)測一體化平臺(tái)中使用集群分布式網(wǎng)絡(luò)架設(shè)在提升短波監(jiān)測能力、保障系統(tǒng)高可用及數(shù)據(jù)安全性上的優(yōu)點(diǎn)。