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