號碼攜帶集中管理系統(tǒng)的高可用技術(shù)應(yīng)用分析
1 引言
本文引用地址:http://butianyuan.cn/article/154706.htm在號碼攜帶系統(tǒng)中,CSMS(集中管理系統(tǒng))匯總著全國所有運(yùn)營商號碼攜帶用戶的基本數(shù)據(jù)和號碼攜帶規(guī)則,扮演著號碼攜帶業(yè)務(wù)提供管理者和仲裁者的角色,地位十分重要。CSMS和運(yùn)營商的號碼攜帶營業(yè)生產(chǎn)系統(tǒng)一起,實時為用戶提供號碼攜帶申請業(yè)務(wù),必須按照電信級系統(tǒng)的要求,提供24h×7d×365d時間內(nèi)99.99%的服務(wù)可用性。因此,CSMS系統(tǒng)的高可用性方案十分重要。
高可用性(High Availability)一般是指通過盡量縮短系統(tǒng)停機(jī)時間,提高系統(tǒng)和應(yīng)用的可用性。為了提高系統(tǒng)可用性,一種方法是提高計算機(jī)各個部件的可靠性,但這種方法并不可靠,因為單一服務(wù)器可靠性再高也存在單點(diǎn)故障的潛在隱患,所以目前業(yè)界比較成熟的做法是采用集群(CluSTer)的方案。它通過加入冗余設(shè)備使得在一個設(shè)備出錯而停止服務(wù)的時候,這些冗余的設(shè)備可以繼續(xù)提供服務(wù)。本文中,高可用性的含義還包括“快速恢復(fù)”,即一旦由于系統(tǒng)中止并重啟后,業(yè)務(wù)應(yīng)用能夠盡快恢復(fù)。
本文主要介紹了在CSMS中為了實現(xiàn)系統(tǒng)的整體高可用性,在各個層面可以采用的集群技術(shù)。
2 系統(tǒng)高可用技術(shù)的應(yīng)用范圍
在號碼攜帶系統(tǒng)中,從和運(yùn)營商接口側(cè)到CSMS的核心數(shù)據(jù)層主要包括以下功能層,高可用方案主要圍繞這些層面來展開。
?。?)網(wǎng)絡(luò)層:是和運(yùn)營商連接的部分,主要需要考慮,如何避免傳輸單點(diǎn)故障,如何避免網(wǎng)絡(luò)設(shè)備單點(diǎn)故障?
?。?)Web服務(wù)器層:如何保證Web服務(wù)器的單點(diǎn)故障?如果提供多臺Web服務(wù)器,如何在之間進(jìn)行資源協(xié)調(diào)?
?。?)應(yīng)用服務(wù)器層:Web服務(wù)器提交請求給應(yīng)用服務(wù)器后,如何避免應(yīng)用服務(wù)器的單點(diǎn)故障及多臺應(yīng)用服務(wù)器的資源協(xié)調(diào)?
?。?)數(shù)據(jù)庫服務(wù)器層:應(yīng)用服務(wù)器向數(shù)據(jù)庫服務(wù)器提交請求時,如何避免數(shù)據(jù)庫服務(wù)器的單點(diǎn)故障及多臺之間的資源協(xié)調(diào)?
(5)應(yīng)用軟件:即使我們采取了各種措施,還是存在服務(wù)器硬件宕機(jī)的可能性。在系統(tǒng)重啟后,我們應(yīng)用軟件如何設(shè)計保證系統(tǒng)能快速恢復(fù)?
?。?)數(shù)據(jù)層:如何保證數(shù)據(jù)存儲安全可靠?
為了回答上述問題,我們需要對各種高可用性技術(shù)進(jìn)行研究和總結(jié)。
3 高可用性技術(shù)研究
3.1 CSMS系統(tǒng)架構(gòu)
圖1所示的是CSMS系統(tǒng)組織架構(gòu)。
圖1 CSMS系統(tǒng)組織架構(gòu)
為了保證系統(tǒng)的高可用性,防止出現(xiàn)單點(diǎn)故障,系統(tǒng)的每個功能層在硬件設(shè)備上都采用冗余配置,同時通過各種軟件方案設(shè)計,實現(xiàn)系統(tǒng)高可用性。
3.2 網(wǎng)絡(luò)方案
在網(wǎng)絡(luò)方案上,系統(tǒng)和每個運(yùn)營商之間的專線采用155M POS或者M(jìn)STP雙光纜接入,利用傳輸網(wǎng)絡(luò)的冗余和自愈能力,保證系統(tǒng)物理接入線路的高可用性。每個運(yùn)營商的兩條光纜分別接入到系統(tǒng)的兩臺接入路由器上,盡量避免路由器設(shè)備的單點(diǎn)故障。每臺路由器分別配置了多個網(wǎng)卡分別接入多個運(yùn)營商的專線,防止出現(xiàn)單板卡故障影響到更多的運(yùn)營商接入。
在路由器對運(yùn)營商側(cè)的方案設(shè)計上,需要采用動態(tài)路由協(xié)議,當(dāng)某臺路由器到某個運(yùn)營商的某條缺省配置路由出現(xiàn)故障時(比如線路故障或板卡故障),需要將備選路由廣播到所有相關(guān)設(shè)備上,新的通信連接則按照新的路由進(jìn)行通信。在路由器對防火墻的方案設(shè)計上,需要采用VRRP協(xié)議進(jìn)行動態(tài)IP地址綁定,即兩臺路由器下聯(lián)到防火墻的IP為一個虛擬地址,缺省時綁定在某個路由器的實際地址上,當(dāng)需要切換時,將虛擬地址綁定在另外一臺路由器的實際地址上,而對于防火墻來說,不需要做任何改變就完成了通信的切換過程。
3.3 Web服務(wù)器的負(fù)載均衡器方案
從客戶端的請求經(jīng)過網(wǎng)絡(luò)設(shè)備后,將首先到達(dá)Web服務(wù)器。從系統(tǒng)的高可用性設(shè)計角度出發(fā),系統(tǒng)將部署多臺Web服務(wù)器進(jìn)行集群。Web服務(wù)器之間進(jìn)行集群包括Web負(fù)載均衡和會話的失敗轉(zhuǎn)移兩個方面。
負(fù)載均衡可以采用多種技術(shù),比如采用硬件負(fù)載均衡器,也可以在某個Web服務(wù)器上部署負(fù)載均衡軟件,由這臺Web服務(wù)器兼作負(fù)載均衡器。負(fù)載均衡器最主要的特征包括:
?。?)單點(diǎn)接入
從客戶端的角度看,多臺Web服務(wù)器只有一個地址,就是負(fù)載均衡器的服務(wù)地址。這樣做的好處有兩點(diǎn):一是客戶端不需要配置多個Web服務(wù)器地址,比較方便;二是可以向客戶端網(wǎng)絡(luò)屏蔽網(wǎng)內(nèi)具體的設(shè)備的地址信息,對網(wǎng)絡(luò)保護(hù)具有一定作用。
(2)實現(xiàn)負(fù)載均衡算法
當(dāng)客戶端請求到來的時候,負(fù)載均衡器能夠決定把這個請求轉(zhuǎn)發(fā)到后臺的哪個Web服務(wù)器進(jìn)行處理。主流算法包括:輪循算法,隨機(jī)算法和權(quán)重算法,無論哪種算法,負(fù)載均衡器總是試圖讓每個服務(wù)器實例分擔(dān)等同的壓力。
評論