趙雅欣 申 振 王 鵬 管 虎 張 寧
青島前灣聯(lián)合集裝箱碼頭有限責(zé)任公司
目前,集裝箱碼頭生產(chǎn)作業(yè)日趨無(wú)人化、自動(dòng)化,ECS(Equipment Control System,設(shè)備控制系統(tǒng))作為集裝箱碼頭設(shè)備遠(yuǎn)程控制的重要系統(tǒng),要求24 h不停機(jī)且穩(wěn)定運(yùn)行,對(duì)可靠性要求高,ECS數(shù)據(jù)庫(kù)如果出現(xiàn)故障,需要能迅速恢復(fù)。傳統(tǒng)的單節(jié)點(diǎn)服務(wù)器由于其局限性,在繁重、復(fù)雜的應(yīng)用服務(wù)中體現(xiàn)出來(lái)的弊端也越來(lái)越明顯。目前雙機(jī)熱備或多機(jī)互備的方式,具備快速自動(dòng)切換功能,能夠保證在無(wú)人值守的環(huán)境下,主服務(wù)器出現(xiàn)故障時(shí)提供無(wú)數(shù)據(jù)差異的秒級(jí)切換,可大大減少因服務(wù)器故障帶來(lái)的網(wǎng)絡(luò)癱瘓,提高系統(tǒng)平臺(tái)的穩(wěn)定性。合理使用雙機(jī)熱備技術(shù),充分發(fā)揮其穩(wěn)定高效、高可用性的特點(diǎn),是保障系統(tǒng)數(shù)據(jù)庫(kù)穩(wěn)定運(yùn)行,碼頭生產(chǎn)作業(yè)正常運(yùn)轉(zhuǎn)的重要措施。
雙機(jī)熱備是集群熱備的特例,一般用于保障重要的服務(wù)正常不間斷運(yùn)行[1]。雙機(jī)熱備用兩臺(tái)機(jī)器作為服務(wù)機(jī)器,其中一臺(tái)用于實(shí)際數(shù)據(jù)庫(kù)操作應(yīng)用,另外一臺(tái)則實(shí)時(shí)地從前者中獲取數(shù)據(jù)以保持?jǐn)?shù)據(jù)一致。如果當(dāng)前的服務(wù)器宕機(jī),備份的服務(wù)器在短時(shí)間內(nèi)自動(dòng)完成服務(wù)的切換,代替當(dāng)前的機(jī)器繼續(xù)提供服務(wù),從而保證在不需要人工干預(yù)的情況下,系統(tǒng)能持續(xù)提供服務(wù),正常運(yùn)轉(zhuǎn)[2]。
雙機(jī)熱備有如下幾點(diǎn)特征:
(1)業(yè)務(wù)不間斷。備服務(wù)器實(shí)時(shí)地從主服務(wù)器中獲取數(shù)據(jù),確保對(duì)數(shù)據(jù)庫(kù)24 h不間斷訪問(wèn),保證各項(xiàng)業(yè)務(wù)的穩(wěn)定運(yùn)行。
(2)雙機(jī)自動(dòng)切換。若主服務(wù)器因某種原因宕機(jī),備服務(wù)器在短時(shí)間自動(dòng)完成服務(wù)的切換,不需要人工干預(yù)[3]。
(3)應(yīng)用數(shù)據(jù)不丟失。針對(duì)不可預(yù)期的服務(wù)器主機(jī)故障,可通過(guò)備份服務(wù)器恢復(fù)正常的使用能力,且不會(huì)造成數(shù)據(jù)丟失。
雙機(jī)熱備的優(yōu)點(diǎn)如下:①可在表空間或數(shù)據(jù)文件級(jí)備份,備份時(shí)間短;②備份時(shí)數(shù)據(jù)庫(kù)仍可使用;③可達(dá)到秒級(jí)恢復(fù);④可對(duì)幾乎所有數(shù)據(jù)庫(kù)實(shí)體做恢復(fù);⑤恢復(fù)是快速的,大多數(shù)情況下在數(shù)據(jù)庫(kù)仍工作時(shí)即可恢復(fù)。其缺點(diǎn)是若熱備份不成功,所得結(jié)果不可用于時(shí)間點(diǎn)的恢復(fù)。
某集裝箱碼頭軌道式龍門起重機(jī)(以下簡(jiǎn)稱軌道吊)自動(dòng)化改造項(xiàng)目采用ECS系統(tǒng)指揮碼頭生產(chǎn)作業(yè),一旦發(fā)生服務(wù)器宕機(jī)故障或應(yīng)用停機(jī),將會(huì)造成數(shù)據(jù)丟失,影響現(xiàn)場(chǎng)作業(yè),帶來(lái)重大經(jīng)濟(jì)損失?;诎踩?、穩(wěn)定性、可靠性及避免單點(diǎn)故障的考慮,對(duì)數(shù)據(jù)庫(kù)服務(wù)器實(shí)現(xiàn)雙機(jī)熱備功能。
該碼頭作業(yè)現(xiàn)場(chǎng)ECS自動(dòng)化關(guān)鍵業(yè)務(wù)系統(tǒng)部署在windows server2012服務(wù)器上,系統(tǒng)軟硬件配置見(jiàn)表1。
表1 系統(tǒng)軟硬件配置
數(shù)據(jù)庫(kù)雙機(jī)熱備系統(tǒng)建成后,實(shí)現(xiàn)如下目標(biāo)。
(1)系統(tǒng)持續(xù)運(yùn)行。數(shù)據(jù)同步復(fù)制,最短時(shí)間內(nèi)完成故障切換,使系統(tǒng)不停機(jī),業(yè)務(wù)不間斷[3]。
(2)雙機(jī)自動(dòng)切換。若主服務(wù)器因某種原因宕機(jī),備服務(wù)器在短時(shí)間自動(dòng)完成服務(wù)的切換,不需要人工的干預(yù)。
(3)應(yīng)用數(shù)據(jù)全自動(dòng)備份。減少系統(tǒng)管理員的工作量,增加備份效率,壓縮備份時(shí)間,消除備份過(guò)程中因操作不當(dāng)導(dǎo)致的嚴(yán)重?fù)p失。
(4)數(shù)據(jù)零丟失。出現(xiàn)系統(tǒng)故障后修復(fù)數(shù)據(jù)要求達(dá)到零數(shù)據(jù)丟失的高安全性。
如果現(xiàn)場(chǎng)運(yùn)行主庫(kù)服務(wù)器宕機(jī),嚴(yán)格按照如下步驟操作,即可恢復(fù)現(xiàn)場(chǎng)作業(yè)并重現(xiàn)數(shù)據(jù)庫(kù)。
3.3.1 運(yùn)行主庫(kù)脫機(jī)
作業(yè)現(xiàn)場(chǎng)運(yùn)行主庫(kù)服務(wù)器宕機(jī)后,需要第一時(shí)間拔除主庫(kù)所有網(wǎng)線,讓服務(wù)器進(jìn)入脫機(jī)狀態(tài),避免備用從庫(kù)切換至主庫(kù)時(shí)引起IP沖突等問(wèn)題。
3.3.2 備用從庫(kù)切換
運(yùn)行主庫(kù)網(wǎng)線拔除后,將備用從庫(kù)IP修改為主庫(kù)IP,并通過(guò)服務(wù)器桌面的一鍵關(guān)閉以及一鍵開(kāi)啟程序,重啟運(yùn)行應(yīng)用服務(wù)器的所有后臺(tái)應(yīng)用服務(wù)及服務(wù)器桌面的MP中轉(zhuǎn)程序,即可恢復(fù)現(xiàn)場(chǎng)作業(yè),整個(gè)操作過(guò)程耗時(shí)不超過(guò)5 min。
3.3.3 雙機(jī)熱備重現(xiàn)
雙機(jī)熱備可在恢復(fù)現(xiàn)場(chǎng)作業(yè)之后進(jìn)行,不影響現(xiàn)場(chǎng)作業(yè)。宕機(jī)服務(wù)器維修完畢后,接入網(wǎng)絡(luò)前需要將該服務(wù)器IP修改為備用從庫(kù)IP,此時(shí)主備服務(wù)器已經(jīng)調(diào)換,刪除之前實(shí)現(xiàn)的熱備功能、發(fā)布的事務(wù)與訂閱后,重新實(shí)現(xiàn)熱備功能。
對(duì)數(shù)據(jù)庫(kù)熱備功能進(jìn)行單機(jī)模擬測(cè)試,以模擬集裝箱碼頭操作系統(tǒng)為基礎(chǔ)向單機(jī)虛擬環(huán)境發(fā)送收發(fā)箱、裝卸船等指令,完全模擬現(xiàn)場(chǎng)作業(yè)流程進(jìn)行作業(yè)。該項(xiàng)測(cè)試通過(guò)后,編寫數(shù)據(jù)插入程序,模擬現(xiàn)場(chǎng)39臺(tái)軌道吊的作業(yè)數(shù)據(jù),24 h不間斷插入數(shù)據(jù)庫(kù),進(jìn)行數(shù)據(jù)壓力測(cè)試,實(shí)時(shí)監(jiān)測(cè)數(shù)據(jù)同步性能,驗(yàn)證熱備功能的持續(xù)性、穩(wěn)定性、可靠性。
經(jīng)過(guò)測(cè)試的雙機(jī)熱備功能已上線運(yùn)行,主從數(shù)據(jù)庫(kù)數(shù)據(jù)達(dá)到秒級(jí)同步,現(xiàn)場(chǎng)數(shù)據(jù)庫(kù)服務(wù)器進(jìn)入高可用狀態(tài)。本次功能的實(shí)現(xiàn)極大地提高了現(xiàn)場(chǎng)作業(yè)的穩(wěn)定性、可靠性,即使在主服務(wù)器宕機(jī)的情況下,也能在極短的時(shí)間內(nèi)進(jìn)行主備機(jī)切換,恢復(fù)現(xiàn)場(chǎng)作業(yè)。
數(shù)據(jù)庫(kù)雙機(jī)熱備技術(shù)是保障碼頭ECS系統(tǒng)穩(wěn)定運(yùn)行、生產(chǎn)作業(yè)正常運(yùn)轉(zhuǎn)的必要措施,現(xiàn)場(chǎng)如出現(xiàn)主運(yùn)行服務(wù)器宕機(jī)等事故,嚴(yán)格按照恢復(fù)手冊(cè)操作,能夠在極短時(shí)間內(nèi)恢復(fù)現(xiàn)場(chǎng)作業(yè),極大地提高了系統(tǒng)穩(wěn)定性、可靠性及安全系數(shù),避免了單點(diǎn)故障對(duì)現(xiàn)場(chǎng)作業(yè)產(chǎn)生的影響。