介紹服務器的熱插拔(Hot Plug)技術。
我們都知道,即使再高的服務器可用性也有可能出現(xiàn)故障的時候,只不過不知道它何時出現(xiàn)而已。然而一旦服務器出現(xiàn)故障,通常不太可能像PC機那樣停下機來進行長時間的維修(除非迫不得已),而是采用在線更換故障配件來進行維護的,這就是本文所要介紹的“熱插拔”(Hot Plug)技術誕生的初衷。
熱插拔技術就是指在服務器系統(tǒng)正常開機、運行的狀態(tài)下,對故障配件進行更換、或者添加新的配件,涉及到三個方面的專業(yè)術語,那就是熱替換(Hot Replacement)、熱添加(Hot Expansion)和熱升級(Hot Upgrade)。
熱插拔技術其實很早就有了,最早的是SCSI硬盤的熱插拔技術,我們最容易想起的也是它。那是因為當時在整個服務器配件中,出現(xiàn)故障機率最大的就是硬盤,而當時的服務器硬盤接口基本上都是SCSI接口類型,所以在SCSI硬盤上實現(xiàn)熱插拔就成為當時之急需了。隨著硬盤陣列技術的日益成熟,熱插拔SCSI硬盤陣列也就成了服務器熱插拔硬盤的代名詞。它可以實現(xiàn)在在線情況下更換故障硬盤、添加新的硬盤進陣列中,極大地方便了服務器硬盤陣列系統(tǒng)的維護。
然而隨著服務器應用的深入,服務器所承受的負荷遠遠走出了當時的情形,而且由于用戶對網(wǎng)絡的依賴性比以前更強了,所以對服務器系統(tǒng)的穩(wěn)定性要求也較以前大大提高了。這樣一來,對其它配件支持熱插拔技術的呼聲也就越來越高了,因為現(xiàn)在服務器系統(tǒng)主要出現(xiàn)故障的配件不再僅是硬盤系統(tǒng)了,而更多的可能是內(nèi)存、PCI適配器、電源和風扇等。有的甚至支持CPU和服務器本身熱插拔,當然這主要是在高端多路處理器服務器系統(tǒng)和群集服務器系統(tǒng)中?,F(xiàn)在,熱插拔技術在確保服務器系統(tǒng)可用性已顯得越來越重要了,已成為服務器的標準技術。盡管不同檔次的服務器所支持的熱插拔配件并不完全一樣,但對于像硬盤、電源和風扇的熱插拔技術支持已成為最基本的服務器技術配置了。
不過要說明的是,熱插拔技術現(xiàn)在已不再是服務器系統(tǒng)所專用,在PC系統(tǒng)也開始得到應用,但并不主要是出現(xiàn)系統(tǒng)維護方面考慮的,如支持熱插拔的USB接口。需要連接USB外設時,只需把它插入到計算機的USB接口即可,而不管計算機當前是否正在運行。
前面我們說到了,現(xiàn)在的服務器系統(tǒng)支持熱插拔技術的已遠不是SCSI硬盤一種了,已在像CPU、內(nèi)存、網(wǎng)卡、電源和風扇等關鍵設備中全面支持。但從原理上來說,最底層的技術支持還是像PCI、PCI-X、PCI-E和InfiniBand之類總線技術。
熱插拔功能的實現(xiàn)首先需要軟、硬件的共同支持,包括有熱插拔功能的硬件設備、支持熱插拔的操作系統(tǒng)和用戶界面、主板BIOS以及支持熱插拔功能的PCI總線等等。其中PCI熱插拔技術對于網(wǎng)卡、電源、風扇、SCSI設備等熱插拔硬件的應用來說意義重大,因為它是這些設備得以實現(xiàn)熱插拔功能的基礎。當然這里還有一個標準問題,因為PCI總線體系結構的改變就意味著硬件接口標準的改變,所以必須制定統(tǒng)一的工業(yè)標準,技術才能獲得推廣。
自從PCI規(guī)范標準化后,PCI熱插拔技術也就得到了硬件方面的支持,但它還需要通過軟件來完善和實現(xiàn)。首先是操作系統(tǒng)的支持,微軟在Windows 2000系統(tǒng)中支持PCI熱插拔功能的是“高級配置和電源接口”(ACPI)規(guī)范,通過屏蔽每個熱插拔控制器來實現(xiàn)硬件的熱插拔,以及在線升級(也就是熱升級)。惠普在微軟的ACPI規(guī)范的基礎上又做了進一步改進,開發(fā)出“PCI Hot Plug Utility”遠程管理工具,可以在操作系統(tǒng)不支持熱插拔功能的情況下,用統(tǒng)一的管理平臺統(tǒng)一調(diào)用和管理遠程網(wǎng)絡系統(tǒng)中的PCI熱插拔插槽。而且惠普還對插槽進行了專用集成電路(ASIC)來控制熱插拔設備時插槽的電流穩(wěn)定性。顯而易見,HP的ProLiant服務器由此獲得了兩種軟件支持熱插拔設備的途徑,操作系統(tǒng)或者是PCI Hot Plug Utility管理工具。
有了PCI總線的支持,帶電插拔服務器中的SCSI設備、網(wǎng)卡、電源、風扇等自然變得輕而易舉。而其它幾種目前較新的總線技術都是不同程度地從PCI總線升級得到的,在熱插拔方面,不僅完全繼續(xù),而且還有相當大的提高,因為它們基本上(不是全部,PCI-X仍屬于并行結構)都是從傳統(tǒng)的并行向最新的串行接口技術轉(zhuǎn)變,同一時刻的單一傳輸任務和極少的插針,使得采用這些接口的設備在熱插拔時,對系統(tǒng)及自身的影響都遠小于并行總線的PCI設備。這些新型的總線技術基本上都很容易地實現(xiàn)了對熱插拔技術的支持,就像USB和SATA接口技術一樣。正因如此,采用這些新型總線技術的網(wǎng)卡、硬盤陣列卡等設備也就全面繼承并擴展了對熱插拔技術的支持。這里要簡單介紹的是IBM的Active PCI-X(活動PCI-X)技術。
Active PCI-X是IBM原來在大型機,現(xiàn)在是其企業(yè)級x架構服務器中普遍使用的一種熱插拔技術。PCI-X 技術充分利用了 PCI 總線的廣泛性,對常規(guī) PCI 總線進行了改進和 I/O 升級。PCI-X技術在常規(guī) PCI 總線帶寬的基礎上,將總線容量提高了八倍多 - 從32位、33-MHz PCI總線的133 MB/s提高到64位、133-MHz PCI-X總線的1066 MB/s。它增強了PCI協(xié)議,開發(fā)了一個工業(yè)標準的互連結構,原始帶寬超過每秒1千兆字節(jié)(GB/s),將滿足企業(yè)計算系統(tǒng)今后的帶寬需求。PCI-X總線在適配器級和系統(tǒng)級上提供對PCI總線的向后兼容性。
IBM在成功實現(xiàn)Active PCI(活動PCI)技術的基礎之上,在基于企業(yè)級服務器X架構設計的一些X系列服務器中引入同時支持PCI和PCI-X兩種適配器接口的Active PCI-X(活動PCI-X)技術。活動PCI-X總線技術就為IBM提供了提升服務器總體性能的另一個解決方案。活動PCI-X的主要特性如下:
熱交換 (Hot Swap):允許在不用關閉和重啟服務器的情況下更換適配器。
熱添加(Hot add):提供了一種容易的升級方式,允許在服務器運行的狀態(tài)下添加新的適配器(在工業(yè)標準中IBM是第一個提供這種性能的)。
切換(Failover):允許在主適配器出現(xiàn)故障的情況下極快地用另一個備用適配器接替原來適配器的工作繼續(xù)運行。
PCI及其它幾種總線類型設備的熱插拔支持解決了,但要實現(xiàn)服務器內(nèi)存的熱插拔,僅僅依靠PCI總線技術當然還不能完全解決。于是那些像IBM、HP這樣的頂級服務器巨頭就開始了自己的內(nèi)存糾錯技術的研究,相繼出臺了Chipkill和Advanced ECC內(nèi)存糾錯技術,比起傳統(tǒng)的ECC技術來說,在發(fā)現(xiàn)和糾正內(nèi)存錯誤能力上有了相當大的提高,因為它們都可以實現(xiàn)4比特的內(nèi)存糾錯。
盡管如此,這樣簡單的少數(shù)比特位發(fā)生錯誤的情況在整個內(nèi)存錯誤中所占的比例仍不是很高,還有相當大一部分內(nèi)存錯誤并不屬于這一類,而是出現(xiàn)多比特位,甚至是硬件出現(xiàn)損壞,這時以上的幾種糾錯技術也就無能為力了。于是IBM、HP等服務器巨頭又開始想其它辦法了。同樣相繼開發(fā)了多種不同級別的內(nèi)存保護技術,如IBM的內(nèi)存保護(Memory ProteXion)技術、內(nèi)存鏡像(Memory Mirroring)技術、內(nèi)存熱添加/交換(Memory Hot-add/swap)技術;HP的鏡像內(nèi)存(Mirroring Memory)技術、在線內(nèi)存?zhèn)浞?Online Spare Memory Mode)技術和熱插拔陣列內(nèi)存技術(Hot Plug RAID Memory)等。
當然以上并不是服務器熱插拔技術的全部,就整個熱插拔技術來說,還是相當復雜的廣泛的。前面我們介紹到了,基本的PCI類適配器、電源和風扇熱插拔比較容易實現(xiàn),內(nèi)存的熱插拔實現(xiàn)較難,但處理器和服務器本身的熱插拔就更難了,它涉及到許多比較深的技術,如處理器擴展、邏輯分獲和服務器群集等,在此就不一一介紹了。
更多計算機與外設信息請關注:21ic計算機與外設頻道