作為信息化建設(shè)中硬件架構(gòu)不可或缺的服務(wù)器一直以來都備受關(guān)注,同時,服務(wù)器的更新?lián)Q代也在見證著世界領(lǐng)先科技的發(fā)展歷程,不論是最初的16位處理,還是后來紅極一時的32位處理器,甚至包括如今同時支持的32位、64位的處理器以及即將到來的純64位處理器年代,服務(wù)器雖然歷經(jīng)千變?nèi)f化,但有一點(diǎn)一直是永恒不變的主題,那就是服務(wù)器的可用性。一臺服務(wù)器如果連最基本的可用性都無法保障,它將無法登上時代的大舞臺。
究竟什么是服務(wù)器的可用性?它包括哪些內(nèi)容?為什么如此受到大家的關(guān)注?下面我們將一一作答。
服務(wù)器的可用性(Usability)其實(shí)就是要求服務(wù)器具有高的可靠性、高穩(wěn)定性、易于管理維護(hù),不要時不時死機(jī)、出故障,盡量少出現(xiàn)停機(jī)待修現(xiàn)象。因?yàn)槎鄶?shù)情況下服務(wù)器是要求連續(xù)不間斷工作的,所以它的性能穩(wěn)定、可靠是非常重要,如果是普通的PC死機(jī)了重啟,最多時會丟失一些本臺電腦上的文檔信息、少量的數(shù)據(jù),不會造成巨大的經(jīng)濟(jì)損失。但是如果服務(wù)器出現(xiàn)死機(jī)的情況,后果將不堪設(shè)想。因?yàn)樵S多重要的數(shù)據(jù)、資料、信息、記錄都保存在服務(wù)器上,尤其是許多網(wǎng)絡(luò)服務(wù)都在服務(wù)器上運(yùn)行,一旦服務(wù)器發(fā)生故障,將會造成大量數(shù)據(jù)丟失、許多重要業(yè)務(wù)停頓,如代理上網(wǎng)、安全驗(yàn)證、電子郵件服務(wù)等都將失效,如果是需要計(jì)費(fèi)的網(wǎng)絡(luò),將無法提供準(zhǔn)確的計(jì)費(fèi)數(shù)據(jù),不但無法實(shí)現(xiàn)安全運(yùn)營,嚴(yán)重的將造成整個網(wǎng)絡(luò)的癱瘓,其損失是難以估量的。而易于管理和維護(hù)就不必說了,對于非專業(yè)的用戶而言能夠用最簡單的管理去維護(hù)網(wǎng)內(nèi)的所有設(shè)備使他們很開心的事情。所以綜上所述,高可靠性、高穩(wěn)定性和易于管理維護(hù)是服務(wù)器可用性的具體體現(xiàn)。
但是在服務(wù)器的硬件架構(gòu)的設(shè)計(jì)上如何來保障可用性呢?關(guān)鍵是要做到硬件冗余和硬件在線診斷技術(shù)。其中常見的硬件冗余包括:磁盤冗余、電源冗余和風(fēng)扇冗余,另外還有一些RAM冗余、PCI適配器冗余和網(wǎng)卡冗余等;而硬件在線診斷技術(shù)則需要包括:熱插拔技術(shù)、內(nèi)存保護(hù)技術(shù)、內(nèi)存檢查和糾錯技術(shù)、內(nèi)存鏡像技術(shù)、內(nèi)存熱添加/交換技術(shù)、活動PCI技術(shù)、活動診斷技術(shù)等。下面我們將以航天聯(lián)志服務(wù)器為例來介紹這些技術(shù)的詳細(xì)內(nèi)容。
硬件冗余比較容易理解,就是對硬件的組成部件采用冗余備份的方式來保障因部分部件損壞引起的硬件系統(tǒng)的癱瘓,但是出于對設(shè)備成本考慮,所以不能做所有部件的冗余,一般都是對其中一些關(guān)鍵部件的冗余,比如說磁盤冗余技術(shù),就是人們常說的RAID(磁盤陣列)技術(shù),即:把多塊獨(dú)立的硬盤(物理硬盤)按不同方式組合起來形成一個硬盤組(邏輯硬盤),從而提供比單個硬盤更高的存儲性能和提供數(shù)據(jù)冗余的技術(shù)。在航天聯(lián)志提供的服務(wù)器產(chǎn)品中,基本上都采用了此項(xiàng)技術(shù),支持RAID0、RAID1,使服務(wù)器可以充分利用總線的帶寬完成數(shù)據(jù)的操作,顯著提高磁盤整體存取性能,最大限度的保證用戶數(shù)據(jù)的可用性。同時航天聯(lián)志的服務(wù)器產(chǎn)品可以提供雙電源和雙風(fēng)扇的冗余備份,部分機(jī)型還可以支持熱插拔技術(shù),這就給電源和風(fēng)扇創(chuàng)造了一個輕松負(fù)荷的工作狀態(tài),減少了因電源或風(fēng)扇的損壞而出現(xiàn)的系統(tǒng)內(nèi)部問題,從根本上避免了服務(wù)器的工作不穩(wěn)定和停機(jī)。
但是僅僅提供了硬件不見得冗余是遠(yuǎn)遠(yuǎn)不夠的,還需要一些硬件在線診斷技術(shù)的配合,才能使服務(wù)器的可用性發(fā)揮至極致。比如熱插拔技術(shù),就是指有些部件可以在系統(tǒng)帶電的情況下對部件進(jìn)行插、撥操作。這非常重要,因?yàn)楫?dāng)我們發(fā)現(xiàn)一些部件已損壞,但因?yàn)樘峁┝擞布哂?,所以系統(tǒng)仍能繼續(xù)保持良好運(yùn)行。我們需要把損壞的設(shè)備更換下來,如果沒有熱插拔技術(shù),就必須關(guān)閉服務(wù)器的電源才能進(jìn)行,這樣就會造成人為的服務(wù)器停機(jī)。隨意在航天聯(lián)志的服務(wù)器產(chǎn)品,絕大多數(shù)都采用了支持硬件熱插拔的功能,比如在電源、硬盤、風(fēng)扇、內(nèi)存、網(wǎng)卡等。
在這里我們還需要提到內(nèi)存糾錯技術(shù)----ChipKill內(nèi)存技術(shù),這是一種新的ECC內(nèi)存保護(hù)標(biāo)準(zhǔn)。隨著基于Intel處理器架構(gòu)的服務(wù)器的CPU性能在以幾何級的倍數(shù)提高,而硬盤驅(qū)動器的性能同期只提高了5倍,因此為了獲得足夠的性能。服務(wù)器需要大量的內(nèi)存來臨時保存在CPU上讀取的數(shù)據(jù),這樣大的數(shù)據(jù)訪問量就導(dǎo)致單一內(nèi)存芯片上每次訪問時通常要提供4(32位)或8(64位)比特以上的數(shù)據(jù)。一次性讀取這么多數(shù)據(jù),出現(xiàn)多位數(shù)據(jù)錯誤的可能性會大大地提高,而ECC又不能糾正雙比特以上的錯誤,這樣就很可能造成全部比特?cái)?shù)據(jù)的丟失,系統(tǒng)就很快崩潰了。航天聯(lián)志在其所有的絕大部分服務(wù)器產(chǎn)品中都增加了ChipKill內(nèi)存技術(shù),使這個難題得到徹底的解決。
現(xiàn)在一個服務(wù)器上安裝的內(nèi)存逐漸增多,在系統(tǒng)中發(fā)生與內(nèi)存有關(guān)的錯誤的可能性也在增大。所以航天聯(lián)志在保障服務(wù)器產(chǎn)品可靠性上,不單單采用了Chipkill修復(fù)技術(shù),還包括內(nèi)存保護(hù)、內(nèi)存鏡像和熱交換性能等一些純硬件方法,以及內(nèi)存熱添加技術(shù)等一些軟件方法全方位的保障設(shè)備的可靠性,使整個系統(tǒng)的可用性得到了最大的體現(xiàn)。


