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