李躍鵬 張海明 張麗麗 黎建輝③
(*中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心 北京 100190)
(**中國科學(xué)院大學(xué) 北京 100049)
開放科學(xué)是一個(gè)涵蓋開放數(shù)據(jù)、開放實(shí)驗(yàn)室、開放基礎(chǔ)設(shè)施、開放教育、開放眾籌以及開放獲取等眾多實(shí)踐活動的包容性框架,其核心內(nèi)容之一是通過充分利用先進(jìn)網(wǎng)絡(luò)、云計(jì)算與高性能計(jì)算、大數(shù)據(jù)與人工智能等新型技術(shù)構(gòu)建開放科學(xué)云平臺,進(jìn)而加速科學(xué)發(fā)現(xiàn)與技術(shù)創(chuàng)新的進(jìn)程[1]。本文中開放科學(xué)云平臺主要指科學(xué)領(lǐng)域計(jì)算資源與數(shù)據(jù)資源共享系統(tǒng),其中計(jì)算資源指中央處理器(central processing unit,CPU)、內(nèi)存與網(wǎng)絡(luò)等計(jì)算基礎(chǔ)設(shè)施,數(shù)據(jù)資源指學(xué)術(shù)文獻(xiàn)、模型參數(shù)以及實(shí)驗(yàn)觀測等科學(xué)數(shù)據(jù)。
目前全球建設(shè)了中國科技云(China Science and Technology Cloud,CSTCloud)、歐洲開放科學(xué)云(European Open Science Cloud,EOSC)、非洲開放科學(xué)平臺(African Open Science Platform,AOSP)等開放科學(xué)云平臺以推動開放科學(xué)研究模式的普及與應(yīng)用[2],然而CSTCloud、EOSC 以及AOSP 等平臺間相互獨(dú)立,無法支撐全球科技合作以解決諸如新冠肺炎、碳中和、自然災(zāi)害等全球性問題與挑戰(zhàn)。因此2019 年,中國科技云在國際數(shù)據(jù)委員會(Committee on Data for Science and Technology,CODATA)會議上提出了構(gòu)建“全球開放科學(xué)云”(Global Open Science Cloud,GOSC)倡議,以期實(shí)現(xiàn)不同領(lǐng)域、機(jī)構(gòu)、國家和區(qū)域開放科學(xué)云平臺的互聯(lián)共享[3]。2021年,聯(lián)合國教科文組織(United Nations Educational,Scientific and Cultural Organization,UNESCO)大會指出未來開放科學(xué)云平臺必需實(shí)現(xiàn)國際互聯(lián)與高度互操作,從而避免科技資源碎片化,縮小國家之間和國家內(nèi)部的數(shù)字、技術(shù)和知識鴻溝[4]。
在此背景下,本文結(jié)合開放科學(xué)場景中的資源共享模式需求,研究了開放科學(xué)云聯(lián)邦系統(tǒng)架構(gòu)設(shè)計(jì)相關(guān)問題,旨在為國內(nèi)以及國際開放科學(xué)合作項(xiàng)目的系統(tǒng)建設(shè)提供技術(shù)參考。本文中開放科學(xué)云聯(lián)邦指開放科學(xué)云平臺間互聯(lián)與互操作的中間件系統(tǒng),能夠使全球開放科學(xué)云平臺加入云聯(lián)邦進(jìn)行科學(xué)資源共享,為科研人員提供高效可靠的聯(lián)邦云服務(wù)。
目前針對云平臺互操作與資源共享場景,學(xué)術(shù)界與工業(yè)界提出了多云[5]、混合云[6]、云聯(lián)邦[7]、InterCloud[8]、Sky Computing[9]、跨云[10]、云際計(jì)算[11]等多種概念模型。例如“多云”系統(tǒng)管理并監(jiān)控多個(gè)云平臺(通常指共有云)資源及運(yùn)行狀態(tài),選擇不同云平臺部署運(yùn)行應(yīng)用業(yè)務(wù),從而使用戶避免平臺鎖定并獲得最大效費(fèi)比;“混合云”系統(tǒng)是一種“多云”系統(tǒng)特例,根據(jù)系統(tǒng)運(yùn)行狀態(tài)實(shí)時(shí)調(diào)度應(yīng)用工作負(fù)載在公有云與私有云間動態(tài)遷移部署;“云聯(lián)邦”系統(tǒng)要求滿足標(biāo)準(zhǔn)規(guī)范的云平臺以自治方式動態(tài)加入云聯(lián)邦,通過監(jiān)控云平臺運(yùn)行狀態(tài)、管理云平臺元數(shù)據(jù)信息為應(yīng)用提供資源發(fā)現(xiàn)、監(jiān)控計(jì)費(fèi)以及身份認(rèn)證等功能服務(wù)。
可以看出不同概念模型存在重疊的定義與功能特性[12],因此為了減少論文歧義,本文中“云聯(lián)邦”一詞并不特指具體的概念模型與企業(yè)產(chǎn)品,而是代表云平臺資源共享、互操作以及服務(wù)集成等應(yīng)用場景。本文對云聯(lián)邦系統(tǒng)概念的理解如下:云聯(lián)邦系統(tǒng)是一種用于多源異構(gòu)云平臺協(xié)作的中間件系統(tǒng),能夠使得云平臺與應(yīng)用互聯(lián)組成云網(wǎng)絡(luò),應(yīng)用可在云網(wǎng)絡(luò)節(jié)點(diǎn)上編排運(yùn)行業(yè)務(wù)負(fù)載,利用云網(wǎng)絡(luò)資源(通信、計(jì)算、數(shù)據(jù)等)解決單一云平臺的效費(fèi)比、平臺鎖定與擴(kuò)展性等問題。
影響云聯(lián)邦系統(tǒng)功能、規(guī)模與性能的因素主要包括資源類型、部署模型以及工作模式3 種,其中資源類型指云聯(lián)邦系統(tǒng)為用戶提供的基礎(chǔ)設(shè)施服務(wù)(infrastructure as a service,IaaS)、平臺服務(wù)(platform as a service,PaaS)以及軟件服務(wù)(software as a service,SaaS)等聯(lián)邦云服務(wù)類型;部署模型指云聯(lián)邦系統(tǒng)中間件實(shí)例在不同應(yīng)用場景中的集中式、分布式與點(diǎn)對點(diǎn)式部署方法。
云聯(lián)邦工作模式云平臺、云聯(lián)邦中間件以及應(yīng)用之間的資源共享關(guān)系與協(xié)作交互方式,主要包括代理模式與中介模式2 種類型。如圖1(a)所示,代理模式云聯(lián)邦系統(tǒng)中間件作為云網(wǎng)絡(luò)的總控(Master)整合內(nèi)部云平臺(Slave)資源,為應(yīng)用提供統(tǒng)一的集成IaaS、PaaS 以及SaaS 云服務(wù)??偪毓芾韱T需配置Slave 節(jié)點(diǎn)的云服務(wù)接口地址、身份證書等信息,Master 節(jié)點(diǎn)對Slave 節(jié)點(diǎn)的云計(jì)算資源進(jìn)行統(tǒng)一管理、監(jiān)控、集成、負(fù)載編排調(diào)度,應(yīng)用只需向Master提交計(jì)算任務(wù)或運(yùn)行部署程序包。
圖1 云聯(lián)邦系統(tǒng)工作模式
如圖1(b)所示,中介模式云聯(lián)邦系統(tǒng)中間件作為云網(wǎng)絡(luò)的協(xié)調(diào)者(Coordinator) 為云平臺節(jié)點(diǎn)(Peer)提供對等資源共享鏈接建立、監(jiān)控與執(zhí)行運(yùn)行環(huán)境。Coordinator 節(jié)點(diǎn)需管理Peer 節(jié)點(diǎn)元數(shù)據(jù)信息,監(jiān)控Peer 節(jié)點(diǎn)運(yùn)行狀態(tài),打通Peer 節(jié)點(diǎn)間的身份認(rèn)證、監(jiān)控計(jì)費(fèi)以及網(wǎng)絡(luò)通信等非業(yè)務(wù)功能障礙。Peer 節(jié)點(diǎn)與應(yīng)用需通過Coordinator 節(jié)點(diǎn)實(shí)現(xiàn)資源發(fā)現(xiàn)、集成、管理以及調(diào)度,將業(yè)務(wù)邏輯在所有Peer 節(jié)點(diǎn)上編排運(yùn)行。
表1 整理了目前學(xué)術(shù)界與工業(yè)界提出的云聯(lián)邦系統(tǒng)案例以及系統(tǒng)案例支持的資源類型、部署模型和工作模式。其中代理模式云聯(lián)邦系統(tǒng)通常適用于單位組織的數(shù)據(jù)中心資源整合場景;中介模式云聯(lián)邦系統(tǒng)通常適用于科研領(lǐng)域機(jī)構(gòu)共享合作場景。資源類型、共享目標(biāo)明確的合作模式通常由大型組織集中式或分布式部署中間件實(shí)例,為所有機(jī)構(gòu)用戶提供資源元數(shù)據(jù)信息;資源類型、共享目標(biāo)開放的合作模式通常由全球科研機(jī)構(gòu)各自部署中間件,通過點(diǎn)對點(diǎn)連接與數(shù)據(jù)同步提高系統(tǒng)擴(kuò)展性與規(guī)模。
表1 云聯(lián)邦系統(tǒng)案例
開放科學(xué)云聯(lián)邦旨在實(shí)現(xiàn)全球開放科學(xué)云平臺資源整合、集成與調(diào)度,從而為科研人員與科研合作項(xiàng)目提供統(tǒng)一的聯(lián)邦云服務(wù),其資源與云服務(wù)管理具有跨區(qū)域、大規(guī)模與自治理3 個(gè)典型特點(diǎn)。
(1)跨區(qū)域:開放科學(xué)資源分布在全球不同區(qū)域,云聯(lián)邦系統(tǒng)需通過區(qū)域間資源交換與共享協(xié)作完成科學(xué)計(jì)算任務(wù),并對云平臺的資源貢獻(xiàn)進(jìn)行計(jì)量與激勵(lì)。
(2)大規(guī)模:開放科學(xué)運(yùn)動的發(fā)展呈逐年增加趨勢,云聯(lián)邦系統(tǒng)架構(gòu)需具備高度開放性與擴(kuò)展性特點(diǎn),支持大規(guī)模云平臺通過云聯(lián)邦系統(tǒng)中間件進(jìn)行互聯(lián)與資源共享。
(3)自治理:開放科學(xué)云平臺具有個(gè)性化的資源管理策略與技術(shù),云聯(lián)邦系統(tǒng)需統(tǒng)一管理、集成與調(diào)度所有云平臺資源,使得多樣化的系統(tǒng)資源組成結(jié)構(gòu)對應(yīng)用透明。
以天文領(lǐng)域最大規(guī)模實(shí)驗(yàn)裝置——平方公里陣列(square kilometre array,SKA)射電望遠(yuǎn)鏡國際合作項(xiàng)目為例。如圖2 所示,SKA 選取澳大利亞西部沙漠和南非2 個(gè)地點(diǎn)部署觀測裝置[22],每秒產(chǎn)生的7~8 TB原始觀測數(shù)據(jù)先通過高性能中央信號處理器預(yù)處理為特征數(shù)據(jù),再以5 TB/s 的速度傳輸給全球區(qū)域數(shù)據(jù)中心持久化存儲和進(jìn)一步分析處理[23]。區(qū)域數(shù)據(jù)中心每年需要對250 PB 數(shù)據(jù)進(jìn)行存儲與處理,這些操作所需設(shè)備、系統(tǒng)架構(gòu)已經(jīng)超出了一個(gè)單位甚至一個(gè)國家所能承擔(dān)的正常工作能力,因此在相關(guān)國際組織協(xié)調(diào)下,SKA 系統(tǒng)由11 個(gè)核心國家的區(qū)域數(shù)據(jù)中心以及100 多個(gè)科研機(jī)構(gòu)協(xié)同建設(shè)完成[24]。
圖2 SKA 項(xiàng)目系統(tǒng)架構(gòu)示意圖
在SKA 系統(tǒng)架構(gòu)中,區(qū)域數(shù)據(jù)中心是統(tǒng)一管理、協(xié)調(diào)、調(diào)度區(qū)域內(nèi)的云計(jì)算資源的虛擬資源池(圖2 虛線部分展示了中國區(qū)域中心與歐洲區(qū)域中心的詳細(xì)結(jié)構(gòu)),實(shí)際資源提供者是參與SKA 項(xiàng)目的科研與企業(yè)單位云平臺。終端用戶(例如高校科研人員)通過SKA 統(tǒng)一門戶接入?yún)^(qū)域數(shù)據(jù)中心,借助區(qū)域數(shù)據(jù)中心在計(jì)算、存儲以及數(shù)據(jù)資源方面的優(yōu)勢并結(jié)合自身算法、歷史數(shù)據(jù)等,通過深入挖掘?qū)Ρ确治龅玫娇茖W(xué)發(fā)現(xiàn)成果。此外,終端用戶可將科研成果數(shù)據(jù)發(fā)布到區(qū)域數(shù)據(jù)中心被其他終端用戶參考使用。
目前代理模式與中介模式云聯(lián)邦系統(tǒng)無法完全滿足開放科學(xué)云聯(lián)邦的資源管理需求,其中代理模式雖然能夠包容地區(qū)與學(xué)科云平臺的差異性需求,實(shí)現(xiàn)云平臺統(tǒng)一集中管理,但是無法支持全球性的大規(guī)?;ヂ?lián)互通;中介模式雖然支持大規(guī)模云平臺互聯(lián),但是無法實(shí)現(xiàn)地區(qū)與學(xué)科的個(gè)性化互操作與資源管理策略。因此本文提出了對等代理模式云聯(lián)邦系統(tǒng)框架(P2P broker model based federated cloud system,PBMFCS),嘗試探索將代理模式與中介模式進(jìn)行組合,利用不同模式的優(yōu)勢實(shí)現(xiàn)全球開放科學(xué)云平臺跨區(qū)域、大規(guī)模及自治理資源管理與共享。
云聯(lián)邦系統(tǒng)中的云平臺分為物理云平臺與虛擬云平臺2 類,其中物理云平臺指物理服務(wù)器上運(yùn)行的云計(jì)算系統(tǒng),虛擬云平臺指物理云平臺資源集成管理中間件系統(tǒng)。如圖3 所示,對等代理模式云聯(lián)邦系統(tǒng)通過云聯(lián)邦代理平臺、接口網(wǎng)關(guān)與云聯(lián)邦中介平臺3 類中間件實(shí)現(xiàn)大規(guī)模云平臺互聯(lián)與資源共享。
圖3 對等代理模式云聯(lián)邦系統(tǒng)總體框架
接口網(wǎng)關(guān)與云平臺組成了云聯(lián)邦資源供應(yīng)基本單位(聯(lián)邦成員),其中云平臺將資源托管給云聯(lián)邦代理平臺,接口網(wǎng)關(guān)為資源托管過程提供接口適配與身份認(rèn)證等功能服務(wù)。云聯(lián)邦代理平臺與聯(lián)邦成員組成了云聯(lián)邦系統(tǒng)的資源共享基本單位(云聯(lián)邦代理點(diǎn)),其中云聯(lián)邦代理平臺管理聯(lián)邦成員資源,分別為聯(lián)邦成員與應(yīng)用提供代理服務(wù):(1)作為資源提供者,代理聯(lián)邦成員向其他云聯(lián)邦代理點(diǎn)供給云計(jì)算資源;(2)作為資源消費(fèi)者,代理應(yīng)用調(diào)度聯(lián)邦成員資源,為應(yīng)用提供統(tǒng)一的集成云服務(wù)。從應(yīng)用角度來看,云聯(lián)邦代理點(diǎn)屏蔽了系統(tǒng)云平臺的多源異構(gòu)性,使得云服務(wù)調(diào)用方式與單一云平臺完全相同。
云聯(lián)邦中介平臺協(xié)調(diào)云聯(lián)邦代理點(diǎn)建立對等資源共享關(guān)系,為資源共享過程提供安全可靠的中介服務(wù)。云聯(lián)邦中介平臺需提供4 類基本中介服務(wù):(1)元數(shù)據(jù)管理:維護(hù)全球代理點(diǎn)的云服務(wù)元數(shù)據(jù)信息,使代理點(diǎn)進(jìn)行資源發(fā)布、搜索與更新操作;(2)身份認(rèn)證:建立代理點(diǎn)間信任關(guān)系,使不同代理點(diǎn)能夠相互驗(yàn)證身份令牌;(3)服務(wù)計(jì)費(fèi):為跨平臺資源消費(fèi)行為提供計(jì)費(fèi)擔(dān)保服務(wù),確保計(jì)費(fèi)過程的安全性與準(zhǔn)確性;(4)合約管理:以服務(wù)合約方式確立云聯(lián)邦代理點(diǎn)間對等資源共享關(guān)系,確保合約雙方按照合約條款進(jìn)行資源共享操作。
對等代理模式云聯(lián)邦系統(tǒng)的核心邏輯是通過簽訂代理平臺一對一服務(wù)合約建立對等資源共享關(guān)系。服務(wù)合約包含代理合約與中介合約2 種類型,規(guī)定了服務(wù)接口、服務(wù)地址、服務(wù)性能以及隱私保護(hù)等條款,云計(jì)算資源共享過程即是服務(wù)合約的簽訂與執(zhí)行過程。
如圖4 所示,中介合約簽訂過程分為2 步:(1)代理平臺在中介平臺注冊賬戶信息加入云聯(lián)邦;(2)代理平臺將中介服務(wù)集成到本地資源管理適配模塊。
圖4 系統(tǒng)邏輯結(jié)構(gòu)示意圖
代理合約簽訂過程分為4 步:(1)服務(wù)提供者B在中介平臺發(fā)布合約條款;(2)服務(wù)消費(fèi)者A通過中介平臺向B發(fā)起簽訂合約申請;(3)中介平臺協(xié)調(diào)A、B滿足合約要求,記錄簽約結(jié)果;(4)服務(wù)提供者A為B平臺用戶授權(quán),消費(fèi)者B再將虛擬云平臺A加入B的聯(lián)邦成員隊(duì)列。
代理合約執(zhí)行過程分為3 步:(1)用戶調(diào)用A的集成服務(wù)接口;(2)代理平臺A根據(jù)資源調(diào)度策略調(diào)用虛擬云平臺A的合約服務(wù)接口并與本地資源集成;(3)用戶為合約執(zhí)行過程的參與者(代理平臺A、代理平臺B、中介平臺)支付合約費(fèi)用,并由中介平臺執(zhí)行賬戶自動轉(zhuǎn)賬。中介合約執(zhí)行過程分為3 步:(1)用戶調(diào)用代理平臺管理控制服務(wù)接口;(2)代理平臺視用戶請求內(nèi)容調(diào)用中介服務(wù)接口,例如代理平臺A調(diào)用元數(shù)據(jù)搜索中介服務(wù)發(fā)現(xiàn)代理平臺B中的云計(jì)算資源;(3)代理平臺賬戶根據(jù)合約條款向中介平臺相關(guān)賬戶轉(zhuǎn)賬相關(guān)費(fèi)用。
理論上部署一個(gè)全局云聯(lián)邦中介平臺與多個(gè)局部云聯(lián)邦代理平臺即可實(shí)現(xiàn)對等代理模式云聯(lián)邦系統(tǒng)的全部功能,然而為了適應(yīng)開放科學(xué)場景的跨區(qū)域、大規(guī)模與自治理資源管理需求,云聯(lián)邦系統(tǒng)需根據(jù)不同中間件特點(diǎn)制定相應(yīng)部署模式以提高系統(tǒng)規(guī)模與可靠性。如圖5 所示,云聯(lián)邦代理點(diǎn)可部署多套相同的代理平臺實(shí)例,采用負(fù)載均衡策略將用戶的集成服務(wù)請求分發(fā)給不同實(shí)例運(yùn)行,從而避免云聯(lián)邦代理平臺發(fā)生單點(diǎn)故障。
圖5 系統(tǒng)部署模式示意圖
如圖5 所示,云聯(lián)邦中介平臺可參考區(qū)塊鏈部署運(yùn)行模式,分為全節(jié)點(diǎn)、礦工節(jié)點(diǎn)與輕量級節(jié)點(diǎn)3種類型,根據(jù)配置信息加入不同中介服務(wù)P2P(peer to peer)網(wǎng)絡(luò)與其他節(jié)點(diǎn)實(shí)例共同協(xié)作提供中介服務(wù)。全節(jié)點(diǎn)具備運(yùn)行中介服務(wù)所需的全部存儲、計(jì)算、軟件及數(shù)據(jù)資源,能夠獨(dú)立提供中介服務(wù)全部功能;礦工節(jié)點(diǎn)從全節(jié)點(diǎn)中獲取中介服務(wù)子任務(wù),執(zhí)行中介服務(wù)的相關(guān)計(jì)算與存儲操作,向全節(jié)點(diǎn)上傳工作量證明從而獲得用戶支付的中介服務(wù)費(fèi)用;云聯(lián)邦代理平臺運(yùn)行輕量級節(jié)點(diǎn)實(shí)例與所有中介服務(wù)P2P 網(wǎng)絡(luò)建立通信關(guān)系,通過P2P 協(xié)議調(diào)用中介平臺提供的中介服務(wù)。
代理模式、中介模式以及對等代理模式云聯(lián)邦系統(tǒng)在云平臺規(guī)模、服務(wù)可靠性、系統(tǒng)復(fù)雜度以及系統(tǒng)易用性等方面存在明顯差異,3 種模式的特性如表2 所示。其中代理模式可通過用戶友好的聯(lián)邦云服務(wù)管理異構(gòu)云平臺資源,并且由于云聯(lián)邦中間件與云平臺屬于同一機(jī)構(gòu)管轄范圍,系統(tǒng)結(jié)構(gòu)復(fù)雜度較低,容易進(jìn)行系統(tǒng)升級維護(hù)。然而云聯(lián)邦中間件采用集中式部署模型,服務(wù)可靠性較低,通常應(yīng)用于機(jī)構(gòu)或區(qū)域內(nèi)的小規(guī)模云平臺資源共享場景。
表2 云聯(lián)邦系統(tǒng)架構(gòu)模式特性
中介模式能夠?yàn)榇笠?guī)模云平臺建立資源共享鏈接提供運(yùn)行環(huán)境,然而云平臺與云聯(lián)邦中間件通過松耦合方式互聯(lián),系統(tǒng)結(jié)構(gòu)復(fù)雜度較高,服務(wù)可靠性較低,一旦云聯(lián)邦中間件發(fā)生故障將中斷所有資源共享鏈接。除此之外,中介模式系統(tǒng)易用性較差,用戶需實(shí)現(xiàn)跨云平臺資源管理、集成與調(diào)度功能。
對等代理模式繼承了代理模式的系統(tǒng)易用性優(yōu)點(diǎn)與中介模式的高復(fù)雜度缺點(diǎn),然而由于云聯(lián)邦中間件在系統(tǒng)角色與功能方面進(jìn)行了分層,相對于單一的代理與中介系統(tǒng)架構(gòu)模式,對等代理模式云聯(lián)邦系統(tǒng)的云平臺規(guī)模與服務(wù)可靠性具有以下一定程度的優(yōu)勢。
(1)云平臺規(guī)模:對等代理模式云聯(lián)邦系統(tǒng)能夠在代理層與中介層分別進(jìn)行中間件節(jié)點(diǎn)動態(tài)擴(kuò)展,如果單一代理與中介模式系統(tǒng)能夠支持N個(gè)云平臺,那么對等代理系統(tǒng)可對N個(gè)代理進(jìn)行互聯(lián)與集成管理,因此云聯(lián)邦系統(tǒng)能夠管理的云平臺規(guī)模更大。
(2)服務(wù)可靠性:對等代理模式云聯(lián)邦系統(tǒng)通過P2P 網(wǎng)絡(luò)為代理節(jié)點(diǎn)建立資源共享鏈接提供可靠的中介服務(wù),因此代理節(jié)點(diǎn)失效只會影響與其建立鏈接的代理節(jié)點(diǎn),并且相關(guān)代理可以將失效節(jié)點(diǎn)的應(yīng)用負(fù)載遷移到本地執(zhí)行,從而提高了聯(lián)邦云服務(wù)的可靠性。
除此之外,對等代理模式中的代理節(jié)點(diǎn)可通過個(gè)性化資源管理策略集成管理區(qū)域或機(jī)構(gòu)的開放科學(xué)資源,并通過可靠的中介P2P 網(wǎng)絡(luò)實(shí)現(xiàn)全球各區(qū)域間資源共享,能夠更好地符合開放科學(xué)場景的跨平臺、大規(guī)模與自治理資源管理特點(diǎn),為全球科研合作提供支撐環(huán)境。
對等代理模式云聯(lián)邦系統(tǒng)的主要特點(diǎn)是通過代理與中介模塊多層互聯(lián)與共享機(jī)制管理、調(diào)度跨區(qū)域云平臺資源。在實(shí)現(xiàn)過程中系統(tǒng)需要解決的關(guān)鍵工程與技術(shù)問題可歸納為3 類:聯(lián)邦云平臺互聯(lián)、聯(lián)邦云服務(wù)集成以及聯(lián)邦云服務(wù)應(yīng)用。
聯(lián)邦云平臺互聯(lián):在提供聯(lián)邦云服務(wù)前,云平臺需通過聯(lián)邦云平臺互聯(lián)機(jī)制建立資源共享鏈接,云平臺互聯(lián)機(jī)制分為2 個(gè)層面。(1)資源管理控制:開放科學(xué)云平臺屬于獨(dú)立的資源管理域,代理與中介云聯(lián)邦中間件需實(shí)現(xiàn)管理域間鏈?zhǔn)皆獢?shù)據(jù)管理[25]、身份認(rèn)證[26]與監(jiān)控計(jì)費(fèi)[27]等資源管理控制操作;(2)資源共享:為了構(gòu)建可持續(xù)的云平臺資源共享生態(tài),開放科學(xué)云聯(lián)邦系統(tǒng)需設(shè)計(jì)完善的服務(wù)合約管理、服務(wù)合約運(yùn)行、服務(wù)計(jì)量與服務(wù)激勵(lì)機(jī)制,促使全球云平臺加入云聯(lián)邦建立資源共享關(guān)系。
聯(lián)邦云服務(wù)集成:在提供聯(lián)邦云服務(wù)時(shí),聯(lián)邦云服務(wù)接口調(diào)用需解析為異構(gòu)云平臺操作組成的聯(lián)邦云服務(wù)集成計(jì)劃,該過程主要包括資源供給選擇、異構(gòu)云服務(wù)接口適配以及資源傳輸3 個(gè)基本操作。(1)資源供給選擇:對等代理資源共享網(wǎng)絡(luò)中存在多條資源供給路徑,聯(lián)邦云服務(wù)集成系統(tǒng)可借鑒商業(yè)供應(yīng)鏈思想對資源共享網(wǎng)絡(luò)建模,利用最小費(fèi)用、最大流等網(wǎng)絡(luò)流優(yōu)化策略為聯(lián)邦云服務(wù)動態(tài)選擇合理的資源供給云平臺;(2)異構(gòu)云服務(wù)接口適配:代理中間件需按照開放云計(jì)算接口(open cloud computing interface,OCCI)、云數(shù)據(jù)管理接口(cloud data management interface,CDMI)等中間云服務(wù)模型[28]統(tǒng)一管理聯(lián)邦云服務(wù)元數(shù)據(jù),建立異構(gòu)云平臺與中間云服務(wù)服務(wù)模型的適配映射關(guān)系,為用戶提供統(tǒng)一的聯(lián)邦云服務(wù)接口;(3)資源傳輸:聯(lián)邦云服務(wù)需在異構(gòu)云平臺間進(jìn)行資源交換傳輸,通過標(biāo)準(zhǔn)規(guī)范格式文件OVF、AMI、VHD 以及JSON 等持久化鏡像、數(shù)據(jù)、虛擬機(jī)、容器等資源對象,并將資源對象傳輸?shù)侥繕?biāo)云平臺并同步資源對象的運(yùn)行時(shí)狀態(tài)[29]。
聯(lián)邦云服務(wù)應(yīng)用:在科學(xué)研究過程中,云聯(lián)邦系統(tǒng)需為科研人員提供3 類主要的輔助功能:(1)聯(lián)邦云服務(wù)搜索:通過分類搜索、全文語義搜索、本體推理以及資源匹配等個(gè)性化云服務(wù)搜索操作從大規(guī)模計(jì)算、數(shù)據(jù)、文獻(xiàn)等多樣化科學(xué)資源集合中發(fā)現(xiàn)滿足需求的聯(lián)邦云服務(wù);(2)聯(lián)邦計(jì)算框架:通過數(shù)據(jù)流水線、大數(shù)據(jù)處理、聯(lián)邦計(jì)算以及分布式計(jì)算等平臺服務(wù)(PaaS)使科研人員利用多樣化計(jì)算與數(shù)據(jù)資源進(jìn)行各類科學(xué)計(jì)算任務(wù);(3)科研工作空間:通過可視化科研工作空間完成文獻(xiàn)閱讀、數(shù)據(jù)獲取、數(shù)據(jù)分析、成果發(fā)表以及數(shù)據(jù)再分析等開放科學(xué)研究閉環(huán)生命周期過程。
2021 年1 月中國科技云(CSTCloud)與歐洲開放科學(xué)云(EOSC)合作成立了“全球開放科學(xué)云”(GOSC)項(xiàng)目,本文基于GOSC 項(xiàng)目需求實(shí)現(xiàn)了一個(gè)對等代理模式開放科學(xué)云聯(lián)邦原型系統(tǒng),通過集成EOSC 與CSTCloud 云平臺資源為科研用戶提供IaaS層聯(lián)邦云服務(wù),在一定程度上驗(yàn)證了本文設(shè)計(jì)框架的可行性與有效性。
云聯(lián)邦原型系統(tǒng)總體結(jié)構(gòu)如圖6 所示,EOSC作為云聯(lián)邦中介平臺通過GOCDB[30]、ARGOeu[31]與EGI Check-In[32]3 個(gè)子系統(tǒng)的中介服務(wù)協(xié)調(diào)云平臺間的資源共享行為。其中GOCDB 管理用戶、角色權(quán)限、地區(qū)、國家、科研機(jī)構(gòu)以及云平臺等對象元數(shù)據(jù)信息描述;ARGOeu 實(shí)時(shí)監(jiān)控GOCDB 中注冊的云平臺,并對云平臺異常狀態(tài)進(jìn)行預(yù)警;EGI Check-In 將科技云網(wǎng)通行證、GitHub 以及LinkedIn 等身份認(rèn)證系統(tǒng)的身份標(biāo)識統(tǒng)一轉(zhuǎn)換為EGI 身份認(rèn)證令牌,通過與云平臺適配集成實(shí)現(xiàn)統(tǒng)一身份認(rèn)證。
圖6 云聯(lián)邦原型系統(tǒng)總體結(jié)構(gòu)
CSTCloud 作為云聯(lián)邦代理平臺通過服務(wù)處理器、域控制器、資源傳輸器及WEB 可視化操作系統(tǒng)4 個(gè)主要模塊實(shí)現(xiàn)異構(gòu)云平臺資源集成管理(如圖7 所示)。
圖7 CSTCloud 代理平臺實(shí)現(xiàn)方案
域控制器使用輕型目錄訪問協(xié)議(lightweight directory access protocol,LDAP)對管理域?qū)ο笮畔⑦M(jìn)行增刪改查基本操作;通過Prometheus[33]平臺與Exporter 采集器監(jiān)控云平臺運(yùn)行狀態(tài)與用戶行為;使用OpenID Connect[34]框架集成科技云通行證、EGI Check-In 等第三方身份認(rèn)證系統(tǒng);通過Activity[35]工作流引擎調(diào)度執(zhí)行云平臺申請、測試、驗(yàn)收及發(fā)布等標(biāo)準(zhǔn)化認(rèn)證流程。
資源傳輸器通過OpenVPN 服務(wù)器連接云平臺宿主機(jī)VSwitch 虛擬機(jī)網(wǎng)卡,統(tǒng)一管理VPN 網(wǎng)絡(luò)IP地址分配映射與數(shù)據(jù)轉(zhuǎn)發(fā)策略;使用Ceph[36]分布式對象存儲系統(tǒng)作為鏡像數(shù)據(jù)中轉(zhuǎn)站,在Rabbit-MQ[37]消息隊(duì)列的協(xié)調(diào)下實(shí)現(xiàn)云平臺虛擬機(jī)鏡像文件傳輸、遷移以及備份操作。
服務(wù)處理器中Schema 管理器管理虛擬機(jī)實(shí)例元數(shù)據(jù)信息以及映射關(guān)系;請求處理器接收用戶的虛擬機(jī)創(chuàng)建、刪除以及查詢等操作請求,并將請求解析為云平臺操作執(zhí)行計(jì)劃;請求執(zhí)行引擎根據(jù)請求執(zhí)行計(jì)劃發(fā)送指令給云平臺適配器與資源傳輸器,最終調(diào)用OpenStack、VMware 以及Evcloud 這3 類異構(gòu)云平臺服務(wù)接口為用戶提供IaaS 層聯(lián)邦云服務(wù)。
WEB 可視化操作系統(tǒng)采用VUE+WEBPACK前后端分離架構(gòu),為用戶使用云聯(lián)邦代理點(diǎn)域控制器、服務(wù)處理器以及資源傳輸器功能接口提供可視化操作界面,用戶、系統(tǒng)管理員與云平臺管理員可登錄系統(tǒng),在WEB 界面上進(jìn)行虛擬機(jī)管理與云平臺接入認(rèn)證等可視化操作。
本文在GOCDB 中認(rèn)證注冊了CSTCloud 代理平臺信息,并通過EGI 適配器實(shí)現(xiàn)了EOSC 中介平臺身份認(rèn)證與監(jiān)控接口規(guī)范從而使CSTCloud 代理平臺與EOSC 中介平臺進(jìn)行對接。因此EOSC 用戶可以通過EOSC 中介平臺發(fā)現(xiàn)并使用CSTCloud 代理平臺的聯(lián)邦I(lǐng)aaS 云服務(wù);同時(shí)CSTCloud 代理平臺可以將EOSC 中注冊的云平臺信息動態(tài)導(dǎo)入代理點(diǎn),為CSTCloud 用戶提供虛擬機(jī)資源聯(lián)邦云服務(wù)。
為了發(fā)掘全球開放科學(xué)云平臺的應(yīng)用價(jià)值,加速系統(tǒng)研發(fā)進(jìn)程,目前CSTCloud、EOSC 以及CODATA 的相關(guān)科研人員在“全球開放科學(xué)云”原型系統(tǒng)上開展了非相干散射雷達(dá)數(shù)據(jù)融合與計(jì)算(3D 雷達(dá))、氣候變化與自然災(zāi)害(SDG-13)、高度模糊驅(qū)動生物分子對接(HADDOCK)等多項(xiàng)國際合作應(yīng)用示范工作。然而由于開放科學(xué)云聯(lián)邦系統(tǒng)是一個(gè)復(fù)雜且不斷演進(jìn)的系統(tǒng)工程,本文實(shí)現(xiàn)的原型系統(tǒng)在規(guī)模與功能方面仍存在一定不足,后續(xù)項(xiàng)目實(shí)施推進(jìn)過程還需實(shí)現(xiàn)全球科研機(jī)構(gòu)共治的P2P 中介服務(wù)網(wǎng)絡(luò),同時(shí)在全球范圍內(nèi)部署多個(gè)云聯(lián)邦代理點(diǎn)實(shí)例,形成大規(guī)模的云聯(lián)邦代理點(diǎn)對等共享網(wǎng)絡(luò),從而促進(jìn)開放科學(xué)資源的廣泛傳播與共享。
開放科學(xué)運(yùn)動的飛速發(fā)展要求開放科學(xué)云平臺間資源共享以支持科研人員日?;顒优c國際大科學(xué)合作,本文提出了一種對等代理模式的開放科學(xué)云聯(lián)邦系統(tǒng)框架,相對于單一代理模式與中介模式云聯(lián)邦系統(tǒng),能夠更好地符合開放科學(xué)場景中的跨區(qū)域、大規(guī)模與自治理資源管理特點(diǎn)。在此基礎(chǔ)上設(shè)計(jì)并實(shí)現(xiàn)了云聯(lián)邦原型系統(tǒng),集成CSTCloud 與EOSC 云平臺資源為科研用戶提供IaaS 層聯(lián)邦云服務(wù),初步驗(yàn)證了對等代理模式云聯(lián)邦系統(tǒng)框架的可行性與有效性,為“中國科技云”建設(shè)以及“全球開放科學(xué)云”項(xiàng)目實(shí)施提供了技術(shù)參考。
由于對等代理模式開放科學(xué)云聯(lián)邦系統(tǒng)是一個(gè)復(fù)雜且不斷演進(jìn)的系統(tǒng)工程,本文研究工作在系統(tǒng)工程實(shí)現(xiàn)與系統(tǒng)性能優(yōu)化方面仍存在一定局限性,后續(xù)工作將在資源共享標(biāo)準(zhǔn)化協(xié)議、多級代理結(jié)構(gòu)云服務(wù)供給、服務(wù)消費(fèi)者與提供者多對多自適應(yīng)訪問、開放科學(xué)資源共享激勵(lì)機(jī)制以及數(shù)據(jù)安全隱私保護(hù)策略等方面做進(jìn)一步探索研究。