高性能存儲(chǔ)安全訪問(wèn)的挑戰(zhàn)

在討論安全問(wèn)題前,可能還要先牽扯算力集群和存儲(chǔ)的網(wǎng)絡(luò)方案。

眾所周知,Nvidia 在 AI 數(shù)據(jù)中心推崇兩個(gè)概念,一個(gè)是 AI Factory,另一個(gè)是 AI Cloud,前者類(lèi)似于超級(jí)計(jì)算機(jī)的概念,適合單應(yīng)用場(chǎng)景并推薦 Infiniband 組網(wǎng)方案,后者面臨多租戶和多樣化的計(jì)算任務(wù),因此推薦以太網(wǎng)方案。在這個(gè)分類(lèi)下,我們會(huì)將以上存儲(chǔ)安全訪問(wèn)問(wèn)題縮小到更廣泛 AI Cloud 場(chǎng)景上,因?yàn)檫@類(lèi)場(chǎng)景相比而言,更急迫的需要解決。 
特別是,在當(dāng)下 GPU 芯片昂貴成本下,即使在非 GPU 虛擬化場(chǎng)景,算力共享和靈活調(diào)度都是降低 AI 任務(wù)成本的重要手段,但算力平臺(tái)如何向用戶提供安全的數(shù)據(jù)訪問(wèn)和隔離手段是其中的重中之重。因此,AI 算力集群需要在足夠性能下解決控制面和數(shù)據(jù)面的安全訪問(wèn)挑戰(zhàn):

 DPU 作為存儲(chǔ)訪問(wèn)的信任代理

在以太網(wǎng)組網(wǎng)的 AI Cloud 場(chǎng)景下,Nvidia 提出了引入 DPU 方案來(lái)解決上述問(wèn)題,通過(guò) DPU 提供的代理訪問(wèn)來(lái)隔離非信任的主機(jī)和可信基礎(chǔ)設(shè)施,確保 AI Cloud 的數(shù)據(jù)安全。

DPU 是一種專(zhuān)用硬件加速器,通常包含 CPU、內(nèi)存和網(wǎng)絡(luò)接口,能夠在不增加主機(jī)側(cè)處理器負(fù)擔(dān)的情況下,執(zhí)行數(shù)據(jù)處理任務(wù),包括 Nvidia、Intel、AMD、Marvell 在內(nèi)的芯片廠商都推出了 DPU 產(chǎn)品。DPU 在安全性上通??梢詭?lái)幾個(gè)好處:

值得一提的是:在 Nvidia 發(fā)布的《下一代 AI 的新一代網(wǎng)絡(luò)》白皮書(shū)中,提到在 400/800Gb 的網(wǎng)絡(luò)中,即使無(wú)損網(wǎng)絡(luò)環(huán)境中,都很難避免在 AI 的突發(fā)流量中性能不受影響。因此在以太網(wǎng)路線上,業(yè)界會(huì)期望借助于 DPU 算力來(lái)實(shí)現(xiàn) RDMA 的擁塞控制,而不是依賴交換機(jī)或者 ECN 機(jī)制。因此 DPU 可能會(huì)是超高以太網(wǎng)網(wǎng)絡(luò)的必需。

回到計(jì)算節(jié)點(diǎn)的 GPU 應(yīng)用對(duì)于文件存儲(chǔ)訪問(wèn)這個(gè)問(wèn)題,存儲(chǔ)客戶端目前主要有兩種選擇:

而引入 DPU 來(lái)實(shí)現(xiàn)安全訪問(wèn),可以利用業(yè)界已有的虛擬化場(chǎng)景的文件協(xié)議實(shí)現(xiàn) virtio-fs,virtio-fs 已經(jīng)有長(zhǎng)達(dá)十年的發(fā)展歷程,它可以在這里提供從 Host 到 DPU 的文件代理通道,使得文件存儲(chǔ)客戶端可以完全運(yùn)行于 DPU 操作系統(tǒng)。這樣的變化,可以用下圖來(lái)更清晰展示,其中紅色的訪問(wèn)路徑表示不安全的,綠色表示通過(guò) DPU 的代理訪問(wèn):

 零拷貝問(wèn)題

從技術(shù)角度來(lái)講,引入額外的 DPU 來(lái)實(shí)現(xiàn)文件存儲(chǔ)訪問(wèn)肯定帶來(lái)額外開(kāi)銷(xiāo),具體來(lái)說(shuō)有這兩個(gè)問(wèn)題:

