• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于圖模型的云平臺應用部署技術(shù)研究

      2017-09-11 09:16:30鄭偉平劉健敏
      關(guān)鍵詞:部署工具節(jié)點

      鄭偉平, 劉健敏

      (華南師范大學計算機學院,廣州 510631)

      基于圖模型的云平臺應用部署技術(shù)研究

      鄭偉平*, 劉健敏

      (華南師范大學計算機學院,廣州 510631)

      為了實現(xiàn)與平臺無關(guān)的應用部署,提出了一種基于“部署圖”的應用部署方案,給出一個通用云平臺應用部署體系,重點介紹了部署工具的設計與實現(xiàn)技術(shù),并實現(xiàn)了一個原型系統(tǒng),結(jié)合部署實例證明所提部署方案是可行的且具有平臺無關(guān)、可視化和可復用等優(yōu)點.

      云平臺; 應用部署; 部署圖; 平臺無關(guān); 子圖同構(gòu)

      目前,云平臺被廣泛使用,應用系統(tǒng)面對的部署環(huán)境更加復雜[1]. 應用部署是云平臺核心功能,云平臺提供商通常都提供平臺專屬的部署工具(如命令行、網(wǎng)頁控制臺、API等). 例如,亞馬遜提供了AWS Cloud Formation、OpsWorks、CodePipeline和CodeDeploy等一系列部署工具、服務與系統(tǒng);OpenStack有dodai-deploy、Devstack以及Fuel等多種部署工具. 這些工具和接口與特定平臺相關(guān),缺乏普遍適用性,部署時需要針對不同云平臺進行重復配置和部署,效率較低,且容易出錯. PaaS云平臺不單提供了部署工具,還限定了平臺語言、服務、庫以及相關(guān)的部署流程與模型[1]. 考慮到PaaS平臺部署模型的不同及其在平臺遷移、學習成本和跨平臺部署等方面存在的問題,劉歡歡等[2]對亞馬遜、Google和微軟等PaaS平臺進行總結(jié),建立了PaaS平臺部署環(huán)境元模型,提出了一種元模型驅(qū)動的部署方法;SIMBAD團隊[3]開發(fā)的m-COAPS實現(xiàn)了面向異構(gòu)PaaS平臺的通用資源描述與操作接口,目前已經(jīng)對接了OpenShift、Amazon Elastic BeansTalk和Cloud Foundry等PaaS平臺;HOSSNY等[4]對COAPS進行擴展,使其支持GAE平臺. 針對云資源異構(gòu)問題,YONGSIRIWIT等[5]提出了一種使用TOSCA、OCCI以及CIMI等資源描述標準來構(gòu)建云資源的通用語義知識庫的語義框架,實現(xiàn)對異構(gòu)云資源描述的無縫轉(zhuǎn)化;NGUYEN等[6]基于面向?qū)ο蠓椒ㄔ谠破脚_之上構(gòu)建一個抽象層,以屏蔽云平臺的底層細節(jié),提高了云平臺應用開發(fā)與部署的通用性;BRANDTZ?G等[7]使用構(gòu)件和領(lǐng)域特定語言方法,提出了一種描述語言Pim4Cloud,實現(xiàn)IaaS平臺和PaaS平臺上應用軟件的部署建模.

      與文獻[2-4,6,8]的研究(主要面向PaaS平臺)不同,本文研究IaaS云平臺的通用應用部署技術(shù),以圖模型為抽象語法,提出了一種云平臺應用部署描述工具——部署圖(Deploy Graph),闡述了基于部署圖的應用部署體系,并且實現(xiàn)了一個作為部署工具的云應用部署管理平臺. 文中還介紹了混合部署與增量部署技術(shù),展示了圖模型在應用部署上的靈活性與可擴展性.

      1 基于部署圖的云平臺應用部署體系

      為了實現(xiàn)與平臺無關(guān)的應用部署,必須對部署描述加以抽象,使其具備通用性. 本文以圖模型作為抽象語法,提出了用于描述部署任務的“部署圖”概念.

      定義1 部署圖是六元組DG=(N,E,NT,ET,C,P),其中N是有限個節(jié)點的非空集合;E?N×N是有向邊的集合;節(jié)點類型集合NodeType={SG,VM,DU,CN},其中SG表示安全組,VM表示虛擬機器,DU表示可部署單元,CN表示復合節(jié)點. NT:N→NodeType是節(jié)點類型函數(shù);邊類型集合EdgeType={hoston,dependon,accesson},其中hoston表示托管、部署或安裝關(guān)系,dependon表示依賴關(guān)系,accesson表示通信關(guān)系,ET:E→EdgeType是邊類型函數(shù);C:EdgeType→NodeType×NodeType是邊類型約束函數(shù),對各種類型的邊兩端連接的節(jié)點類型進行了約束;P:N∪E→KEY×VALUE是從節(jié)點或邊到(key,value)對集合的映射函數(shù),表示節(jié)點或邊的相關(guān)屬性.

      關(guān)于定義1,有幾點需要說明:

      (1)定義1給出了節(jié)點類型集合、邊類型集合的最小集,實際使用時應根據(jù)資源種類、范圍以及云平臺所支持的技術(shù)屬性,對NodeType、EdgeType、KEY和VALUE等集合做進一步的界定和擴展.

      (2)安全組SG用于設定VM節(jié)點之間的訪問規(guī)則(主要是訪問可達性);虛擬機器VM是物理機器在云平臺上的映射,其基本屬性包括CPU、內(nèi)存、存儲、網(wǎng)絡和虛擬機鏡像等,屬于部署環(huán)境描述的“硬件”部分;可部署單元DU是應用系統(tǒng)的“軟件”模塊,或者是軟件棧的其他組成成分(如數(shù)據(jù)庫、JVM等);復合節(jié)點CN是一種特殊節(jié)點,其本質(zhì)是一個部署子圖,但在圖中表示為一個節(jié)點,用于描述事先裝好軟件棧的機器節(jié)點,其虛擬機鏡像屬性應指向事先制作好的虛擬器件文件. 復合節(jié)點提供了部署描述粒度與部署管理的靈活性.

      (3)邊類型hoston強調(diào)2個節(jié)點間的位置約束關(guān)系,即必須部署在同一虛擬機器上;dependon表示部署安裝的先后次序;accesson表示訪問可達性的約束. 總的來說,邊類型蘊含了位置約束、組件調(diào)用以及安裝次序等重要的部署語義信息.

      (4)為了表達更豐富的部署語義,部署圖還為邊與節(jié)點設置了屬性信息. 屬性的KEY、VALUE信息可以從配置腳本、使用說明書和開發(fā)手冊等資料中學習和提取.

      下面從部署模型、工具支持和部署流程等3個方面闡述基于部署圖的云平臺應用部署體系.

      1.1 部署模型

      部署模型由部署圖、部署工具、云平臺以及部署管理策略等4個要素組成. 部署圖是抽象描述工具,是通用部署的概念基礎(chǔ);部署工具實現(xiàn)了部署圖概念,是通用部署的實施基礎(chǔ);云平臺是管理對象,其部署接口是部署模型的重要組成成分;部署管理策略規(guī)約了部署模型支持的功能和特性,例如跨平臺部署、異常回滾和智能調(diào)度等,在一定程度上影響部署工具的實現(xiàn).

      1.2 工具支持

      部署圖是通用的部署語義描述工具,無法直接使用云平臺的原生部署接口. 因此需要設計一套部署工具,對部署圖進行解釋,并轉(zhuǎn)換成為適用于特定云平臺的部署代碼,實現(xiàn)通用部署功能. 本文將在第2節(jié)闡述部署工具“云應用部署管理平臺”的設計與實現(xiàn).

      1.3 部署流程

      在部署圖及其部署工具的支持下,本部署體系的部署流程(圖1)包括4個步驟:

      (1)規(guī)劃描述. 與傳統(tǒng)應用部署相同,實施部署之前必須詳盡規(guī)劃,包括確定系統(tǒng)邊界、預估資源需求、劃分部署區(qū)域、制定計劃和制作鏡像等一系列準備工作. 但不同的是,不直接使用云平臺所提供的原生部署工具或接口. 在本步驟中,部署工作人員使用部署工具制作部署圖,描述部署任務,并將部署圖文件和應用系統(tǒng)代碼一起上傳到“部署信息存儲庫”中.

      (2)解釋轉(zhuǎn)換. 在確定部署圖之后,部署引擎解釋部署圖,檢查部署圖的合法性,確定部署目標云平臺,然后將部署圖轉(zhuǎn)換成為調(diào)用目標云平臺原生接口的部署代碼. 如果實施跨平臺部署,引擎還需要按照不同平臺,先將部署圖分割成為多個部署子圖,再分別轉(zhuǎn)換成原生部署代碼.

      (3)遠程部署. 部署平臺將轉(zhuǎn)換得到的部署代碼傳輸?shù)侥繕嗽破脚_上,調(diào)用云平臺的部署服務接口,完成遠程部署.

      (4)過程管理. 事實上,部署流程的步驟(1)、(2)、(3)存在先后次序關(guān)系,而本步驟涵蓋部署流程的全過程. 其管理內(nèi)容包括圖版本管理、歷史記錄、狀態(tài)跟蹤和異常管理等.

      圖1 云應用部署流程

      2 云應用部署管理平臺的設計與實現(xiàn)

      2.1 平臺設計

      本文采用分層模型設計了一個部署工具(圖2),即云應用部署管理平臺(以下簡稱平臺). 該平臺由應用層、調(diào)度層、適配層及資源層組成:

      (1)應用層. 為管理人員提供了統(tǒng)一部署接口,包括部署圖管理、部署與監(jiān)控、應用元數(shù)據(jù)管理、云平臺信息管理和訪問控制等功能. 部署圖管理提供部署圖錄入、語法檢查、子圖定義和版本管理等功能;部署與監(jiān)控是該層核心功能,管理人員調(diào)取部署圖,填寫部署策略與平臺信息后實施部署,部署后可監(jiān)控應用系統(tǒng)實例的健康狀態(tài)和屬性信息;應用元數(shù)據(jù)管理完成各類軟件系統(tǒng)的屬性管理、定義部署圖基礎(chǔ)數(shù)據(jù)和管理代碼鏡像等;云平臺信息管理負責接入部署工具的各個云平臺的訪問、資源和特性等信息的獲取和設置;訪問控制功能驗證管理人員是否有權(quán)使用本平臺以及訪問云平臺的資源.

      (2)調(diào)度層. 根據(jù)部署上下文以及云平臺資源情況,決定部署任務的實施位置與步驟等. 首先解析部署圖,完成語義檢查(包括一致性檢查、完整性檢查和權(quán)限檢查等),必要時分解部署圖;然后運行調(diào)度算法確定部署目標平臺、實施步驟和優(yōu)先級別. 如果涉及任務分解,還需要進行同步控制,并管控可能出現(xiàn)的異常和錯誤.

      (3)適配層. 屏蔽了各云平臺的差異,向上提供統(tǒng)一部署接口與統(tǒng)一監(jiān)控接口. 該層承上啟下,通過“轉(zhuǎn)換引擎”將調(diào)度層輸入的部署圖轉(zhuǎn)換為目標云平臺上的部署代碼,再調(diào)用資源層的云平臺訪問代理,啟動遠程部署. 類似地,適配層也通過訪問代理獲取資源信息,向上封裝成為統(tǒng)一監(jiān)控接口.

      (4)資源層. 由部署信息、云平臺資源信息、部署平臺管理信息以及存取上述信息的相關(guān)功能組成. 另外,部署平臺為接入的各個云平臺產(chǎn)生一個訪問代理實例,作為監(jiān)護進程長駐,負責與各云平臺的通信與控制.

      圖2 部署平臺分層架構(gòu)

      2.2 平臺實現(xiàn)

      根據(jù)上述架構(gòu),本文使用Node.js+MongoDB技術(shù)實現(xiàn)了一個云應用部署管理平臺的原型系統(tǒng)(CloudDeployments),其主要功能如下:

      (1)方案管理. 實現(xiàn)了“云平臺信息管理”的部分功能,包括云平臺認證、資源描述和特性服務等元數(shù)據(jù)管理. 云平臺接入系統(tǒng)時,先為其創(chuàng)建一套管理描述文件,同時在資源層生成相應的訪問代理實體.

      (2)拓撲管理. 系統(tǒng)僅實現(xiàn)部署功能,尚未實現(xiàn)云平臺資源監(jiān)控功能,因此需要管理員人為地管理接入云平臺的拓撲結(jié)構(gòu),包括物理節(jié)點、連接關(guān)系、管理域和配置信息等. 在后續(xù)版本中將增加云平臺資源的自動發(fā)現(xiàn)功能.

      (3)部署圖管理. 實現(xiàn)了圖形化的部署圖編輯、語法檢查、子圖定義、部署圖分層顯示和篩選過濾等功能. 子圖定義將部署圖作為構(gòu)件,提高了可復用性和制作效率.

      (4)遠程部署. 實現(xiàn)了基于編排模板的部署引擎,可將部署圖轉(zhuǎn)換成為AWS Cloud Formation部署腳本,調(diào)用編排服務實現(xiàn)遠程部署. 系統(tǒng)還實現(xiàn)了簡單的部署日志管理和增量部署功能.

      (5)系統(tǒng)管理. 實現(xiàn)了用戶身份認證、平臺訪問權(quán)限控制、云平臺訪問授權(quán)和部署策略設置等功能.

      該平臺原型系統(tǒng)使用highttopo庫[9]實現(xiàn)拓撲圖、部署圖的圖形化操作功能,使用Cloud Formation做為云編排服務接口. 目前系統(tǒng)僅支持兼容AWS接口的云平臺. 部署功能是平臺的核心部分,下面從基本部署、混合部署和增量部署等3個方面介紹其實現(xiàn)技術(shù).

      2.2.1 基本部署

      (1)部署圖實現(xiàn). 平臺實現(xiàn)了一個圖形化的部署圖編輯器,通過拖拽元件和連線、雙擊元件圖標填寫屬性信息,可快速構(gòu)建部署圖實例. 根據(jù)部署圖的定義,平臺實現(xiàn)了SG、VM、DU和CN等4類節(jié)點,以及hoston、accesson和dependon等3類邊,為各實體設計了各種屬性(表1),其中屬性1~4為4類節(jié)點均有的通用屬性、屬性5~10為虛擬機器專有屬性,Layer屬性是為部署圖分層展示而設置的屬性,Region屬性是為部署圖劃分而設置的標記屬性. 篇幅所限,其余屬性就不再贅述. 建立概念模型后,將部署圖表示為BSON格式,存儲到MongoDB庫中.

      表1 虛擬機器類型的屬性設置Table 1 Attribute settings for virtual machine type

      (2)轉(zhuǎn)換引擎實現(xiàn). 將部署圖轉(zhuǎn)換成為目標云平臺的部署代碼時,可以根據(jù)實際選用不同的部署接口. 為了便于遠程部署,本文選用編排模板的部署方式. 下面以目標云平臺為AWS為例,介紹文中轉(zhuǎn)換引擎將部署圖轉(zhuǎn)換為Cloud Formation[10]的算法流程(圖3). 本文采用工廠設計模式為每類節(jié)點設計了一個工廠類,轉(zhuǎn)換時調(diào)用相應的工廠類生成模板實例,再將所有模板整合到主模板中. 在轉(zhuǎn)換可部署單元節(jié)點時,將下載地址配置信息轉(zhuǎn)化為模板的“files”屬性,將安裝命令轉(zhuǎn)化為模板的“commands”屬性,然后將此信息以AWS∷CloudFormaction∷Init類型的格式插入到宿主節(jié)點的模板里.

      (3)遠程部署. 生成編排模板后,資源層中訪問代理調(diào)用目標云平臺的編排服務,實施遠程部署. 以AWS Cloud Formation為例,平臺使用基于Node.js的SDK開發(fā)包,調(diào)用AWS工廠類的awsConf方法配置云平臺認證信息;調(diào)用GetCloudFormation方法獲取服務編排功能對象;再調(diào)用DepStackMng類的newAndSave建立編排,完成部署.

      2.2.2 混合部署 混合部署是一種跨云平臺的部署形式[11],其部署資源由多個同構(gòu)或異構(gòu)的云平臺[12]聯(lián)合提供. 利用前述基本部署功能,可以靈活地實現(xiàn)混合部署. 具體過程如下.

      (1)混合部署規(guī)劃. 混合部署規(guī)劃可以由部署人員人為地決定,也可以由調(diào)度算法根據(jù)資源情況計算后決定,采用何種方式取決于平臺部署策略. 管理人員通過為虛擬機器節(jié)點VM或復合節(jié)點CN的Destination屬性設定目標云平臺值,可以實現(xiàn)混合部署,但劃分的合理性由管理員負責. 另一種情況,管理人員設置Region屬性,將部署圖劃分為多個連通區(qū)域,但并不指定Destination屬性,再由調(diào)度層負責計算各分區(qū)到云平臺的映射. 如果Region屬性與Destination屬性全部為空,則調(diào)度層負責全部規(guī)劃工作,包括決定是否劃分區(qū)域以及云平臺資源分配,這對調(diào)度算法提出較高要求.

      圖3 編排模板轉(zhuǎn)換流程圖

      管理人員在賦值Region或Destination屬性后,平臺需要檢查部署圖的語義一致性. 例如,A節(jié)點與B節(jié)點的Region屬性值相同,而兩者的Destination屬性值卻不同,顯然存在邏輯錯誤,平臺應當給出錯誤提示. 在需要考慮邊屬性的約束時情況將更加復雜,例如accesson類型邊可指定訪問鏈路帶寬、延遲和安全域等屬性,對邊兩端節(jié)點的部署將帶來限制,部分屬性(如安全域)在靜態(tài)配置時便可檢測,而部分屬性(如延遲)則需要在調(diào)度層指定目標平臺時方能判斷是否滿足屬性要求[13].

      (2)混合部署實施. 在本文應用部署體系下,混合部署的實施均需要將部署圖分割成為若干子圖,然后使用前述基本部署功能,“分而治之”地逐個完成子圖的部署. 實現(xiàn)混合部署時調(diào)度層必須提供同步機制,對各個部署子任務的狀態(tài)進行監(jiān)控,發(fā)現(xiàn)某個子圖部署失敗時,可以實行部署回滾,并向應用層報告相關(guān)狀態(tài).2.2.3 增量部署 前面討論的部署屬于新建形式,所需資源全部由云平臺創(chuàng)建提供. 然而,有時部署可以利用云平臺上已運行的資源實例,僅需要在已有資源環(huán)境上完成應用組件安裝、運行配置命令和下載數(shù)據(jù)等操作,而不需要向云平臺重新申請資源,我們將這種方式稱為“增量部署”. 增量部署必須解決符合部署要求的資源定位問題,本文提出一種“以圖找圖”的查找方法. 具體來說,將所需的資源環(huán)境以部署圖形式描述出來作為查詢圖,然后在已完成部署的目標圖上查找與其同構(gòu)的子圖. 例如,圖4A的虛線框內(nèi)的子圖與圖4B同構(gòu)[14-15],增量部署時可以利用此類資源(虛擬機B、Java虛擬機D和服務器E).

      圖4 子圖同構(gòu)實例

      為了實現(xiàn)“以圖找圖”功能,本文實現(xiàn)了一個匹配算法,其偽代碼如下:

      Procedure Match(q:Node,pre_q:Node,t:Node,pre_t:Node){

      If (q與t不匹配) return EMPTY

      If (pre_q!=NULL & pre_t!=NULL & q與pre_q之間的邊與t與pre_t之間的邊不匹配)

      return EMPTY

      qNeighbors←qNeighborspre_q // qNeighbors是q在查詢圖上的鄰居節(jié)點集合

      tNeighbors←tNeighborspre_t // tNeighbors是t在目標圖上的鄰居節(jié)點集合

      matchResult←EMPTY

      ForEach (n: Node in qNeighbors)

      result←EMPTY

      ForEach (m:Node in tNeighbors)

      result←Match(n,q,m,t)

      If (result!=EMPTY) {

      tNeighbors←tNeighborsm

      Break

      }

      End ForEach

      If (result!=EMPTY)

      matchResult=matchResult∪result

      Else return EMPTY

      End ForEach

      return (q,t)∪matchResult

      }

      3 部署實例

      本文以原型系統(tǒng)為工具,成功部署了職業(yè)測評系統(tǒng)、博客系統(tǒng)和精品課程網(wǎng)站等多個應用系統(tǒng),經(jīng)測試,系統(tǒng)功能正常、運行穩(wěn)定,而且部署方便快捷、可復用性強. 實踐證明,本文提出的部署方法是可行的、有效的. 下面以職業(yè)測評系統(tǒng)為例,介紹其部署過程.

      (1)部署環(huán)境準備:使用本文研發(fā)的原型系統(tǒng)為部署工具,在安裝了某商用云平臺軟件的私有云上進行部署,平臺支持AWS服務接口. 部署之前,已經(jīng)在原型系統(tǒng)中接入了該云平臺,并導入了相關(guān)的元數(shù)據(jù);另外,部署所需的虛擬機鏡像文件已存在,所需的系統(tǒng)軟件等元數(shù)據(jù)也在原型系統(tǒng)中完成定義.

      (2)部署需求與規(guī)劃:職業(yè)測評系統(tǒng)是一套基于SSH框架開發(fā)的Web應用系統(tǒng),后臺采用MySQL數(shù)據(jù)庫. 根據(jù)常規(guī)的部署方法,可為其分配2個虛擬機:一個用作Web服務器,另一個為數(shù)據(jù)庫服務器. 2個服務器處于同一網(wǎng)段,便于通信. 由于系統(tǒng)的用戶并發(fā)訪問量不大,部署方案不涉及負載均衡服務.

      根據(jù)文中的部署流程,必須事先制作一個部署圖,描述部署任務. 結(jié)合部署需求,部署圖的節(jié)點設置情況如表2.

      表2 部署圖的節(jié)點設置Table 2 Configurations of nodes in the deploy graph

      除了上述節(jié)點,還需要為部署圖添加若干條邊:N2→N1(accesson類型);N3→N1(accesson類型);N4→N2(hoston類型);N5→N4(dependon類型);N6→N5(hoston類型);N7→N3(hoston類型);N6→N7(accesson類型). 最后,在原型系統(tǒng)中保存好部署圖.

      (3)實施部署:調(diào)出制作好的部署圖,點擊“部署”命令按鈕,選擇目標云平臺(即前述已導入的私有云平臺),部署工具執(zhí)行遠程部署.

      (4)部署結(jié)果:部署完成,系統(tǒng)運行正常. 部署完畢,還可通過部署工具查看部署方案中的資源實例. 例如,可以查看實驗中的Web服務器虛擬機實例以及相關(guān)部署信息,如圖5所示.

      圖5 部署后的虛擬機實例

      4 結(jié)論

      大規(guī)模云計算基礎(chǔ)設施的建設對云計算平臺的自動化、智能化和自主化管理提出了更高要求. 本文研究IaaS云平臺的通用應用部署問題,提出“部署圖”作為應用部署的形式化描述工具,以達到平臺無關(guān)的應用部署目的. 在部署圖的基礎(chǔ)上,給出了一個面向多云平臺的通用應用部署體系,設計了部署工具的分層架構(gòu)模型,闡述了云應用部署管理平臺的設計與相關(guān)算法,最后展示了平臺原型系統(tǒng). 本文提出的應用部署技術(shù)具有平臺無關(guān)、可復用、可驗證和直觀易用等優(yōu)點,極大降低了應用部署難度,減少部署工作量,避免了人為配置錯誤.

      部署圖作為部署抽象工具,具有多方面的優(yōu)勢:圖模型表達直觀、靈活性強,展示效果好;圖模型與應用系統(tǒng)部署的實施方式更為接近,易于理解;圖論研究成果豐碩,可為應用部署分析提供理論工具,例如圖著色、圖劃分和子圖同構(gòu)等. 文中以混合部署、增量部署為例,展示了部署圖的優(yōu)勢. 但是,部署圖也存在粒度小、實現(xiàn)繁瑣和查找困難等缺點,因此需要設計良好的部署工具加以支持.

      我們下一步將繼續(xù)完善云應用部署管理平臺,擴充云平臺資源監(jiān)控功能,開展基于日志的部署圖自動生成、應用部署性能優(yōu)化等方面的研究.

      [1] 陳康,鄭緯民. 云計算:系統(tǒng)實例與研究現(xiàn)狀[J]. 軟件學報,2009,20(5):1337-1348.

      CHEN K,ZHENG W M. Cloud computing:system instances and current research[J]. Journal of Software,2009,20(5):1337-1348.

      [2] 劉歡歡,麻志毅,陳泓婕. 基于PaaS的云應用軟件部署環(huán)境的元模型[J]. 計算機科學,2015,42(10):45-49;80.

      LIU H H,MA Z Y,CHEN H J. Meta-model of PaaS-based cloud application’s deployment environment[J]. Computer Science,2015,42(10):45-49;80.

      [3] SIMBAD team. M-COAPS API[EB/OL]. (2016-01-04)[2016-06-08]. http://www-inf.it-sudparis.eu/SIMBAD/tools/COAPS/.

      [4] HOSSNY E,KHATTAB S,OMARA F,et al. A case study for deploying applications on heterogeneous PaaS platforms[C]//Proceedings of the 2013 International Confe-rence on Cloud Computing and Big Data. Washington,DC: IEEE,2013:246-253.

      [5] YONGSIRIWIT K,SELLAMI M,GAALOUL W. A semantic framework supporting cloud resource descriptions interoperability[C]//Proceedings of the 9th International Conference on Cloud Computing (CLOUD). San Francisco,California:IEEE,2016:585-592.

      [6] NGUYEN B M,TRAN V,HLUCHY L. Development and deployment of cloud services via abstraction layer[C]//Proceedings of International Conference on Computing,Management and Telecommunications. New York:IEEE,2013:246-251.

      [7] BRANDTZ?G E,MOHAGHEGHI P,MOSSER S. Towards a domain-specific language to deploy applications in the clouds[C]// Proceedings of the Third International Conference on Cloud Computing,Grids,and Virtualization. Nice,France:[s.n.],2012:214-218.

      [8] SELLAMI M,SAMI Y G,MOHAMED M,et al. PaaS-independent provisioning and management of applications in the cloud[C]//IEEE Proceedings of the Sixth International Conference on Cloud Computing. Washington,DC:IEEE,2013:693-700.

      [9] Hightopo Inc. A rich JavaScript UI library[EB/OL]. (2015-09-12)[2016-07-15]. http://www.hightopo.com/index.html.

      [10]Amazon Web Services,Inc. AWS cloud formation[EB/OL]. (2015-12-07)[2016-08-02]. https://aws.amazon.com/cn/ cloudformation.

      [11]BUYYA R,BARRETO D. Multi-cloud resource provisioning with Aneka:a unified and integrated utilisation of microsoft azure and amazon EC2 instances[C]//Proceedings of International Conference on Computing and Network Communications. New York:IEEE,2015:216-229.

      [12]BROGI A,CARRASCO J,CUBO J,et al. SeaClouds:an open reference architecture for multi-cloud governance[C]//Software Architecture:Proceedings of the 10th European Conference. Berlin:Springer,2016:334-338.

      [13]GONCALVES J R,ROLIM T,SAMPAIO A,et al. A multi-criteria approach for assessing cloud deployment options based on non-functional requirements[C]//Proceeding of the 30th Annual ACM Symposium on Applied Computing. New York:ACM,2015:1383-1389.

      [14]ULLMANN J R. An algorithm for subgraph isomorphism[J]. Journal of the ACM (JACM),1976,23(1):31-42.

      [15]LISCHKA J,KARL H. A virtual network mapping algorithm based on subgraph isomorphism detection[C]//Proceedings of the 1st ACM Workshop on Virtualized Infrastructure Systems and Architectures. New York:ACM,2009:81-88.

      【中文責編:莊曉瓊 英文審校:肖菁】

      Research on Application Deployment Technology of Cloud Platforms Based on Graph Model

      ZHENG Weiping*, LIU Jianmin

      (School of Computer Science, South China Normal University, Guangzhou 510631, China)

      An application deployment schema based on deployment graph is presented for the purpose of platform-independent deployments, in which a general deployment framework for cloud applications is given and related design principles and implementation technologies for the deployment instrument are focused. A prototype system is implemented and a deployment case is used together to prove the feasibility of the presented deployment schema, as well as the advantages of platform-independency, visualization and reusability etc.

      cloud platform; application deployment; deployment graph;platform-independency; subgraph isomorphism

      2016-08-08 《華南師范大學學報(自然科學版)》網(wǎng)址:http://journal.scnu.edu.cn/n

      廣東省科技計劃項目(2013B010401021,2016B010109005);廣東省自然科學基金項目(S2013040012449)

      TP311

      A

      1000-5463(2017)04-0115-07

      *通訊作者:鄭偉平,副教授,Email:csweapon@gmail.com.

      猜你喜歡
      部署工具節(jié)點
      CM節(jié)點控制在船舶上的應用
      一種基于Kubernetes的Web應用部署與配置系統(tǒng)
      Analysis of the characteristics of electronic equipment usage distance for common users
      晉城:安排部署 統(tǒng)防統(tǒng)治
      基于AutoCAD的門窗節(jié)點圖快速構(gòu)建
      波比的工具
      波比的工具
      部署
      “巧用”工具
      讀者(2017年18期)2017-08-29 21:22:03
      部署“薩德”意欲何為?
      太空探索(2016年9期)2016-07-12 10:00:02
      共和县| 湘西| 澄迈县| 麟游县| 绥中县| 江口县| 东台市| 彭阳县| 沾化县| 横山县| 湘阴县| 宝兴县| 花莲县| 卢氏县| 延津县| 平陆县| 海口市| 紫金县| 兖州市| 云安县| 福州市| 红河县| 台湾省| 四子王旗| 凉城县| 巴中市| 和政县| 江孜县| 同德县| 洮南市| 凤翔县| 黑龙江省| 如东县| 屯留县| 英德市| 乐业县| 阿瓦提县| 龙州县| 株洲市| 黑山县| 玉田县|