• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      一種基于健康管理的高可用系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)*

      2016-04-15 08:20:05
      艦船電子工程 2016年3期
      關(guān)鍵詞:故障檢測健康管理

      鄢 斌

      (海軍計(jì)算技術(shù)研究所 北京 100841)

      ?

      一種基于健康管理的高可用系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)*

      鄢斌

      (海軍計(jì)算技術(shù)研究所北京100841)

      摘要在綜合考慮故障檢測智能性、高可用軟件開銷和配置靈活性等多項(xiàng)因素的前提下,提出一種基于健康管理的高可用系統(tǒng)及實(shí)現(xiàn)方法,系統(tǒng)包含至少兩個(gè)控制節(jié)點(diǎn)和計(jì)算節(jié)點(diǎn),控制節(jié)點(diǎn)通過采集、記錄和分析所有計(jì)算節(jié)點(diǎn)的健康狀態(tài)數(shù)據(jù),將存在異常的計(jì)算節(jié)點(diǎn)上運(yùn)行的任務(wù)遷移至其他健康的計(jì)算節(jié)點(diǎn),試驗(yàn)表明系統(tǒng)的故障提前感知能力和計(jì)算節(jié)點(diǎn)的可用性得到提升。

      關(guān)鍵詞高可用; 故障檢測; 健康管理

      Design and Implementation of Health-Management-Based High Available System

      YAN Bin

      (Computer Technology Institute of Navy, Beijing100841)

      AbstractConsidering the factors of fault detection intelligence, HA software overhead and configuration flexibility, design and implementation of a health-management-based HA System is proposed. No less than two control nodes and computation nodes are included in the system, and control nodes collect, record and analyze the health data of all the computation nodes. Tasks running on unhealthy computation nodes are migrated to healthy computation nodes. Experiment shows that system fault perception ability and usability of computation nodes have been improved.

      Key Wordshigh available, fault detection, health management

      Class NumberTP302.1

      1引言

      可用性是測量計(jì)算機(jī)系統(tǒng)如何能夠持續(xù)地對客戶進(jìn)行服務(wù)的尺度。計(jì)算機(jī)系統(tǒng)的高可用性(High Availability,HA)廣義地包括一切避免系統(tǒng)服務(wù)中斷的技術(shù)。

      目前,較為熱門的計(jì)算機(jī)高可用技術(shù)主要包括:單機(jī)冗余技術(shù)[1~3]、雙機(jī)冷備份技術(shù)[4]、雙機(jī)熱備份技術(shù)[5~10]和虛擬機(jī)高可用容錯(cuò)技術(shù)[11]等。其中,單機(jī)冗余技術(shù)主要是為了提高計(jì)算機(jī)自身的高可靠性,對易損部件進(jìn)行冗余設(shè)計(jì)(例如:雙網(wǎng)冗余、電源冗余等);雙機(jī)冷備份和熱備份技術(shù)在當(dāng)前高可用領(lǐng)域最為普遍,然而雙機(jī)冷備份和熱備份大多是針對某一確定服務(wù)進(jìn)程進(jìn)行設(shè)計(jì),即為提高某一服務(wù)的高可用性而進(jìn)行的專門設(shè)計(jì),不支持其它應(yīng)用程序的容錯(cuò)計(jì)算,導(dǎo)致用戶難以利用自己開發(fā)的應(yīng)用軟件通過商用高可用軟件實(shí)現(xiàn)高可用;虛擬機(jī)高可用容錯(cuò)技術(shù)通過對服務(wù)器進(jìn)行虛擬化后,在虛擬服務(wù)器上進(jìn)行容錯(cuò)熱備份和高可用冷備份配置,再通過心跳檢測和虛擬機(jī)實(shí)時(shí)遷移技術(shù),來實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)所有應(yīng)用的透明容錯(cuò)計(jì)算功能,但是這種方法的高可用軟件本身的開銷較大。

      綜上所述,在綜合考慮檢測智能性、高可用軟件開銷和配置靈活性等多項(xiàng)因素的前提下,本文提出一種基于健康管理的高可用系統(tǒng)(以下簡稱高可用系統(tǒng))設(shè)計(jì)方法,包括至少兩個(gè)控制節(jié)點(diǎn)和至少兩個(gè)計(jì)算節(jié)點(diǎn),將先啟動的控制節(jié)點(diǎn)作為主控制節(jié)點(diǎn),其他控制節(jié)點(diǎn)作為備控制節(jié)點(diǎn),每個(gè)控制節(jié)點(diǎn)通過BMC模塊的旁路同時(shí)采集所有計(jì)算節(jié)點(diǎn)的溫度、風(fēng)扇、電壓、電流等健康狀態(tài)數(shù)據(jù),并存儲固定時(shí)間間隔的歷史值。由主控制節(jié)點(diǎn)對健康狀態(tài)歷史值進(jìn)行分析處理,當(dāng)存在計(jì)算節(jié)點(diǎn)的健康狀態(tài)數(shù)據(jù)異常,則將其運(yùn)行的任務(wù)遷移到其他健康的計(jì)算節(jié)點(diǎn)。本文接下來的章節(jié)將對高可用系統(tǒng)架構(gòu)和實(shí)現(xiàn)方法進(jìn)行詳細(xì)介紹,在搭建試驗(yàn)平臺的基礎(chǔ)上,獲取試驗(yàn)數(shù)據(jù)并對試驗(yàn)數(shù)據(jù)進(jìn)行了分析,數(shù)據(jù)分析表明高可用系統(tǒng)具有故障提前感知能力,并且提升了計(jì)算節(jié)點(diǎn)的高可用性。

      2體系架構(gòu)

      本文設(shè)計(jì)的基于健康管理的高可用系統(tǒng)架構(gòu)如圖1所示。

      圖1 基于健康管理的高可用系統(tǒng)體系架構(gòu)

      基于健康管理的高可用系統(tǒng)包括至少兩個(gè)控制節(jié)點(diǎn)和至少兩個(gè)計(jì)算節(jié)點(diǎn),控制節(jié)點(diǎn)和計(jì)算節(jié)點(diǎn)通過高可靠網(wǎng)絡(luò)互聯(lián)。

      高可用系統(tǒng)選擇最早啟動的控制節(jié)點(diǎn)作為主控制節(jié)點(diǎn),其他控制節(jié)點(diǎn)作為備控制節(jié)點(diǎn),并且配置優(yōu)先級順序(優(yōu)先級順序配置可以根據(jù)用戶要求,也可根據(jù)控制節(jié)點(diǎn)的處理能力)。每個(gè)控制節(jié)點(diǎn)都保存相同的配置文件,包括:主備節(jié)點(diǎn)及優(yōu)先級順序等配置信息。

      計(jì)算節(jié)點(diǎn)之間的主備關(guān)系,可選擇配置任一計(jì)算節(jié)點(diǎn)之外其它的所有計(jì)算節(jié)點(diǎn)都作為該計(jì)算節(jié)點(diǎn)的備計(jì)算節(jié)點(diǎn),也可根據(jù)用戶的要求配置主備關(guān)系。計(jì)算節(jié)點(diǎn)平時(shí)都處理各自的任務(wù)。

      每個(gè)控制節(jié)點(diǎn)通過BMC模塊的旁路同時(shí)采集所有計(jì)算節(jié)點(diǎn)的溫度、風(fēng)扇、電壓、電流等健康狀態(tài)數(shù)據(jù),并存儲固定時(shí)間間隔的歷史值。主控制節(jié)點(diǎn)對這些健康狀態(tài)歷史值進(jìn)行分析處理。備控制節(jié)點(diǎn)不對這些健康狀態(tài)歷史值進(jìn)行分析,只是通過高可靠心跳檢測網(wǎng)絡(luò)不斷探測主控制節(jié)點(diǎn)和優(yōu)先級更高的備控制節(jié)點(diǎn)。

      如果通過心跳檢測網(wǎng)絡(luò),探測到主控制節(jié)點(diǎn)出現(xiàn)故障,優(yōu)先級最高的第一備控制節(jié)點(diǎn)接管健康狀態(tài)歷史值分析處理任務(wù)。

      如果通過心跳檢測網(wǎng)絡(luò),探測到備控制節(jié)點(diǎn)出現(xiàn)故障,則比該備控制節(jié)點(diǎn)更低優(yōu)先級的備控制節(jié)點(diǎn)自動提高一級優(yōu)先級。主控制節(jié)點(diǎn)仍然繼續(xù)進(jìn)行健康狀態(tài)歷史值分析處理任務(wù)。

      3實(shí)現(xiàn)方法

      基于圖1所示的體系架構(gòu),主備控制節(jié)點(diǎn)通過BMC模塊的旁路同時(shí)采集所有計(jì)算節(jié)點(diǎn)的溫度、風(fēng)扇、電壓、電流等健康狀態(tài)數(shù)據(jù),并存儲固定時(shí)間間隔的歷史值。主備控制節(jié)點(diǎn)通過高可靠心跳檢測各自狀態(tài),保證控制節(jié)點(diǎn)的可用性。由主控制節(jié)點(diǎn)對健康狀態(tài)歷史值進(jìn)行分析處理,若發(fā)現(xiàn)存在計(jì)算節(jié)點(diǎn)的健康狀態(tài)數(shù)據(jù)異常,則將其運(yùn)行的任務(wù)遷移到其他健康的計(jì)算節(jié)點(diǎn)。

      3.1主備控制節(jié)點(diǎn)工作流程

      如圖1所示,高可用系統(tǒng)主備控制節(jié)點(diǎn)工作流程的具體實(shí)現(xiàn)方法如下。

      1) 采集當(dāng)前時(shí)間點(diǎn)所有計(jì)算節(jié)點(diǎn)的健康狀態(tài)數(shù)據(jù),進(jìn)入步驟2);

      2) 如果采集的時(shí)間點(diǎn)個(gè)數(shù)小于p,則表示采集的歷史數(shù)據(jù)不夠,等待時(shí)間間隔T后進(jìn)入步驟1)。如果采集的時(shí)間點(diǎn)個(gè)數(shù)大于或等于p,則進(jìn)入步驟3);

      3) 刪除多余的歷史數(shù)據(jù),只保留最近p個(gè)時(shí)間點(diǎn)的健康狀態(tài)數(shù)據(jù),此時(shí)共p個(gè)時(shí)間點(diǎn)下n個(gè)計(jì)算節(jié)點(diǎn)的數(shù)據(jù)組成一個(gè)p行n列的健康狀態(tài)數(shù)據(jù)歷史值矩陣。矩陣的行對應(yīng)每個(gè)時(shí)間點(diǎn),矩陣的列對應(yīng)每個(gè)計(jì)算節(jié)點(diǎn),進(jìn)入步驟4);

      4) 讀取配置文件,判斷當(dāng)前控制節(jié)點(diǎn)是否為主控制節(jié)點(diǎn)。如果不是主控制節(jié)點(diǎn)(即備控制節(jié)點(diǎn)),進(jìn)入步驟5);如果是主控制節(jié)點(diǎn),進(jìn)入步驟7);

      5) 通過網(wǎng)絡(luò)心跳檢測主控制節(jié)點(diǎn)和優(yōu)先級更高的備控制節(jié)點(diǎn)是否故障,如果有控制節(jié)點(diǎn)故障則進(jìn)入步驟6),如果沒有控制節(jié)點(diǎn)故障則主備控制節(jié)點(diǎn)心跳同步后,進(jìn)入步驟1);

      6) 修改控制節(jié)點(diǎn)的優(yōu)先順序,如果主控制節(jié)點(diǎn)故障,優(yōu)先級最高的第一備控制節(jié)點(diǎn)成為主控制節(jié)點(diǎn);如果備控制節(jié)點(diǎn)出現(xiàn)故障,則將小于故障備控制節(jié)點(diǎn)優(yōu)先級的備控制節(jié)點(diǎn)的優(yōu)先級提升一級??刂乒?jié)點(diǎn)優(yōu)先順序修改完畢后,進(jìn)入步驟4);

      7) 對健康狀態(tài)數(shù)據(jù)進(jìn)行分析和處理,具體實(shí)現(xiàn)方法在3.2節(jié)中介紹。

      圖2 主備控制節(jié)點(diǎn)工作流程

      3.2健康狀態(tài)數(shù)據(jù)分析處理

      如圖3所示,由主控制節(jié)點(diǎn)對健康狀態(tài)歷史值進(jìn)行分析和處理,當(dāng)存在計(jì)算節(jié)點(diǎn)的健康狀態(tài)數(shù)據(jù)異常,則將其運(yùn)行的任務(wù)遷移到其他健康的計(jì)算節(jié)點(diǎn),具體實(shí)現(xiàn)方法如下。

      圖3 健康狀態(tài)數(shù)據(jù)分析處理工作流程

      1) 對健康狀態(tài)數(shù)據(jù)歷史值矩陣進(jìn)行逐列分析,每列數(shù)據(jù)對應(yīng)一個(gè)計(jì)算節(jié)點(diǎn),進(jìn)入步驟2);

      2) 還有計(jì)算節(jié)點(diǎn)沒有分析完畢,進(jìn)入步驟3);如果所有計(jì)算節(jié)點(diǎn)分析完畢,則當(dāng)前時(shí)間點(diǎn)的健康狀態(tài)數(shù)據(jù)分析已經(jīng)完成,進(jìn)入步驟7);

      3) 統(tǒng)計(jì)當(dāng)前列超過健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù),統(tǒng)計(jì)當(dāng)前列低于健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù),進(jìn)入步驟4);

      4) 如果超過健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù)小于k1,且低于健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù)小于k2,則仍然判定該計(jì)算節(jié)點(diǎn)為健康狀態(tài),進(jìn)入步驟5);如果超過健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù)大于等于k1,或者低于健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù)大于等于k2,則表示該計(jì)算節(jié)點(diǎn)多次超過或低于健康狀態(tài)參考范圍,且趨于穩(wěn)定,判定該計(jì)算節(jié)點(diǎn)為非健康狀態(tài),進(jìn)入步驟6);

      5) 將當(dāng)前計(jì)算節(jié)點(diǎn)的非健康標(biāo)志值置為0,進(jìn)入步驟1);

      6) 取超過健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù)和低于健康狀態(tài)參考范圍的時(shí)間點(diǎn)次數(shù)的最大值,作為該計(jì)算節(jié)點(diǎn)的非健康標(biāo)志值,進(jìn)入步驟1);

      7) 分析所有計(jì)算節(jié)點(diǎn)的非健康標(biāo)志值,如果不存在非0值的計(jì)算節(jié)點(diǎn),則表示所有計(jì)算節(jié)點(diǎn)都是健康的,如果存在非0值的計(jì)算節(jié)點(diǎn),則表示存在非健康計(jì)算節(jié)點(diǎn),進(jìn)入步驟8);

      8) 對非健康計(jì)算節(jié)點(diǎn)的處理策略有兩種,其中,策略1包括提示告警、自動遷移任務(wù)、告警同時(shí)自動遷移任務(wù)等三個(gè)操作;策略2包括提示告警、自動關(guān)機(jī)、告警同時(shí)自動關(guān)機(jī)等三個(gè)操作。根據(jù)計(jì)算節(jié)點(diǎn)上運(yùn)行任務(wù)的情況,采用不同的策略對非健康計(jì)算節(jié)點(diǎn)進(jìn)行如下操作。

      策略1:若非健康計(jì)算節(jié)點(diǎn)存在正在運(yùn)行的任務(wù),則主控制節(jié)點(diǎn)按照策略1執(zhí)行操作;

      策略2:若非健康計(jì)算節(jié)點(diǎn)不存在正在運(yùn)行的任務(wù),則主控制節(jié)點(diǎn)按照策略2執(zhí)行操作。

      需要說明的是,健康狀態(tài)數(shù)據(jù)分析處理中的參數(shù)說明如表1所示。

      表1 健康狀態(tài)數(shù)據(jù)分析參數(shù)說明

      4實(shí)驗(yàn)結(jié)果與分析

      根據(jù)基于健康管理的高可用系統(tǒng)設(shè)計(jì)搭建原型系統(tǒng),該系統(tǒng)包含:兩個(gè)控制節(jié)點(diǎn)和四個(gè)計(jì)算節(jié)點(diǎn)。其中,控制節(jié)點(diǎn)采用Intel Core i7 4790 3.6GHz和2G內(nèi)存的物理機(jī)作為試驗(yàn)對象,并且安裝中標(biāo)麒麟3.2.4操作系統(tǒng);計(jì)算節(jié)點(diǎn)采用Intel Xeon CPU-2650 v2 2.60GHz八核CPU和16G內(nèi)存的物理機(jī)作為試驗(yàn)對象,安裝Xen 4.2.2虛擬機(jī)管理器,并且其上分別建立兩個(gè)Intel Xeon CPU-2650 v2 2.60GHz雙核CPU和2G內(nèi)存的虛擬機(jī)作為試驗(yàn)對象,虛擬機(jī)操作系統(tǒng)為中標(biāo)麒麟2.6.32或Windows Server 2008 R2。

      為了說明的簡潔性,試驗(yàn)以CPU溫度為例對計(jì)算節(jié)點(diǎn)的健康狀態(tài)進(jìn)行采樣和監(jiān)測,取歷史采集時(shí)間點(diǎn)個(gè)數(shù)p為5,健康參考范圍為10℃~80℃,k1=k2=4,獲取的健康狀態(tài)數(shù)據(jù)歷史值矩陣如表2所示。

      表2 健康狀態(tài)數(shù)據(jù)歷史值矩陣(單位:℃)

      從表2中可以看出,計(jì)算節(jié)點(diǎn)2的CPU溫度有五個(gè)時(shí)間點(diǎn)超過健康參考范圍,并且k1<5,屬CPU溫度超過健康狀態(tài)范圍。溫度異常的原因是因?yàn)樘摂M機(jī)內(nèi)部負(fù)載過重導(dǎo)致,因此系統(tǒng)將計(jì)算節(jié)點(diǎn)2上運(yùn)行的虛擬機(jī)遷移至計(jì)算節(jié)點(diǎn)1,以此降低計(jì)算節(jié)點(diǎn)2的CPU溫度和工作負(fù)載,避免計(jì)算節(jié)點(diǎn)2的CPU出現(xiàn)趨勢性損耗故障。

      5結(jié)語

      本文設(shè)計(jì)并實(shí)現(xiàn)了一種基于健康的高可用系統(tǒng),相比宕機(jī)時(shí)自動觸發(fā)遷移任務(wù)或手動進(jìn)行任務(wù)遷移,健康狀態(tài)數(shù)據(jù)檢測更加科學(xué)和靈活,并且在計(jì)算節(jié)點(diǎn)出現(xiàn)趨勢性損耗故障前在健康狀態(tài)數(shù)據(jù)上呈現(xiàn)提前反應(yīng),因此該系統(tǒng)的故障提前感知能力得到提高;控制節(jié)點(diǎn)通過計(jì)算節(jié)點(diǎn)的BMC模塊的旁路獲取健康狀態(tài)數(shù)據(jù),不占用計(jì)算節(jié)點(diǎn)的CPU、內(nèi)存、網(wǎng)絡(luò)等資源,因此相比熱備份、冷備份、虛擬機(jī)容錯(cuò)等實(shí)現(xiàn)高可用方法,該系統(tǒng)對計(jì)算節(jié)點(diǎn)本身的性能影響更小;任一計(jì)算節(jié)點(diǎn)之外其它的所有計(jì)算節(jié)點(diǎn)都可配置成該計(jì)算節(jié)點(diǎn)的備計(jì)算節(jié)點(diǎn),因此計(jì)算節(jié)點(diǎn)的高可用性得到了提高。但是對于突然斷電等人為故障,系統(tǒng)缺乏故障感知能力,下一步的工作將考慮將熱備份容錯(cuò)的機(jī)制融入該系統(tǒng)中。

      參 考 文 獻(xiàn)

      [1] 鄒娟.Windows下雙網(wǎng)卡冗余熱備的設(shè)計(jì)與實(shí)現(xiàn)[D].北京:中國艦船研究院,2012:1-10.

      [2] 田煒,劉利強(qiáng),袁贛南.VxWorks環(huán)境下雙網(wǎng)卡冗余備份技術(shù)的實(shí)現(xiàn)[J].自動化技術(shù)與應(yīng)用,2003(7):32-34.

      [3] 翟玉杰.并聯(lián)冗余通信電源系統(tǒng)可靠性的研究[D].大連:大連海事大學(xué),2009:5-20.

      [4] 樓智翔,張吉.雙機(jī)冷備計(jì)算機(jī)信號切換的設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù),2011(2):20-12.

      [5] 劉曉潔,黃永佳.基于Linux的雙機(jī)熱備系統(tǒng)的實(shí)現(xiàn)技術(shù)[J].計(jì)算機(jī)應(yīng)用研究,2007(4):255-257.

      [6] 胡兵全.基于Windows的雙機(jī)熱備系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].武漢:華中科技大學(xué),2004:3-18.

      [7] 王秀娟.調(diào)度集中系統(tǒng)中雙機(jī)熱備機(jī)制的實(shí)現(xiàn)[J].北京交通大學(xué)學(xué)報(bào),2009(2):26-29.

      [8] 蔣濤.一種面向客戶端的雙機(jī)熱備機(jī)制的研究與實(shí)現(xiàn)[D].北京:北京交通大學(xué),2011:15-30.

      [9] 閆劍平,汪希時(shí).兩種方式雙機(jī)熱備結(jié)構(gòu)的可靠性和安全性分析[J].鐵道學(xué)報(bào),2000(3):124-127.

      [10] 曹明濤.基于VxWorks的嵌入式控制器的雙機(jī)熱備系統(tǒng)應(yīng)用[D].南京:南京郵電大學(xué),2012:5-19.

      [11] 任振芳.基于Xen虛擬機(jī)的雙機(jī)熱備可用性研究[D].鄭州:鄭州大學(xué),2012:17-23.

      中圖分類號TP302.1

      DOI:10.3969/j.issn.1672-9730.2016.03.025

      作者簡介:鄢斌,女,高級工程師,研究方向:信息安全。

      收稿日期:2015年9月11日,修回日期:2015年10月27日

      猜你喜歡
      故障檢測健康管理
      南寧市某社區(qū)教育機(jī)構(gòu)學(xué)前兒童健康狀況調(diào)查分析
      基于定子逆序的電機(jī)同步速變換故障檢測算法
      優(yōu)化網(wǎng)絡(luò)設(shè)備維護(hù)提高數(shù)據(jù)通信傳輸質(zhì)量
      電子電路的故障檢測技術(shù)
      家庭醫(yī)生制度下高脂血癥患者社區(qū)健康管理探討
      基于物聯(lián)網(wǎng)的健康管理服務(wù)模式
      新型探測線圈淺析
      科技視界(2016年21期)2016-10-17 17:53:37
      體質(zhì)辨識在社區(qū)糖尿病“治未病”健康管理中的應(yīng)用價(jià)值
      “健康管理”靠自己
      大眾健康(2016年7期)2016-08-04 22:39:52
      暖通空調(diào)系統(tǒng)故障檢測與診斷技術(shù)探討
      托里县| 东方市| 大悟县| 宁强县| 景宁| 东方市| 荣昌县| 繁昌县| 灵寿县| 禄丰县| 湘潭市| 阿拉善右旗| 清涧县| 新兴县| 清水河县| 万年县| 长岛县| 句容市| 根河市| 古田县| 饶河县| 微博| 桐庐县| 灌云县| 洪洞县| 定远县| 安泽县| 朔州市| 繁峙县| 招远市| 盐城市| 昌吉市| 华池县| 乌恰县| 丹寨县| 德钦县| 洛扎县| 那坡县| 成武县| 公主岭市| 古浪县|