10月6日,OpenStack社區發布第24個版本 Xena(簡稱X版本),浪潮云海在Nova、Cyborg、Cinder、Masakari、Manila等核心項目的技術貢獻排名再次獲得“中國第一”、全球前三,已連續4個版本榮登社區技術貢獻國內榜首,引領OpenStack重要技術發展。
其中,浪潮云海OS技術團隊向OpenStack社區貢獻的可視化日志管理項目 -- Venus,是國內首個在智能運維領域貢獻的開源項目。
在此版本中,浪潮云海團隊分別從以下四個方面做了大量技術貢獻:
一、GPU高級虛擬化功能增強及優化
二、加密卷、文件等存儲場景增強優化
三、云平臺上穩定性和持久內存的易用性增強
四、基于Kolla的Venus項目集成實踐,實現生產級鏡像加速部署
一、GPU高級虛擬化功能增強及優化
AI技術快速發展,市場上對深度學習、圖形圖像處理及科學計算等多種場景的需求不斷增加,但GPU價格昂貴,對云平臺來說,如果一個GPU設備只能提供給一個虛擬機或物理機使用,GPU的利用率會大大降低。為滿足客戶多臺虛擬機同時使用一個物理GPU,浪潮云海OS團隊基于硬件加速設備管理項目Cyborg實現了對GPU/vGPU資源的精細化調度和管理功能,支持根據vGPU顯存大小進行調度創建vGPU虛擬機,極大程度上提升GPU資源利用率。
浪潮云海OS可支持GPU高級虛擬化(vGPU)功能,以支持一個GPU設備(即GPU:vGPU = 1: n(n≥1))啟動多個高性能虛擬機,此時一個物理GPU設備可支持多臺虛擬機運行,提升GPU對用戶業務的并行處理能力。浪潮云海OS操作系統集云計算、大數據和人工智能于一體,作為云數據中心的“中樞神經系統”,實現了數據中心資源融合,資源管理及服務交付,同時支持GPU設備細粒度、精細化調度;支持根據GPU廠商、產品號、名稱等屬性調度所需的GPU或vGPU設備。
vGPU設備管理架構
浪潮云海OS通過GPU或vGPU設備為虛擬機提供了無與倫比的圖形性能和應用程序兼容性,同時在多個工作負載之間共享GPU以帶來成本效益和可擴展性。
二、加密卷、文件等存儲場景增強優化
隨著云平臺規模的增大,如何保障云平臺的高可用性成為了各個云廠商關注的熱點話題。浪潮云海OS從真實客戶需求出發,綜合虛擬機、物理機等多種應用場景,為客戶提供多平面感知的高可用能力,以下是在X版本貢獻的多項核心技術:
云海OS團隊在文件存儲Manila組件方面貢獻了多個高級功能。例如增加文件存儲回收站功能,通過軟刪除方式將Share放入回收站,回收站中的Share默認在七天之后被徹底刪除,進一步提升文件安全性。支持用戶對回收站內的Share進行查看、恢復以及徹底刪除(暫不支持對Share更新、擴容、遷移等操作);管理員和普通用戶默認支持使用回收站功能,在一定程度上提升了用戶使用云平臺的安全性,降低由于操作不規范、誤刪文件等帶來經濟損失的可能。
納管卷實現原理
以OpenStack平臺為例,浪潮云海技術團隊優化了核心項目Cinder加密卷的處理邏輯,并將此優化推送到社區。具體來說,卷加密功能是基于LinuxLUKS架構,在卷掛載到虛擬機之前首先判斷卷的數據格式。如果卷數據格式非LUKS格式,會將目標卷格式化為LUKS之后再映射給虛擬機使用。此種情況下,如果納管存儲上已經存在數據的卷,就可能出現數據丟失風險。另外如果目標卷是加密類型的,納管時需要有密鑰支持,無密鑰則無法解析加密卷。
卷上傳鏡像架構
在對接iSCSI協議的存儲時,卷映射虛擬機后,在宿主機上會生成SCSI相關協議的鏈路信息(Multipath、SCSI設備映射等)。在融合部署cinder-volume服務與nova-compute服務時,卷上傳鏡像操作在讀取卷所使用的鏈路信息時,會與虛擬機使用的鏈路信息保持一致。如果上傳鏡像操作處理完時需要解除卷與虛擬機的映射信息,此時也會解除虛擬機所使用的鏈接映射,并造成虛擬機故障。
針對此問題,浪潮云海針對此問題進行了深入研究,設計修復方案并完成開發,完成了對云海OS產品的優化,并將針對此問題的技術實現推送到OpenStack開源社區,得到了眾多開源項目維護者及社區開發者的認可。
三、云平臺上穩定性和持久內存的易用性增強
主機多平面故障檢測
當計算集群發生大規模故障時,計算資源急劇收縮,可能存在資源不足的情況,此時疏散可能給云平臺造成更大的傷害。另外,計算節點上云主機根據承載的業務不同,有的業務應用實例價值高,有的就可能沒那么重要。
如何保障高價值的業務優先恢復?
這就需要通過定義用戶業務實例的優先級,然后通過排隊、熔斷、限流、降級重試等策略保障用戶業務的可用性,從而保障云平臺業務的穩定性。
PMEM設備虛擬機離線遷移實現原理
PMEM設備虛擬機離線遷移實現時序圖
浪潮云海技術團隊和英特爾中國CESG ESS部門及英特爾中國OpenStack社區研發團隊共同合作,對持久化內存(PMEM)進行了深入研究,完善并深度優化PMEM設備虛擬機的相關功能,例如支持PMEM設備虛擬機離線遷移,支持將已有的PMEM數據的虛擬機遷移到目標PMEM服務器節點上。
PMEM設備管理
為了更進一步實現異構加速器設備的管理,浪潮云海技術團隊編寫了PMEM設備的驅動程序,并將其貢獻到OpenStack Cyborg社區,以支持通過智能加速器設備管理項目統一管理PMEM設備,支持PMEM設備的自動發現、自動上報、Nova創建虛擬機智能調度,更好支持虛擬機在創建時請求PMEM設備。
四、基于Kolla的Venus項目集成實踐,實現生產級鏡像加速部署
作為OpenStack平臺部署項目,Kolla通過構建OpenStack容器化組件鏡像,將不同的組件根據角色配置部署到不同的節點上,實現了生產級別的鏡像加速部署,最大程度簡化OpenStack部署和運維成本。
Venus項目容器化部署實現原理
Venus是浪潮云海技術團隊提出的基于OpenStack云平臺的可視化日志管理項目,且已成為OpenStack社區官方項目,提供了一站式日志采集、清洗、索引、分析、警告、可視化等能力。浪潮云海技術團隊在Kolla項目中率先集成了Venus,通過Kolla項目分層模式實現Venus鏡像構建,Kolla-ansible容器化實現Venus配置文件自動生成、數據注冊、創建數據及啟動容器化服務等,從而提升Venus項目的部署效率及后期運維能力。
一直以來,浪潮云海通過在架構優化、權威基準測試、規模化應用、社區貢獻、生態完善等方面的持續創新,構建了開放、融合、敏捷、智能的云操作系統,為各行各業提供數字轉型、智能升級、融合創新的云基礎設施;同時持續推動OpenStack等開源技術在中國及世界范圍的發展,為打造創新技術引擎不懈努力著。
未來,浪潮云海在不斷推進OpenStack創新發展的同時,會努力為更多新興業務提供安全可靠的云基礎設施,為構筑云數智融合的智算底座不懈努力。