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