RoseHA的工作原理
RoseHA雙機(jī)系統(tǒng)的兩臺(tái)服務(wù)器(主機(jī))都與磁盤(pán)陣列(共享存儲(chǔ))系統(tǒng)直接連接,用戶(hù)的操作系統(tǒng)、應(yīng)用軟件和RoseHA高可用軟件分別安裝在兩臺(tái)主機(jī)上,數(shù)據(jù)庫(kù)等共享數(shù)據(jù)存放在存儲(chǔ)系統(tǒng)上,兩臺(tái)主機(jī)之間通過(guò)私用心跳網(wǎng)絡(luò)連接。配置好的系統(tǒng)主機(jī)開(kāi)始工作后,RoseHA軟件開(kāi)始監(jiān)控系統(tǒng),通過(guò)私用網(wǎng)絡(luò)傳遞的心跳信息,每臺(tái)主機(jī)上的RoseHA軟件都可監(jiān)控另一臺(tái)主機(jī)的狀態(tài)。當(dāng)工作主機(jī)發(fā)生故障時(shí),心跳信息就會(huì)產(chǎn)生變化,這種變化可以通過(guò)私用網(wǎng)絡(luò)被RoseHA軟件捕捉。當(dāng)捕捉到這種變化后RoseHA就會(huì)控制系統(tǒng)進(jìn)行主機(jī)切換,即備份機(jī)啟動(dòng)和工作主機(jī)一樣的應(yīng)用程序接管工作主機(jī)的工作(包括提供TCP/IP網(wǎng)絡(luò)服務(wù)、存儲(chǔ)系統(tǒng)的存取等服務(wù))并進(jìn)行報(bào)警,提示管理人員對(duì)故障主機(jī)進(jìn)行維修。當(dāng)維修完畢后,可以根據(jù)RoseHA的設(shè)定自動(dòng)或手動(dòng)再切換回來(lái),也可以不切換,此時(shí)維修好的主機(jī)就作為備份機(jī),雙機(jī)系統(tǒng)繼續(xù)工作。
RoseHA實(shí)現(xiàn)容錯(cuò)功能的關(guān)鍵在于,對(duì)客戶(hù)端來(lái)說(shuō)主機(jī)是透明的,當(dāng)系統(tǒng)發(fā)生錯(cuò)誤而進(jìn)行切換時(shí),即主機(jī)的切換在客戶(hù)端看來(lái)沒(méi)有變化,所有基于主機(jī)的應(yīng)用都仍然正常運(yùn)行。RoseHA采用了虛擬IP地址映射技術(shù)來(lái)實(shí)現(xiàn)此功能?蛻(hù)端通過(guò)虛擬地址和工作主機(jī)通訊,無(wú)論系統(tǒng)是否發(fā)生切換,虛擬地址始終指向工作主機(jī)。在進(jìn)行網(wǎng)絡(luò)服務(wù)時(shí), RoseHA提供一個(gè)邏輯的虛擬地址,任何一個(gè)客戶(hù)端需要請(qǐng)求服務(wù)時(shí)只需要使用這個(gè)虛擬地址。正常運(yùn)行時(shí),虛擬地址及網(wǎng)絡(luò)服務(wù)由主服務(wù)器提供。當(dāng)主服務(wù)器出現(xiàn)故障時(shí),RoseHA會(huì)將虛擬地址轉(zhuǎn)移到另外一臺(tái)服務(wù)器的網(wǎng)卡上,繼續(xù)提供網(wǎng)絡(luò)服務(wù)。切換完成后,在客戶(hù)端看來(lái)系統(tǒng)并沒(méi)有出現(xiàn)故障,網(wǎng)絡(luò)服務(wù)仍然可以使用。除IP地址外,HA還可以提供虛擬的計(jì)算機(jī)別名供客戶(hù)端訪(fǎng)問(wèn)。對(duì)于數(shù)據(jù)庫(kù)服務(wù),當(dāng)有主服務(wù)器出現(xiàn)故障時(shí),另外一臺(tái)服務(wù)器就會(huì)自動(dòng)接管,同時(shí)啟動(dòng)數(shù)據(jù)庫(kù)和應(yīng)用程序,使用戶(hù)數(shù)據(jù)庫(kù)可以正常操作。
|