華為KunLun開放架構小型機:讓In-Memory應用持續(xù)的秘密
“引言”
數(shù)據(jù)庫越來越多地被使用到現(xiàn)代企業(yè)的生產、運營和管理中,是企業(yè)重要的IT基礎設施。其中承載企業(yè)關鍵業(yè)務的核心數(shù)據(jù)庫通常要求實現(xiàn)7X24小時不間斷運行,以***降低宕機帶來的損失。
KunLun開放架構小型機滿足關鍵業(yè)務對性能和可靠性的高要求。在性能方面,KunLun不僅在多項SPEC基準測試中***,并且在面向聯(lián)機分析處理過程(OLAP)和聯(lián)機事務處理過程(OLTP)的SAP B4H和SD2基準測試中更是拿下雙料冠軍。在可靠性方面,KunLun開放架構小型機采用創(chuàng)新的RAS 2.0技術,突破性實現(xiàn)CPU和內存等核心部件在線不停機更換,在高可靠性方面具備超越傳統(tǒng)UNIX小型機的能力。(RAS是可靠性Reliability、可用性Availability 和可服務性Serviceability的縮寫,代表在這3個領域的技術集合。)
傳統(tǒng)數(shù)據(jù)庫中大量參與運行的數(shù)據(jù)是保存在磁盤等存儲設備上的。在現(xiàn)代計算機的基本架構中,存儲設備相對內存更遠離計算機的核心運算單元中央處理器CPU:CPU訪問存儲設備的速率和帶寬都遠低于CPU訪問內存時的速率和帶寬。隨著服務器處理器支持管理的內存容量越來越大,不少數(shù)據(jù)庫廠商已經將數(shù)據(jù)庫的大量運行數(shù)據(jù)持續(xù)保存在內存中進行運算和管理,這一類采用了“In-Memory Computing”的數(shù)據(jù)庫大大提升了數(shù)據(jù)庫的整體性能。
隨著服務器可安裝的內存條數(shù)目和內存容量的不斷增加,企業(yè)對服務器內存子系統(tǒng)的可靠性的關注度也在不斷提升。華為KunLun開放架構小型機不僅具備DDDC、內存?zhèn)浞荨却骁R像等高可靠性技術,更是具備了X86業(yè)界唯一的內存在線熱替換技術,該技術結合KunLun 的故障主動分析預警引擎(PFAE)技術,可使用戶在內存出現(xiàn)早期輕微異常時就提前采取措施。內存條也和大部分電子設備一樣,其故障率隨時間的曲線呈浴盆形,即業(yè)界常說的浴盆曲線(bathtub curve),失效率較高的階段為早期失效期和損耗失效期。早期的高失效階段,KunLun通過生產測試進行過濾,保證到達用戶手上的是處于低失效率階段的內存條。對于后期的損耗失效,KunLun的內存熱替換技術使得內存條在即將進入損耗失效期時就可以在保證業(yè)務持續(xù)運行的前提下進行熱替換,使業(yè)務系統(tǒng)使用的內存一直處于低失效階段,避免了內存連續(xù)使用進入高失效率階段后出現(xiàn)嚴重故障甚至導致系統(tǒng)宕機。
圖:失效率浴盆曲線
“開放帶來加速創(chuàng)新”
華為KunLun開放架構小型機與世界知名的企業(yè)級Linux操作系統(tǒng)廠商SUSE聯(lián)合發(fā)布的In-Memory應用持續(xù)運行解決方案是雙方建立在開放架構、開放生態(tài)基礎上的創(chuàng)新成果。
圖:內存熱替換功能分層架構
自KunLun發(fā)布以來,華為和合作伙伴積極構建開放生態(tài),加速創(chuàng)新。內存熱替換技術是系統(tǒng)性的復雜技術,需要處理器、BIOS固件、服務器平臺,還有操作系統(tǒng)內核的支持。SUSE和華為在長期合作的基礎上,共同向該項技術發(fā)起挑戰(zhàn)。SUSE召集了資深的內存及ACPI專家,和華為進行深度聯(lián)合開發(fā)。在SUSE正式發(fā)布的操作系統(tǒng)補丁中,對內存管理模塊、ACPI的驅動模塊做了大量底層代碼的優(yōu)化與加固,優(yōu)化了內存熱替換技術的流程。
不僅如此,華為與SUSE的In-Memory業(yè)務持續(xù)運行解決方案的聯(lián)合發(fā)布,也是開放架構服務器的業(yè)界首創(chuàng)。以X86架構為代表的開放架構服務器正在***技術創(chuàng)新的潮流,KunLun開放架構小型機不僅幫助用戶加速創(chuàng)新的步伐,更在加速創(chuàng)新的同時提供業(yè)界領先的可靠性保障。
“專注業(yè)務體驗提升”
KunLun的In-Memory業(yè)務持續(xù)運行解決方案不僅關注技術本身,更專注于用戶的業(yè)務體驗。
華為與SUSE在內存在線熱替換技術上進行了長期的合作開發(fā),一步一個腳印,從操作系統(tǒng)本身支持內存熱替換到不同用戶業(yè)務場景下的內存遷移效率優(yōu)化,都進行了深入的研究和不斷的創(chuàng)新,尤其對于“In-Memory”這類業(yè)務進行了系統(tǒng)性地驗證和優(yōu)化。
對于有潛在故障內存的在線熱替換,極其重要的一個環(huán)節(jié)是將這些內存上正在運行的數(shù)據(jù)遷移到其他正常的空閑內存上,***在內存遷移完成以后刪除潛在故障內存相關的資源信息,以保證沒有新的數(shù)據(jù)存放于此。操作系統(tǒng)和數(shù)據(jù)庫對內存的使用非常復雜,特別是不同的數(shù)據(jù)庫對內存的訪問方式可能存在差異。華為與SUSE面向主流的數(shù)據(jù)庫包括Oracle、SAP HANA等應用場景都進行了內存遷移優(yōu)化,提高了單個內存頁的遷移成功率,減少重試從而縮短整體的內存遷移時間。
“操作簡單易于維護”
雖然內存的在線熱替換是一個系統(tǒng)級的非常復雜的過程,但是對于用戶來說,操作卻是非常簡單的。
當KunLun的PFAE技術檢測到某個內存板發(fā)生了輕微異常,并且有演變?yōu)閲乐毓收系内厔輹r,KunLun的管理頁面上會出現(xiàn)預告警提示,這時用戶只需在管理界面上找到預告警中標記的具有潛在故障的內存板對應的圖標,點擊圖標上的熱插拔按鈕觸發(fā)內存熱移除命令,便可自動完成接下來的操作:
1. 系統(tǒng)固件會通知操作系統(tǒng)遷移潛在故障內存上的數(shù)據(jù);2. 操作系統(tǒng)完成內存數(shù)據(jù)遷移后刪除對應的資源管理信息;3. 系統(tǒng)固件刪除潛在故障內存板對應的系統(tǒng)地址編碼信息,并控制硬件系統(tǒng)給內存板斷電。
圖:熱插拔操作界面,點擊內存條圖標上的圓點(狀態(tài)燈)觸發(fā)熱插拔操作,內存熱移除后狀態(tài)燈由綠色(表示健康)變?yōu)樗{色(表示在位但未供電)
用戶此時只需打開機柜抽出故障內存板,更換故障內存條,然后,將內存板插回到機柜中,再次點擊熱插拔按鈕觸發(fā)內存熱添加命令,便可自動完成包括內存的加電、電氣特性配置、系統(tǒng)地址分配和創(chuàng)建管理信息等操作。整個熱移除和熱添加的過程中,用戶的業(yè)務都不會出現(xiàn)中斷。
KunLun開放架構小型機不僅支持內存在線熱替換,也可支持CPU的在線熱替換。視頻中記錄了在華為實驗室中進行的CPU和內存的在線熱替換操作演示。