在這里,Nvidia 正式提出了 DPU Secure Storage Zero Copy 項(xiàng)目,通過(guò)引入 Cross-function mkey(RDMA mkey) 允許 DPU 使用來(lái)自 Host 地址空間的地址,減少了從 Host 到 DPU 的拷貝。整個(gè)數(shù)據(jù)傳輸仍由 DPU 中的服務(wù)來(lái)實(shí)現(xiàn),只有受信任的 DPU 服務(wù)才能訪問(wèn) Cross-function mkey,實(shí)際上就是由存儲(chǔ)客戶端來(lái)維護(hù),整個(gè) IO 過(guò)程都不會(huì)將存儲(chǔ)后端暴露給 Host,確保潛在的安全風(fēng)險(xiǎn)最小化。進(jìn)一步來(lái)說(shuō),Host 的內(nèi)存可以被用來(lái)做文件數(shù)據(jù)緩存,無(wú)需受 DPU 引入的影響,也避免了 Double Buffer 問(wèn)題:

 DOCA SNAP virtio-fs

DPU Secure Storage Zero Copy 會(huì)通過(guò) DOCA virtfs-fs SDK 來(lái)交付,過(guò)去 DOCA 已經(jīng)提供了 SNAP NVME 能力,即可以通過(guò) DPU 來(lái)實(shí)現(xiàn) NVMe over Fabric 的卸載,DOCA SNAP virtfs 會(huì)成為新的文件存儲(chǔ)訪問(wèn)卸載能力。

DPU 中的 VirtioFS 服務(wù)會(huì)基于 SPDK(https://spdk.io/) 開(kāi)發(fā),提供面向不同的文件存儲(chǔ)供應(yīng)商實(shí)現(xiàn)統(tǒng)一的抽象,運(yùn)行在 DPU 中,面向 Host 的 virtio-fs 內(nèi)核驅(qū)動(dòng)承接請(qǐng)求,并為不同供應(yīng)商的文件存儲(chǔ)客戶端根據(jù)需要去執(zhí)行對(duì)應(yīng)請(qǐng)求,未來(lái)文件存儲(chǔ)供應(yīng)商可以通過(guò)以下方式對(duì)接:

目前 DPU Secure Storage 項(xiàng)目也需要得到文件存儲(chǔ)廠商和 Linux Upstream 的支持,文件存儲(chǔ)廠商需要盡快考慮將存儲(chǔ)客戶端遷移到合適的 DPU 運(yùn)行環(huán)境,并作為 SPDK virtio-fs 的后端,為了實(shí)現(xiàn)零拷貝,需要能夠支持利用 SPDK 的 memory domain API 來(lái)獲得 mkey 對(duì)應(yīng)的 Host 內(nèi)存空間。而為了在 Host OS 上需要進(jìn)一步加強(qiáng) virtio-fs 的性能,比如實(shí)現(xiàn)多隊(duì)列能力,支持 GPU 內(nèi)存等。

 XSKY 參與情況

對(duì)于國(guó)內(nèi)領(lǐng)先的分布式存儲(chǔ)廠商來(lái)說(shuō),我們同樣認(rèn)為,不僅是 Nvidia BlueField 系列產(chǎn)品可以提供這樣的方式,這樣的需求應(yīng)該可以在普遍的 DPU 產(chǎn)品中實(shí)現(xiàn)并被利用,有效的提高 DPU 在存儲(chǔ)協(xié)議上的多樣化支持,并帶來(lái)共享文件存儲(chǔ)的安全性所需。

我們也會(huì)盡快評(píng)估在基于新一代全共享架構(gòu)(XSEA)的全閃存文件存儲(chǔ),提供面向 AI Cloud 場(chǎng)景的 DPU 訪問(wèn)客戶端能力,擁抱快速變化的 AI 基礎(chǔ)設(shè)施進(jìn)化。在多樣化的 GPU 存儲(chǔ)類(lèi)型的利用上,不管是塊存儲(chǔ)的 NVMe 卷作為節(jié)點(diǎn)內(nèi)的高速緩存,還是共享文件存儲(chǔ)作為 CPU/GPU 內(nèi)存的全局緩存存儲(chǔ),最終通過(guò)基于對(duì)象存儲(chǔ)的數(shù)據(jù)湖來(lái)統(tǒng)一治理,這些存儲(chǔ)類(lèi)型的需求和定位都跟 XSKY 的產(chǎn)品定位和路線圖高度符合。

分享到

崔歡歡

相關(guān)推薦