“英特爾革命性的英特爾? 傲騰? 持久內存解決方案不僅為ZStack 節省了大量的研發生產運維開支,以更低的成本提供了更多的內存資源和更多的云主機實例,加速了產品的開發測試,產品能夠以更快的速度迭代,同時英特爾? 傲騰? 持久內存解決方案本身也可以作為方案輸出到我們的客戶,為產品的輸出形態提供了更大的空間和可能。”
何 爽
ZStack產品測試部總經理
為了提升資源調度的敏捷性、降低開發周期,并控制總體擁有成本 (TCO),企業的開發測試負載正在逐步向云平臺遷移。但與此同時,大規模自動化測試用例會顯著加大 CPU和內存等資源的消耗。這也意味著云服務提供商往往需要在大規模內存池的構建上耗費大量成本,尋找更加經濟的內存解決方案因此成為重要發展方向。
作為一家自主創新、專注產品化的云計算公司,ZStack(云軸科技)依托ZStack Cloud虛擬化技術,搭建了 ZStack DevOps 自動化測試平臺。該平臺將服務資源池化,能夠充分利用硬件資源,支持按需分配和彈性計算;并依靠嵌套虛擬化編排構建模擬各種硬件場景,實現了大規模的自動化測試用例集的執行,支持多種IT基礎架構的管理與自動化交付。
為了進一步優化 ZStack DevOps 自動化測試平臺的經濟性,提供更低成本的內存池建設選項,ZStack與英特爾合作,采用英特爾? 傲騰? 持久內存替代高成本的 DRAM 內存,在多節點測試中實現了最高達 53% 的成本節約1,將每節點的虛擬內存系統 (VMs) 實例數量提升了33%2,證明了英特爾? 傲騰? 持久內存在大規模內存集應用中的巨大優勢。
背景與挑戰:
大規模自動化測試的內存瓶頸
伴隨著企業業務和服務的拓展,IT環境對資源規模、運維管理水平和應用交付速度都有進一步提升的迫切需求。傳統的開發測試虛擬化平臺遇到諸多挑戰,如IT 資源無法統一調度,缺乏對IT 資源生命周期的有效管理;無法有效制約IT 資源利用率低下及成本難以量化的問題;環境部署依賴手動安裝,耗時費力易出錯導致交付過程長;系統維護升級窗口時間長,高可用實現成本高;無法按需進行IT資源配額管理等。
在此背景下,基于DevOps云平臺的自動化測試方案得到了快速應用。該方案不僅能夠通過DevOps 集成的自動化工具的應用,更經濟地驗證軟件質量,縮短項目周期,減少修復缺陷成本,還能夠通過云平臺屏蔽底層異構硬件和虛擬化軟件的復雜性,實現多種IT基礎架構的管理與自動化交付。
ZStack DevOps自動化測試平臺依靠嵌套虛擬化編排構建模擬各種硬件場景,實現大規模的自動化測試用例集的執行。由于整個集合的測試用例規模在幾萬個,運行所需要消耗的硬件資源非常龐大,通常需要40臺服務器同時運行10小時才能完成一個周期的測試,測試周期會由于硬件資源的限制而變得非常長。
在DevOps自動化測試平臺中,內存是非常重要的資源,大量測試用例平均需要分配 GB 級別的內存。當測試用例規模達到上萬的時候,所需要的內存池容量將是海量的,這無疑會帶來巨大的TCO壓力,也會成為擴展測試規模和升測試速度的重要瓶頸。
在相當長的一段時間內,ZStack都使用的是DRAM內存來搭建內存池,但是這種方式卻存在如下挑戰:
DRAM內存價格較高,考慮到單個服務器節點部署的內存常常高達1TB,因此內存成本成為服務器總體成本的重要組成部分。
當前,DRAM內存容量普遍低于32GB,少量64GB內存的價格居高不下,受限于單個服務器節點中的內存插槽數量,企業難以進一步提升服務器中的內存總量。
為了獲得更大的內存池,企業不得不將重點放在增加服務器節點上,這會帶來額外的服務器采購、空間、運維等方面的成本。
解決方案:
使用英特爾?傲騰?持久內存替換 DRAM 內存
為了在 ZStack DevOps自動化測試平臺中尋求更加經濟的內存解決方案,ZStack與英特爾合作,使用英特爾? 傲騰? 持久內存替換服務器中部署的部分 DRAM 內存。
英特爾? 傲騰? 持久內存提供了行業領先的高吞吐率、低延時、高服務質量和超高耐用性,可以提供接近內存的延遲,并支持高速緩存和超快存儲,能夠有效對應用進行加速。英特爾? 傲騰? 持久內存的單設備最大容量達到512GB,遠超DRAM內存的128GB,從而可以支持單臺服務器輕松實現更大的內存總量。與此同時,英特爾? 傲騰? 持久內存的單位容量價格要遠低于DRAM內存,這些特性使得ZStack能夠以更低的成本構建容量更高的內存池。
英特爾? 傲騰? 持久內存提供了兩種不同的操作模式:內存模式 (Memory Mode) 和應用直接訪問模式 (App Direct Mode)。在內存模式中,它與普通的易失性(非持久性)系統存儲器完全一樣,但成本更低,能在保持系統預算的同時實現更高容量。在應用直接訪問模式下,應用程序和操作系統會有兩種可用的內存,系統將決定是從DRAM還是英特爾? 傲騰? 持久內存中寫入或讀取數據,在此模式下,即使系統關閉電源,數據仍保留在內存中。在自動化測試實例中,ZStack使用了英特爾? 傲騰? 持久內存的內存模式。
為了驗證英特爾? 傲騰? 持久內存所帶來的成本節約效果,ZStack與英特爾分別針對單節點與6節點進行了測試。該測試系統的架構如圖 1 所示,底層資源是包含各種服務器的硬件資源池,包含云主機資源池1000+,裸金屬資源池200+;通過ZStack底層軟件接口,ZStack的測試調度管理平臺可以很好的對底層硬件各資源池進行調度。測試平臺負責測試ZStack產品線,ZStack Mini產品線,ZStack多云管理等產品線,是 ZStack產品上市前質量保證基礎。
圖1:測試系統架構
單節點的測試配置如表 1 所示:
表 1:單節點測試配置
3種配置的單個測試實例成本 (Testing VMs/$) 數據如圖 2 所示,相比DRAM方案,在性能相近的情況下,英特爾? 傲騰? 持久內存方案能夠將成本降低高達35%。
圖2:英特爾? 傲騰? 持久內存/ DRAM 方案成本對比(單節點)
隨后,雙方還進行了6個節點的測試,測試配置如表 2 所示。
表2:6節點測試配置
測試數據如圖3 所示,在2小時內,英特爾? 傲騰? 持久內存方案能夠運行192個VM 實例3,比DRAM方案提升了高達33%。兩種配置的單個測試實例成本(Testing VMs/$) 對比如圖4所示,英特爾? 傲騰? 持久內存方案比DRAM方案的成本降幅高達 53%4。
圖3:英特爾? 傲騰? 持久內存/ DRAM 方案 VM實例對比(6節點)
圖4:英特爾? 傲騰? 持久內存/ DRAM 方案成本對比(6節點)
兩輪測試數據顯示,在ZStack DevOps自動化測試平臺的測試實例中,通過將DRAM 內存替換為英特爾? 傲騰? 持久內存,能夠實現非常明顯的性能提升與成本降低效果:
英特爾?傲騰? 持久內存的每容量成本顯著低于DRAM內存,而且在性能上較為接近,在內存容量密集型應用中有著非常巨大的應用潛力。
與DRAM內存相比,英特爾? 傲騰? 持久內存能夠在單個服務器節點擴展更大的內存集,可幫助用戶降低服務器節點的規模,進一步控制TCO。
英特爾?傲騰?持久內存有著較高的服務質量(QoS),在較高的負載下依然能夠保證平穩的性能表現,這使得其在大規模用例中的性能與成本優勢更加明顯。
展望:
英特爾? 傲騰? 持久內存為業務云化賦能
本系列測試證明,英特爾? 傲騰? 持久內存能夠幫助ZStack以更加經濟的方式構建自動化測試基礎設施,滿足大規模測試用例對于硬件資源的苛刻要求,降低TCO挑戰。除了自動化測試之外,ZStack還在驗證英特爾? 傲騰? 持久內存在更多場景下的應用潛力,以進一步發揮 ZStack平臺在自動配置資源、快速部署應用等方面的優勢。
得益于領先的性能和出色的成本優勢,基于英特爾? 傲騰? 持久內存的全新解決方案正在內存數據庫等越來越多的場景落地生根,幫助越來越多的行業用戶在降低TCO的同時提升性能。未來,英特爾將繼續強化與生態伙伴的合作,共同驗證前沿硬件及軟件技術在不同場景中的落地與優化,推動行業的數字化轉型。