两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種用于在云計算環(huán)境中部署應(yīng)用的方法和系統(tǒng)的制作方法

文檔序號:8001356閱讀:253來源:國知局
一種用于在云計算環(huán)境中部署應(yīng)用的方法和系統(tǒng)的制作方法
【專利摘要】本發(fā)明屬于云計算領(lǐng)域,公開了一種用于在云計算環(huán)境中部署應(yīng)用的方法和系統(tǒng)。該方法包括:在用戶部署應(yīng)用時,收集與部署應(yīng)用相關(guān)的元數(shù)據(jù)以及指令,所述元數(shù)據(jù)包括服務(wù)元數(shù)據(jù)、應(yīng)用元數(shù)據(jù)以及拓?fù)湓獢?shù)據(jù),其中,所述服務(wù)元數(shù)據(jù)包括與部署該應(yīng)用所需要的服務(wù)相關(guān)的元數(shù)據(jù),所述應(yīng)用元數(shù)據(jù)包括與該應(yīng)用相關(guān)的元數(shù)據(jù),拓?fù)湓獢?shù)據(jù)包括表示所述服務(wù)與所述應(yīng)用之間關(guān)系的元數(shù)據(jù);將收集到的元數(shù)據(jù)和指令存儲為模型以用于該應(yīng)用的再次部署。通過對于用戶部署應(yīng)用操作的記錄,可以得到部署所用的模型,這樣當(dāng)再次部署時,可以直接調(diào)用模型實現(xiàn)自動部署,降低了部署應(yīng)用所需的專業(yè)技能,方便了應(yīng)用的再次部署。
【專利說明】一種用于在云計算環(huán)境中部署應(yīng)用的方法和系統(tǒng)

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及云計算領(lǐng)域,更具體地,涉及一種用于在云計算環(huán)境中部署應(yīng)用的方 法和系統(tǒng)。

【背景技術(shù)】
[0002] 在云計算環(huán)境中,多個用戶可能都需要使用某一應(yīng)用。那么對于這些用戶,目前, 需要每個用戶都自己完成該應(yīng)用的部署。應(yīng)用的部署需要一定的專業(yè)技能,因此對于某些 用戶而言,自己部署應(yīng)用有一定的困難,這在一定程度上就限制了云平臺的發(fā)展,也為用戶 使用帶來了不便。并且,在云計算環(huán)境中,若用戶需要多次部署同一應(yīng)用,也需要每次都進(jìn) 行一次相同的操作,費時費力。


【發(fā)明內(nèi)容】

[0003] 為了簡化云計算環(huán)境中應(yīng)用的部署,本發(fā)明實施例提供了一種用于在云計算環(huán)境 中部署應(yīng)用的方法和系統(tǒng),此外還提供了一種用于在云計算環(huán)境中部署復(fù)合應(yīng)用的方法和 系統(tǒng)。
[0004] 根據(jù)本發(fā)明的一個方面,提供了一種用于在云計算環(huán)境中部署應(yīng)用的方法和系 統(tǒng),所述方法包括:在用戶部署應(yīng)用時,收集與部署應(yīng)用相關(guān)的元數(shù)據(jù)以及指令,所述元數(shù) 據(jù)包括服務(wù)元數(shù)據(jù)、應(yīng)用元數(shù)據(jù)以及拓?fù)湓獢?shù)據(jù),其中,所述服務(wù)元數(shù)據(jù)包括與部署該應(yīng)用 所需要的服務(wù)相關(guān)的元數(shù)據(jù),所述應(yīng)用元數(shù)據(jù)包括與該應(yīng)用相關(guān)的元數(shù)據(jù),拓?fù)湓獢?shù)據(jù)包 括表示所述服務(wù)與所述應(yīng)用之間關(guān)系的元數(shù)據(jù);將收集到的元數(shù)據(jù)和指令存儲為模型以用 于該應(yīng)用的再次部署。
[0005] 根據(jù)本發(fā)明的另一個方面,提供了一種用于在云計算環(huán)境中部署應(yīng)用的方法,所 述方法包括:獲取按照上述方法得到的模型;根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù)準(zhǔn)備部 署該應(yīng)用所需的服務(wù);根據(jù)所述模型中的指令和應(yīng)用元數(shù)據(jù)將該應(yīng)用發(fā)布到運行環(huán)境;根 據(jù)所述模型中的指令和拓?fù)湓獢?shù)據(jù)將準(zhǔn)備好的服務(wù)綁定到該應(yīng)用。
[0006] 根據(jù)本發(fā)明的另一個方面,提供了一種用于在云計算環(huán)境中部署復(fù)合應(yīng)用的方 法,所述復(fù)合應(yīng)用至少包括第一子應(yīng)用和第二子應(yīng)用,所述方法包括:獲取按照上述方法得 到的所述第一子應(yīng)用的模型;獲取按照上述方法得到的所述第二子應(yīng)用的模型;根據(jù)所述 第一子應(yīng)用的模型中的拓?fù)湓獢?shù)據(jù)和所述第二子應(yīng)用的模型中的拓?fù)湓獢?shù)據(jù)生成所述復(fù) 合應(yīng)用的生命周期管理信息;將所述第一子應(yīng)用的模型、所述第二子應(yīng)用的模型以及所述 生命周期管理信息存儲為所述復(fù)合應(yīng)用的模型以用于所述復(fù)合應(yīng)用的部署。
[0007] 根據(jù)本發(fā)明的另一個方面,提供了一種用于在云計算環(huán)境中部署應(yīng)用的系統(tǒng),該 系統(tǒng)能夠執(zhí)行上述方法。
[0008] 本發(fā)明所提供的技術(shù)方案可以簡化云計算環(huán)境中應(yīng)用的部署,降低部署應(yīng)用對于 專業(yè)技能的需求,方便用戶使用云計算環(huán)境中的應(yīng)用。

【專利附圖】

【附圖說明】
[0009] 通過結(jié)合附圖對本公開示例性實施方式進(jìn)行更詳細(xì)的描述,本公開的上述以及其 它目的、特征和優(yōu)勢將變得更加明顯,其中,在本公開示例性實施方式中,相同的參考標(biāo)號 通常代表相同部件。
[0010] 圖1表示根據(jù)本發(fā)明一實施例的云計算節(jié)點;
[0011] 圖2表示根據(jù)本發(fā)明一實施例的云計算環(huán)境;
[0012] 圖3表示根據(jù)本發(fā)明一實施例的抽象模型層;
[0013] 圖4示出了本發(fā)明一實施例提供的用于在云計算環(huán)境中部署應(yīng)用的方法的流程 示意圖;
[0014] 圖5示出了本發(fā)明一實施例提供的用于在云計算環(huán)境中部署應(yīng)用的方法的流程 示意圖;
[0015] 圖6示出了本發(fā)明一實施例提供的用于在云計算環(huán)境中部署復(fù)合應(yīng)用的方法的 流程示意圖;
[0016] 圖7示出了本發(fā)明一實施例提供的用于在云計算環(huán)境中部署應(yīng)用的系統(tǒng)的結(jié)構(gòu) 示意圖;
[0017] 圖8示出了本發(fā)明一實施例提供的存儲模塊的結(jié)構(gòu)示意圖;
[0018] 圖9示出了本發(fā)明一實施例提供的用于在云計算環(huán)境中部署應(yīng)用的系統(tǒng)的結(jié)構(gòu) 示意圖;
[0019] 圖10示出了本發(fā)明一實施例提供的用于在云計算環(huán)境中部署。

【具體實施方式】
[0020] 下面將參照附圖更詳細(xì)地描述本公開的優(yōu)選實施方式。雖然附圖中顯示了本公開 的優(yōu)選實施方式,然而應(yīng)該理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施方 式所限制。相反,提供這些實施方式是為了使本公開更加透徹和完整,并且能夠?qū)⒈竟_的 范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
[0021] 首先應(yīng)當(dāng)理解,盡管本公開包括關(guān)于云計算的詳細(xì)描述,但其中記載的技術(shù)方案 的實現(xiàn)卻不限于云計算環(huán)境,而是能夠結(jié)合現(xiàn)在已知或以后開發(fā)的任何其它類型的計算環(huán) 境而實現(xiàn)。
[0022] 云計算是一種服務(wù)交付模式,用于對共享的可配置計算資源池進(jìn)行方便、按需的 網(wǎng)絡(luò)訪問??膳渲糜嬎阗Y源是能夠以最小的管理成本或與服務(wù)提供者進(jìn)行最少的交互就能 快速部署和釋放的資源,例如可以是網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、內(nèi)存、存儲、應(yīng)用、虛擬 機和服務(wù)。這種云模式可以包括至少五個特征、至少三個服務(wù)模型和至少四個部署模型。
[0023] 特征包括:
[0024] 按需自助式服務(wù):云的消費者在無需與服務(wù)提供者進(jìn)行人為交互的情況下能夠單 方面自動地按需部署諸如服務(wù)器時間和網(wǎng)絡(luò)存儲等的計算能力。
[0025] 廣泛的網(wǎng)絡(luò)接入:計算能力可以通過標(biāo)準(zhǔn)機制在網(wǎng)絡(luò)上獲取,這種標(biāo)準(zhǔn)機制促進(jìn) 了通過不同種類的瘦客戶機平臺或厚客戶機平臺(例如移動電話、膝上型電腦、個人數(shù)字 助理PDA)對云的使用。
[0026] 資源池:提供者的計算資源被歸入資源池并通過多租戶(multi-tenant)模式服 務(wù)于多重消費者,其中按需將不同的實體資源和虛擬資源動態(tài)地分配和再分配。一般情況 下,消費者不能控制或甚至并不知曉所提供的資源的確切位置,但可以在較高抽象程度上 指定位置(例如國家、州或數(shù)據(jù)中心),因此具有位置無關(guān)性。
[0027] 迅速彈性:能夠迅速、有彈性地(有時是自動地)部署計算能力,以實現(xiàn)快速擴展, 并且能迅速釋放來快速縮小。在消費者看來,用于部署的可用計算能力往往顯得是無限的, 并能在任意時候都能獲取任意數(shù)量的計算能力。
[0028] 可測量的服務(wù):云系統(tǒng)通過利用適于服務(wù)類型(例如存儲、處理、帶寬和活躍用戶 帳號)的某種抽象程度的計量能力,自動地控制和優(yōu)化資源效用。可以監(jiān)測、控制和報告資 源使用情況,為服務(wù)提供者和消費者雙方提供透明度。
[0029] 服務(wù)模型如下:
[0030] 軟件即服務(wù)(SaaS):向消費者提供的能力是使用提供者在云基礎(chǔ)架構(gòu)上運行的 應(yīng)用??梢酝ㄟ^諸如網(wǎng)絡(luò)瀏覽器的瘦客戶機接口(例如基于網(wǎng)絡(luò)的電子郵件)從各種客戶 機設(shè)備訪問應(yīng)用。除了有限的特定于用戶的應(yīng)用配置設(shè)置外,消費者既不管理也不控制包 括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)、存儲、乃至單個應(yīng)用能力等的底層云基礎(chǔ)架構(gòu)。
[0031] 平臺即服務(wù)(PaaS):向消費者提供的能力是在云基礎(chǔ)架構(gòu)上部署消費者創(chuàng)建或 獲得的應(yīng)用,這些應(yīng)用利用提供者支持的程序設(shè)計語言和工具創(chuàng)建。消費者既不管理也不 控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)或存儲的底層云基礎(chǔ)架構(gòu),但對其部署的應(yīng)用具有控制 權(quán),對應(yīng)用托管環(huán)境配置可能也具有控制權(quán)。
[0032] 基礎(chǔ)架構(gòu)即服務(wù)(IaaS):向消費者提供的能力是消費者能夠在其中部署并運行 包括操作系統(tǒng)和應(yīng)用的任意軟件的處理、存儲、網(wǎng)絡(luò)和其他基礎(chǔ)計算資源。消費者既不管理 也不控制底層的云基礎(chǔ)架構(gòu),但是對操作系統(tǒng)、存儲和其部署的應(yīng)用具有控制權(quán),對選擇的 網(wǎng)絡(luò)組件(例如主機防火墻)可能具有有限的控制權(quán)。
[0033] 部署模型如下:
[0034] 私有云:云基礎(chǔ)架構(gòu)單獨為某個組織運行。云基礎(chǔ)架構(gòu)可以由該組織或第三方管 理并且可以存在于該組織內(nèi)部或外部。
[0035] 共同體云:云基礎(chǔ)架構(gòu)被若干組織共享并支持有共同利害關(guān)系(例如任務(wù)使命、 安全要求、政策和合規(guī)考慮)的特定共同體。共同體云可以由共同體內(nèi)的多個組織或第三 方管理并且可以存在于該共同體內(nèi)部或外部。
[0036] 公共云:云基礎(chǔ)架構(gòu)向公眾或大型產(chǎn)業(yè)群提供并由出售云服務(wù)的組織擁有。
[0037] 混合云:云基礎(chǔ)架構(gòu)由兩個或更多部署模型的云(私有云、共同體云或公共云)組 成,這些云依然是獨特的實體,但是通過使數(shù)據(jù)和應(yīng)用能夠移植的標(biāo)準(zhǔn)化技術(shù)或私有技術(shù) (例如用于云之間的負(fù)載平衡的云突發(fā)流量分擔(dān)技術(shù))綁定在一起。
[0038] 云計算環(huán)境是面向服務(wù)的,特點集中在無狀態(tài)性、低耦合性、模塊性和語意的互操 作性。云計算的核心是包含互連節(jié)點網(wǎng)絡(luò)的基礎(chǔ)架構(gòu)。
[0039] 現(xiàn)在參考圖1,其中顯示了云計算節(jié)點的一個例子。圖1顯示的云計算節(jié)點10僅僅 是適合的云計算節(jié)點的一個示例,不應(yīng)對本發(fā)明實施例的功能和使用范圍帶來任何限制。 總之,云計算節(jié)點10能夠被用來實現(xiàn)和/或執(zhí)行以上所述的任何功能。
[0040] 云計算節(jié)點10具有計算機系統(tǒng)/服務(wù)器12,其可與眾多其它通用或?qū)S糜嬎阆到y(tǒng) 環(huán)境或配置一起操作。眾所周知,適于與計算機系統(tǒng)/服務(wù)器12-起操作的計算系統(tǒng)、環(huán)境 和/或配置的例子包括但不限于:個人計算機系統(tǒng)、服務(wù)器計算機系統(tǒng)、瘦客戶機、厚客戶 機、手持或膝上設(shè)備、基于微處理器的系統(tǒng)、機頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)個人電腦、 小型計算機系統(tǒng)、大型計算機系統(tǒng)和包括上述任意系統(tǒng)的分布式云計算技術(shù)環(huán)境,等等。
[0041] 計算機系統(tǒng)/服務(wù)器12可以在由計算機系統(tǒng)執(zhí)行的計算機系統(tǒng)可執(zhí)行指令(諸 如程序模塊)的一般語境下描述。通常,程序模塊可以包括執(zhí)行特定的任務(wù)或者實現(xiàn)特定 的抽象數(shù)據(jù)類型的例程、程序、目標(biāo)程序、組件、邏輯、數(shù)據(jù)結(jié)構(gòu)等。計算機系統(tǒng)/服務(wù)器12 可以在通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行任務(wù)的分布式云計算環(huán)境中實施。在分布式 云計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備的本地或遠(yuǎn)程計算系統(tǒng)存儲介質(zhì)上。
[0042] 如圖1所示,云計算節(jié)點10中的計算機系統(tǒng)/服務(wù)器12以通用計算設(shè)備的形式 表現(xiàn)。計算機系統(tǒng)/服務(wù)器12的組件可以包括但不限于:一個或者多個處理器或者處理單 元16,系統(tǒng)存儲器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲器28和處理單元16)的總線18。
[0043] 總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲器總線或者存儲器控制器, 外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉 例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC) 總線,增強型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(VESA)局域總線以及外圍組件互連(PCI)總線。
[0044] 計算機系統(tǒng)/服務(wù)器12典型地包括多種計算機系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是 能夠被計算機系統(tǒng)/服務(wù)器12訪問的任意可獲得的介質(zhì),包括易失性和非易失性介質(zhì),可 移動的和不可移動的介質(zhì)。
[0045] 系統(tǒng)存儲器28可以包括易失性存儲器形式的計算機系統(tǒng)可讀介質(zhì),例如隨機存 取存儲器(RAM) 30和/或高速緩存存儲器32。計算機系統(tǒng)/服務(wù)器12可以進(jìn)一步包括其 它可移動/不可移動的、易失性/非易失性計算機系統(tǒng)存儲介質(zhì)。僅作為舉例,存儲系統(tǒng)34 可以用于讀寫不可移動的、非易失性磁介質(zhì)(圖1未顯示,通常稱為"硬盤驅(qū)動器")。盡管 圖1中未示出,可以提供用于對可移動非易失性磁盤(例如"軟盤")讀寫的磁盤驅(qū)動器, 以及對可移動非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動器。 在這些情況下,每個驅(qū)動器可以通過一個或者多個數(shù)據(jù)介質(zhì)接口與總線18相連。存儲器28 可以包括至少一個程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個)程序模塊,這些程序模 塊被配置以執(zhí)行本發(fā)明各實施例的功能。
[0046] 具有一組(至少一個)程序模塊42的程序/實用工具40,可以存儲在存儲器28 中,這樣的程序模塊42包括但不限于操作系統(tǒng)、一個或者多個應(yīng)用程序、其它程序模塊以 及程序數(shù)據(jù),這些示例中的每一個或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實現(xiàn)。程序模塊42通 常執(zhí)行本發(fā)明所描述的實施例中的功能和/或方法。
[0047] 計算機系統(tǒng)/服務(wù)器12也可以與一個或多個外部設(shè)備14(例如鍵盤、指向設(shè)備、 顯示器24等)通信,還可與一個或者多個使得用戶能與該計算機系統(tǒng)/服務(wù)器12交互的 設(shè)備通信,和/或與使得該計算機系統(tǒng)/服務(wù)器12能與一個或多個其它計算設(shè)備進(jìn)行通信 的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接 口 22進(jìn)行。并且,計算機系統(tǒng)/服務(wù)器12還可以通過網(wǎng)絡(luò)適配器20與一個或者多個網(wǎng)絡(luò) (例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適 配器20通過總線18與計算機系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示 出,其它硬件和/或軟件模塊可以與計算機系統(tǒng)/服務(wù)器12 -起操作,包括但不限于:微代 碼、設(shè)備驅(qū)動器、冗余處理單元、外部磁盤驅(qū)動陣列、RAID系統(tǒng)、磁帶驅(qū)動器以及數(shù)據(jù)備份存 儲系統(tǒng)等。
[0048] 現(xiàn)在參考圖2,其中顯示了示例性的云計算環(huán)境50。如圖所示,云計算環(huán)境50包 括云計算消費者使用的本地計算設(shè)備可以與其相通信的一個或者多個云計算節(jié)點10,本地 計算設(shè)備例如可以是個人數(shù)字助理(PDA)或移動電話54A,臺式電腦54B、筆記本電腦54C 和/或汽車計算機系統(tǒng)54N。云計算節(jié)點10之間可以相互通信??梢栽诎ǖ幌抻谌?上所述的私有云、共同體云、公共云或混合云或者它們的組合的一個或者多個網(wǎng)絡(luò)中將云 計算節(jié)點10進(jìn)行物理或虛擬分組(圖中未顯示)。這樣,云的消費者無需在本地計算設(shè)備 上維護(hù)資源就能請求云計算環(huán)境50提供的基礎(chǔ)架構(gòu)即服務(wù)(IaaS)、平臺即服務(wù)(PaaS)和 /或軟件即服務(wù)(SaaS)。應(yīng)當(dāng)理解,圖2顯示的各類計算設(shè)備54A-N僅僅是示意性的,云計 算節(jié)點10以及云計算環(huán)境50可以與任意類型網(wǎng)絡(luò)上和/或網(wǎng)絡(luò)可尋址連接的任意類型的 計算設(shè)備(例如使用網(wǎng)絡(luò)瀏覽器)通信。
[0049] 現(xiàn)在參考圖3,其中顯示了云計算環(huán)境50(圖2)提供的一組功能抽象層。首先應(yīng) 當(dāng)理解,圖3所示的組件、層以及功能都僅僅是示意性的,本發(fā)明的實施例不限于此。如圖 3所示,提供下列層和對應(yīng)功能:
[0050] 硬件和軟件層60包括硬件和軟件組件。硬件組件的例子包括:主機,例如 IBM? zSeries?系統(tǒng);基于RISC(精簡指令集計算機)體系結(jié)構(gòu)的服務(wù)器,例如 iBMpSeries? 系統(tǒng);iBMXSeries? 系統(tǒng);iBMBladeCenter? 系統(tǒng);存儲設(shè)備;網(wǎng)絡(luò) 和網(wǎng)絡(luò)組件。軟件組件的例子包括:網(wǎng)絡(luò)應(yīng)用服務(wù)器軟件,例如IBM WebSphere?應(yīng)用服 務(wù)器軟件;數(shù)據(jù)庫軟件,例如IBM DB2?.數(shù)據(jù)庫軟件。(IBM, zSeries, pSeries, xSeries, BladeCenter,WebSphere以及DB2是國際商業(yè)機器公司在全世界各地的注冊商標(biāo))。
[0051] 虛擬層62提供一個抽象層,該層可以提供下列虛擬實體的例子:虛擬服務(wù)器、虛 擬存儲、虛擬網(wǎng)絡(luò)(包括虛擬私有網(wǎng)絡(luò))、虛擬應(yīng)用和操作系統(tǒng),以及虛擬客戶端。
[0052] 在一個示例中,管理層64可以提供下述功能:資源供應(yīng)功能:提供用于在云計算 環(huán)境中執(zhí)行任務(wù)的計算資源和其它資源的動態(tài)獲取,其中包括根據(jù)用戶請求管理應(yīng)用運行 環(huán)境的資源分配,根據(jù)需求創(chuàng)建新的服務(wù)實例,建立應(yīng)用與服務(wù)之間的動態(tài)綁定關(guān)系等,從 而能夠?qū)崿F(xiàn)應(yīng)用的部署;計量和定價功能:在云計算環(huán)境內(nèi)對資源的使用進(jìn)行成本跟蹤, 并為此提供帳單和發(fā)票。在一個例子中,該資源可以包括應(yīng)用軟件許可。安全功能:為云的 消費者和任務(wù)提供身份認(rèn)證,為數(shù)據(jù)和其它資源提供保護(hù)。用戶門戶功能:為消費者和系統(tǒng) 管理員提供對云計算環(huán)境的訪問。服務(wù)水平管理功能:提供云計算資源的分配和管理,以滿 足必需的服務(wù)水平。服務(wù)水平協(xié)議(SLA)計劃和履行功能:為根據(jù)SLA預(yù)測的對云計算資 源未來需求提供預(yù)先安排和供應(yīng)。
[0053] 工作負(fù)載層66提供云計算環(huán)境可能實現(xiàn)的功能的示例。在該層中,可提供的工作 負(fù)載或功能的示例包括:地圖繪制與導(dǎo)航;軟件開發(fā)及生命周期管理;虛擬教室的教學(xué)提 供;數(shù)據(jù)分析處理;交易處理;以及移動桌面。
[0054] 現(xiàn)在參看圖4,圖4示出了本發(fā)明實施例提供的一種用于在云計算環(huán)境中部署應(yīng) 用的方法,所述方法包括:步驟410,在用戶部署應(yīng)用時,收集與部署應(yīng)用相關(guān)的元數(shù)據(jù)和 指令,所述元數(shù)據(jù)包括服務(wù)元數(shù)據(jù)、應(yīng)用元數(shù)據(jù)以及拓?fù)湓獢?shù)據(jù),其中,所述服務(wù)元數(shù)據(jù)包 括與部署該應(yīng)用所需要的服務(wù)相關(guān)的元數(shù)據(jù),所述應(yīng)用元數(shù)據(jù)包括與該應(yīng)用相關(guān)的元數(shù) 據(jù),拓?fù)湓獢?shù)據(jù)包括表示所述服務(wù)與所述應(yīng)用之間關(guān)系的元數(shù)據(jù);步驟420,將收集到的元 數(shù)據(jù)和指令存儲為模型以用于該應(yīng)用的再次部署。根據(jù)本實施例提供的方法,可以在用戶 首次部署應(yīng)用時,通過元數(shù)據(jù)和指令的收集記錄,將用戶部署的操作記錄為一個模型。若用 戶需要再次部署該應(yīng)用時,只需要調(diào)取該模型就可以實現(xiàn)應(yīng)用的自動部署,無須再進(jìn)行一 次人工的部署操作,節(jié)省了用戶的大量工作。并且對于缺乏應(yīng)用部署專業(yè)技能的用戶,可以 由專業(yè)人員進(jìn)行一次應(yīng)用的部署,通過本實施例提供的方法,將專業(yè)人員的部署操作記錄 下來,形成該應(yīng)用的部署模型,缺乏部署專業(yè)技能的用戶只需要選定相應(yīng)的部署模型,或者 只需要選擇希望部署的應(yīng)用,就可以實現(xiàn)該應(yīng)用的自動部署,方便了用戶的使用,降低了用 戶的技能需求。
[0055] 本發(fā)明一實施例中,所述服務(wù)元數(shù)據(jù)包括以下之一或其任意組合:服務(wù)的類型、月艮 務(wù)的名稱、服務(wù)的ID、服務(wù)的版本和服務(wù)的配置。所述應(yīng)用元數(shù)據(jù)包括以下之一或其任意 組合:應(yīng)用的類型、應(yīng)用的名稱、應(yīng)用的ID和應(yīng)用的配置。所述拓?fù)湓獢?shù)據(jù)包括以下之一或 其任意組合:應(yīng)用的ID、服務(wù)的ID、應(yīng)用的名稱、服務(wù)的名稱、綁定配置和綁定策略。本發(fā)明 一實施例中,服務(wù)的配置例如包括資源配置和服務(wù)策略配置中的至少一個。本發(fā)明一實施 例中,應(yīng)用的配置例如包括資源配置和應(yīng)用策略配置中的至少一個。舉例而言,在部署應(yīng)用 時,用戶發(fā)出了如下指令:
[0056] 指令 1 :create webapp-name MyApp-file mypackage. war-config myapp. conf
[0057] 指令 2 : create service-name MyService-service DB2-version9. 0
[0058] 指令 3 :bind_app MyApp -service MyService
[0059] 其中,應(yīng)用元數(shù)據(jù)包括:應(yīng)用的名稱MyApp,應(yīng)用的代碼文件包mypackage. war以 及應(yīng)用的配置myapp. conf。服務(wù)元數(shù)據(jù)包括:服務(wù)名稱MyService,類型為DB2,版本為9. 0。 拓?fù)湓獢?shù)據(jù)包括應(yīng)用的名稱MyApp和服務(wù)的名稱MyService,說明需要將MyService綁定到 MyApp〇
[0060] 本發(fā)明一實施例中,與部署應(yīng)用相關(guān)的指令例如包括以下至少之一:創(chuàng)建應(yīng)用的 運行環(huán)境;將應(yīng)用發(fā)布(push)到運行環(huán)境;創(chuàng)建服務(wù);從服務(wù)目錄中查找服務(wù);刪除服務(wù); 啟動應(yīng)用;停止應(yīng)用;啟動服務(wù);停止服務(wù);建立應(yīng)用和服務(wù)之間的綁定關(guān)系;解除應(yīng)用和 服務(wù)之間的綁定關(guān)系;修改應(yīng)用的配置信息;修改服務(wù)的配置信息;刪除應(yīng)用。
[0061] 本發(fā)明一實施例中,步驟420可以是將收集到的元數(shù)據(jù)和指令存儲在文件中,或 者也可以存儲為數(shù)據(jù)記錄,本發(fā)明對此并不加以限制。
[0062] 本發(fā)明一實施例中,步驟420例如包括按照所述用戶部署該應(yīng)用的操作順序,將 收集到的元數(shù)據(jù)和指令存儲起來形成模型以用于該應(yīng)用的再次部署。本領(lǐng)域技術(shù)人員可以 理解,步驟410中,元數(shù)據(jù)和指令的收集可以是與用戶的部署操作同步進(jìn)行的,也即元數(shù)據(jù) 和指令的收集是按照用戶部署該應(yīng)用的操作順序進(jìn)行的,那么直接將收集到的元數(shù)據(jù)和指 令存儲起來就可以實現(xiàn)按照用戶部署該應(yīng)用的操作順序存儲收集到的元數(shù)據(jù)和指令?;?者,由于收集的元數(shù)據(jù)和指令可能存在無效或者冗余的情況,可以調(diào)整收集到的元數(shù)據(jù)和 指令的順序再存儲起來,該存儲符合根據(jù)用戶部署該應(yīng)用的操作順序存儲收集到的元數(shù)據(jù) 和指令。由于在部署應(yīng)用時,有的服務(wù)需要按順序綁定到應(yīng)用,所以按照順序存儲收集到的 元數(shù)據(jù)和指令形成模型可以使得在再次部署時,能夠按照順序?qū)⒎?wù)綁定到應(yīng)用,從而避 免部署中的錯誤或者沖突,提高自動部署的成功率。
[0063] 本發(fā)明一實施例中,步驟420例如還可以包括去除收集的元數(shù)據(jù)和指令中的冗 余。在收集的元數(shù)據(jù)和指令中,會存在部分的冗余,例如無效的元數(shù)據(jù)、指令或者重復(fù)的元 數(shù)據(jù)、指令。例如,在用戶進(jìn)行部署應(yīng)用的操作時,可能多次發(fā)出應(yīng)用的發(fā)布(push)指令, 由于只有最后一次的該指令是有效的指令,所以僅保存最后一個發(fā)布指令以及實例數(shù)量、 QoS指標(biāo)等該指令相關(guān)的元數(shù)據(jù),去除其他的發(fā)布指令及其相關(guān)的元數(shù)據(jù)。本領(lǐng)域技術(shù)人員 可以理解,去除收集的元數(shù)據(jù)和指令中的冗余可以是一邊收集一邊進(jìn)行冗余的去除,也可 以是收集完所有的元數(shù)據(jù)和指令后一起進(jìn)行冗余的去除。據(jù)此,步驟420例如可以包括以 下之一:對收集到的元數(shù)據(jù)和指令進(jìn)行分析,去除冗余的元數(shù)據(jù)和指令,按照所述用戶部署 該應(yīng)用的操作順序,將去除冗余后的元數(shù)據(jù)和指令存儲起來形成模型以用于該應(yīng)用的再次 部署;以及按照所述用戶部署該應(yīng)用的操作順序,將收集到的元數(shù)據(jù)和指令存儲起來,對存 儲起來的元數(shù)據(jù)和指令進(jìn)行分析,去除冗余的元數(shù)據(jù)和指令形成模型以用于該應(yīng)用的再次 部署。本實施例中,對收集到的元數(shù)據(jù)和指令進(jìn)行分析例如可以是進(jìn)行語義分析,或者可以 是按照預(yù)定的規(guī)則進(jìn)行處理。本領(lǐng)域技術(shù)人員可以理解,還可以采用其他技術(shù)來進(jìn)行分析, 本發(fā)明對此不加限制。
[0064] 本發(fā)明一實施例中,步驟420例如還可以包括合并無效的操作指令。在用戶進(jìn)行 應(yīng)用的部署時,可能會存在無效的操作,這樣就導(dǎo)致部分收集的元數(shù)據(jù)和指令失效。例如, 在用戶部署應(yīng)用A時,先創(chuàng)建了服務(wù)B,并將服務(wù)B綁定到應(yīng)用A。隨后,用戶發(fā)現(xiàn)相比于服 務(wù)B,服務(wù)C更合適,由此解除了服務(wù)B的綁定,并將服務(wù)C綁定到應(yīng)用A。此時,服務(wù)B的 創(chuàng)建、刪除以及綁定等指令就是無效的指令,與這些指令相關(guān)的元數(shù)據(jù)就是無效的元數(shù)據(jù)。 本實施例提供的方法可以對無效的元數(shù)據(jù)和指令進(jìn)行合并,從而進(jìn)一步優(yōu)化后續(xù)的自動部 署。本領(lǐng)域技術(shù)人員可以理解,可以是一邊收集一邊進(jìn)行合并,也可以是收集完所有的元數(shù) 據(jù)和指令后一起進(jìn)行合并。據(jù)此,步驟420例如可以包括以下之一:對收集到的元數(shù)據(jù)和指 令進(jìn)行分析,合并無效的元數(shù)據(jù)和指令,按照所述用戶部署該應(yīng)用的操作順序,將合并后的 元數(shù)據(jù)和指令存儲起來形成模型以用于該應(yīng)用的再次部署;以及按照所述用戶部署該應(yīng)用 的操作順序,將收集到的元數(shù)據(jù)和指令存儲起來,對存儲起來的元數(shù)據(jù)和指令進(jìn)行分析,合 并無效的元數(shù)據(jù)和指令形成模型以用于該應(yīng)用的再次部署。本實施例中,對收集到的元數(shù) 據(jù)和指令進(jìn)行分析例如可以是進(jìn)行語義分析,或者可以是按照預(yù)定的規(guī)則進(jìn)行處理。本領(lǐng) 域技術(shù)人員可以理解,還可以采用其他技術(shù)來進(jìn)行分析,本發(fā)明對此不加限制。
[0065] 本發(fā)明一實施例中,步驟420例如可以同時包括合并無效的元數(shù)據(jù)、指令以及去 除冗余的元數(shù)據(jù)、指令。具體方法可以參照上述實施例。本實施例中,若同時存在兩種合并 或者兩種去除的方法時,該方法可以用于相同的對象也可以用于不同的對象。
[0066] 本實施例一實施例中,對無效和冗余的元數(shù)據(jù)以及指令分別進(jìn)行合并和去除的方 法例如包括:響應(yīng)于存在多條發(fā)布指令,只保留最后一條發(fā)布指令以及相關(guān)元數(shù)據(jù);響應(yīng) 于存在針對某一服務(wù)的刪除指令,去除針對該服務(wù)的所有刪除指令和相關(guān)元數(shù)據(jù)以及針對 該服務(wù)的最后一條刪除指令之前的針對該服務(wù)的所有創(chuàng)建指令和相關(guān)元數(shù)據(jù);響應(yīng)于存在 針對某一應(yīng)用的停止指令,去除針對該應(yīng)用的所有停止指令和相關(guān)元數(shù)據(jù)以及針對該應(yīng)用 的最后一條停止指令之前的針對該應(yīng)用的所有啟動指令和相關(guān)元數(shù)據(jù);響應(yīng)于存在針對某 一服務(wù)的停止指令,去除針對該服務(wù)的所有停止指令和相關(guān)元數(shù)據(jù)以及針對該服務(wù)的最后 一條停止指令之前的針對該服務(wù)的所有啟動指令和相關(guān)元數(shù)據(jù);響應(yīng)于存在針對某一應(yīng)用 和某一服務(wù)之間綁定關(guān)系的解除綁定指令,去除針對該綁定關(guān)系的所有解除綁定指令和相 關(guān)元數(shù)據(jù)以及針對該綁定關(guān)系的最后一條解除綁定之前的針對該綁定關(guān)系的所有綁定指 令和相關(guān)元數(shù)據(jù)。本領(lǐng)域技術(shù)人員可以理解,根據(jù)上述示例還可以得到其他合并無效或者 去除冗余的方法,此處不再贅述。
[0067] 本發(fā)明一實施例中,如圖4所示的方法進(jìn)一步包括:響應(yīng)于用戶向已經(jīng)部署完畢 的所述應(yīng)用再進(jìn)行部署相關(guān)操作,收集該操作涉及的元數(shù)據(jù)和指令,并將該操作涉及的元 數(shù)據(jù)和指令更新到所述模型,其中所述操作涉及的元數(shù)據(jù)包括該操作涉及的服務(wù)元數(shù)據(jù)、 該操作涉及的應(yīng)用元數(shù)據(jù)以及該操作涉及的拓?fù)湓獢?shù)據(jù)中的至少一個。通過本實施例提供 的方法,若用戶對已經(jīng)部署的應(yīng)用進(jìn)行了修改,可以通過記錄該用戶的操作對已經(jīng)存儲的 模型進(jìn)行修改,從而可以在今后再次部署該應(yīng)用時直接部署修改后的應(yīng)用。進(jìn)一步的,根據(jù) 本發(fā)明實施例提供的方法,可以保存多個版本的模型分別對應(yīng)沒有經(jīng)過修改的應(yīng)用以及每 次修改后的應(yīng)用,這樣可以方便用戶在不同版本的應(yīng)用間選擇合適的版本進(jìn)行部署。本發(fā) 明一實施例中,將操作涉及的元數(shù)據(jù)和指令更新到所述模型例如包括:對收集的該操作涉 及的元數(shù)據(jù)和指令以及所述模型中存儲的元數(shù)據(jù)和指令進(jìn)行去除冗余和合并無效中的至 少一項,并將處理后的元數(shù)據(jù)和指令存儲為模型以用于該應(yīng)用的再次部署。
[0068] 如圖5所示,本發(fā)明一實施例提供了一種用于在云計算環(huán)境中部署應(yīng)用的方法。 該方法包括:步驟510,獲取模型,該模型為根據(jù)上述方法實施例或者其結(jié)合得到的模型; 步驟520,根據(jù)所述模型中的服務(wù)元數(shù)據(jù)準(zhǔn)備部署該應(yīng)用所需的服務(wù);步驟530,根據(jù)所述 模型中的應(yīng)用元數(shù)據(jù)將該應(yīng)用發(fā)布到運行環(huán)境;步驟540,根據(jù)所述模型中的拓?fù)湓獢?shù)據(jù) 將準(zhǔn)備好的服務(wù)綁定到該應(yīng)用。根據(jù)本實施例提供的方法,可以實現(xiàn)云計算環(huán)境中應(yīng)用的 自動部署,方便了用戶的使用,降低了對于用戶專業(yè)技能的要求。本領(lǐng)域技術(shù)人員可以了 解,本實施例中,對于多個服務(wù)可以先將所有的服務(wù)都準(zhǔn)備好,在將準(zhǔn)備好的服務(wù)綁定到應(yīng) 用,也可以每準(zhǔn)備好一個服務(wù)就將該服務(wù)綁定到應(yīng)用,或者還可以是采用其他的順序進(jìn)行 服務(wù)的準(zhǔn)備和綁定。本實施例以及下述實施例中,如圖5所示的方法還可以包括服務(wù)的啟 動、應(yīng)用的啟動、服務(wù)的停止和應(yīng)用的停止,以及服務(wù)和應(yīng)用的刪除等,此處不再贅述。
[0069] 本發(fā)明一實施例中,步驟520例如包括:根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù)按 照所述模型中指令的順序,準(zhǔn)備部署該應(yīng)用所需的服務(wù);步驟540例如包括:根據(jù)所述模型 中的指令和拓?fù)湓獢?shù)據(jù)按照所述模型中指令的順序,將準(zhǔn)備好的服務(wù)綁定到該應(yīng)用。根據(jù) 如圖4所示的實施例,模型中的指令和元數(shù)據(jù)是按照用戶部署應(yīng)用時操作的順序存儲的, 相應(yīng)的根據(jù)中的指令的順序準(zhǔn)備所需的服務(wù)以及進(jìn)行服務(wù)和應(yīng)用的綁定可以確保自動部 署與用戶部署的操作順序一致,提高自動部署的成功率,避免彼此之間有依賴的服務(wù)添加 順序的錯亂。
[0070] 本發(fā)明一實施例中,步驟520例如包括以下之一或其任意組合:根據(jù)所述模型中 的指令和服務(wù)元數(shù)據(jù),對于專用服務(wù),創(chuàng)建一個新的專用服務(wù);根據(jù)所述模型中的指令和服 務(wù)元數(shù)據(jù),對于共享服務(wù),若該共享服務(wù)已經(jīng)存在,則使用該已經(jīng)存在的共享服務(wù),若該共 享服務(wù)不存在,則創(chuàng)建一個新的共享服務(wù);根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù),對于外部 服務(wù)引用,創(chuàng)建一個新的外部服務(wù)引用。
[0071] 本發(fā)明一實施例中,如圖5所示的方法進(jìn)一步包括:在系統(tǒng)停止時,根據(jù)應(yīng)用與服 務(wù)綁定的順序,按照反向順序解除應(yīng)用與服務(wù)的綁定關(guān)系,并停止相應(yīng)的服務(wù)和應(yīng)用。
[0072] 下面通過一個具體的示例來詳細(xì)說明如圖5所示的實施例。用戶A是不具有部署 專業(yè)技能的用戶,專業(yè)人員B是具有部署專業(yè)技能的用戶。專業(yè)人員B事先會進(jìn)行一次應(yīng) 用1的部署。通過如圖4所示的實施例,通過記錄專業(yè)人員B對于應(yīng)用1的部署可以得到 應(yīng)用1的模型a。用戶A通過界面選擇需要部署應(yīng)用1,此時根據(jù)圖5所示的實施例,會獲 取應(yīng)用1的模型a。模型a中例如按照順序存儲著:應(yīng)用1的名稱xl、應(yīng)用1的標(biāo)識idl、 指令N1、指令N2、服務(wù)1的名稱x2、服務(wù)1的版本v2、指令N3、服務(wù)2的名稱x3、服務(wù)2的 版本v3、指令N4、綁定配置pi。其中指令N1為將名稱為xl、標(biāo)識為idl的應(yīng)用發(fā)布到運行 環(huán)境;指令N2為創(chuàng)建名稱為x2、版本為v2的專用服務(wù);指令N3為在服務(wù)目錄中查找名稱 為x3、版本為v3的共享服務(wù),響應(yīng)于未找到創(chuàng)建名稱為x3、版本為v3的服務(wù);指令Μ為執(zhí) 行名稱為pl的綁定。按照模型中存儲的指令的順序,創(chuàng)建服務(wù)1、服務(wù)2,并將服務(wù)1和服 務(wù)2綁定到應(yīng)用1,從而實現(xiàn)了應(yīng)用1的自動部署。
[0073] 如圖6所示,本發(fā)明一實施例提供了一種用于在云計算環(huán)境中部署復(fù)合應(yīng)用的方 法。該復(fù)合應(yīng)用至少包括兩個子應(yīng)用,第一子應(yīng)用和第二子應(yīng)用。該方法包括:步驟610,獲 取按照上述方法實施例或其組合得到的第一子應(yīng)用的模型;步驟620,獲取按照上述方法 實施例或其組合得到的第二子應(yīng)用的模型;步驟630,根據(jù)第一子應(yīng)用的模型中的拓?fù)湓?數(shù)據(jù)和第二子應(yīng)用的模型中的拓?fù)湓獢?shù)據(jù)生成復(fù)合應(yīng)用的生命周期管理信息;步驟640, 將第一子應(yīng)用的模型、第二子應(yīng)用的模型和復(fù)合應(yīng)用的生命周期管理信息存儲為該復(fù)合應(yīng) 用的模型以用于該符合應(yīng)用的部署。本實施例中,步驟610和步驟620之間沒有特定的執(zhí) 行順序。本發(fā)明一實施例中,復(fù)合應(yīng)用的生命周期管理信息例如包括以下至少之一:第一子 應(yīng)用、第二子應(yīng)用,第一子應(yīng)用和第二子應(yīng)用所需的服務(wù)的創(chuàng)建、啟動、停止、更新和刪除。 通過如圖6所示的實施例提供的方法,可以得到復(fù)合應(yīng)用的模型,方便用戶部署復(fù)合應(yīng)用。 并且,若已經(jīng)存在了第一子應(yīng)用或者第二子應(yīng)用的模型,采用本實施例提供的方法,可以直 接獲取存儲好的模型,通過生成復(fù)合應(yīng)用的生命周期管理信息得到復(fù)合應(yīng)用的模型,簡化 了具有多個子應(yīng)用模塊的復(fù)合應(yīng)用的部署過程,充分利用了已經(jīng)存在的資源。例如,應(yīng)用W 包括兩個子應(yīng)用,一個是查詢帳戶信息的子應(yīng)用X,一個是管理帳戶信息的子應(yīng)用y。由于 用戶已經(jīng)部署過子應(yīng)用X,所以存在子應(yīng)用X的模型?,F(xiàn)在只需要部署一次子應(yīng)用y,就可 以得到子應(yīng)用y的模型。這樣,獲取子應(yīng)用X和y的模型,并生成應(yīng)用W的生命周期管理信 息,就可以存儲X和y的模型以及應(yīng)用W的生命周期管理信息形成應(yīng)用W的模型。這樣在 需要部署應(yīng)用W的時候可以根據(jù)其模型實現(xiàn)自動部署。模塊化的形成復(fù)合應(yīng)用的模型可以 提高用戶感受,方便用戶部署大型的、子應(yīng)用多的各種復(fù)合應(yīng)用。并且,模塊化的形成復(fù)合 應(yīng)用的模型可以使得已經(jīng)存在的子應(yīng)用的模型得到重用,減少了再次生成子應(yīng)用所需要的 人力資源。
[0074] 本發(fā)明上述實施例之間可以彼此參照、結(jié)合,得到更多的實施例,此處不再贅述。
[0075] 本發(fā)明一實施例提供了一種用于在云計算環(huán)境中部署應(yīng)用的系統(tǒng),該系統(tǒng)能夠執(zhí) 行上述方法實施例。以下通過圖7-10,詳細(xì)說明該系統(tǒng)的各種實現(xiàn)方式。
[0076] 如圖7所示,本發(fā)明實施例提供了一種用于在云計算環(huán)境中部署應(yīng)用的系統(tǒng)700。 該系統(tǒng)700包括:收集模塊710,被配置為在用戶部署應(yīng)用時,收集與部署應(yīng)用相關(guān)的元數(shù) 據(jù)以及指令;存儲模塊720,被配置為將收集到的元數(shù)據(jù)和指令存儲為模型以用于該應(yīng)用 的再次部署。本實施例中,所述元數(shù)據(jù)包括服務(wù)元數(shù)據(jù)、應(yīng)用元數(shù)據(jù)以及拓?fù)湓獢?shù)據(jù),其中, 所述服務(wù)元數(shù)據(jù)包括與部署該應(yīng)用所需要的服務(wù)相關(guān)的元數(shù)據(jù),所述應(yīng)用元數(shù)據(jù)包括與該 應(yīng)用相關(guān)的元數(shù)據(jù),拓?fù)湓獢?shù)據(jù)包括表示所述服務(wù)與所述應(yīng)用之間關(guān)系的元數(shù)據(jù)。具體的, 服務(wù)元數(shù)據(jù)、應(yīng)用元數(shù)據(jù)和拓?fù)湓獢?shù)據(jù)的描述和舉例可以參照方法實施例,此處不再贅述。 通過本實施例提供的系統(tǒng)700可以幫助非專業(yè)人員實現(xiàn)自動的應(yīng)用部署,降低了部署應(yīng)用 的專業(yè)技能需求,并且避免了重復(fù)部署所花費的資源。
[0077] 本發(fā)明一實施例中,存儲模塊720進(jìn)一步被配置為,按照所述用戶部署該應(yīng)用的 操作順序,將收集到的元數(shù)據(jù)和指令存儲起來形成模型以用于該應(yīng)用的再次部署。
[0078] 本發(fā)明一實施例中,如圖8所示,存儲模塊720包括以下子模塊中的至少一個: 第一去除子模塊721,被配置為對收集到的元數(shù)據(jù)和指令進(jìn)行分析,去除冗余的元數(shù)據(jù)和 指令,并按照所述用戶部署該應(yīng)用的操作順序,將去除冗余后的元數(shù)據(jù)和指令存儲起來形 成模型以用于該應(yīng)用的再次部署;第二去除子模塊722,被配置為按照所述用戶部署該應(yīng) 用的操作順序,將收集到的元數(shù)據(jù)和指令存儲起來,并對存儲起來的元數(shù)據(jù)和指令進(jìn)行分 析,去除冗余的元數(shù)據(jù)和指令形成模型以用于該應(yīng)用的再次部署;第一合并子模塊723,被 配置為對收集到的元數(shù)據(jù)和指令進(jìn)行分析,合并無效的元數(shù)據(jù)和指令,并按照所述用戶部 署該應(yīng)用的操作順序,將合并后的元數(shù)據(jù)和指令存儲起來形成模型以用于該應(yīng)用的再次部 署;第二合并子模塊724,被配置為按照所述用戶部署該應(yīng)用的操作順序,將收集到的元數(shù) 據(jù)和指令存儲起來,并對存儲起來的元數(shù)據(jù)和指令進(jìn)行分析,合并無效的元數(shù)據(jù)和指令形 成模型以用于該應(yīng)用的再次部署。本領(lǐng)域技術(shù)人員可以理解,在上述子模塊均存在的情況 下,可以僅啟用部分的子模塊,也可以全部啟用。在全部啟用的情況下,每個子模塊可以處 理相同的對象也可以處理不同的對象。
[0079] 本發(fā)明一實施例中,如圖7所示的實施例還可以包括更新模塊,被配置為:響應(yīng)于 所述用戶向已經(jīng)部署完畢的所述應(yīng)用再進(jìn)行部署相關(guān)操作,收集該操作涉及的元數(shù)據(jù)和指 令,并將該操作涉及的元數(shù)據(jù)和指令更新到所述模型,其中所述操作涉及的元數(shù)據(jù)包括該 操作涉及的服務(wù)元數(shù)據(jù)、該操作涉及的應(yīng)用元數(shù)據(jù)以及該操作涉及的拓?fù)湓獢?shù)據(jù)中的至少 一個。
[0080] 如圖9所示,本發(fā)明一實施例提供了一種用于在云計算環(huán)境中部署應(yīng)用的系統(tǒng) 900。該系統(tǒng)900包括:獲取模塊910,被配置為獲取模型,該模型為根據(jù)上述方法實施例或 者由上述裝置實施例得到的模型;服務(wù)模塊920,被配置為根據(jù)模型中的指令和服務(wù)元數(shù) 據(jù)準(zhǔn)備部署該應(yīng)用所需的服務(wù);應(yīng)用模塊930,被配置為根據(jù)模型中的指令和應(yīng)用元數(shù)據(jù) 將該應(yīng)用發(fā)布到運行環(huán)境;綁定模塊940,被配置為根據(jù)模型中的指令和拓?fù)湓獢?shù)據(jù)將準(zhǔn) 備好的服務(wù)綁定到應(yīng)用。本實施例中,服務(wù)模塊920與綁定模塊940之間的工作合作可以 是服務(wù)模塊920每準(zhǔn)備好一個服務(wù),綁定模塊940就進(jìn)行綁定,也可以是服務(wù)模塊920準(zhǔn)備 好多個服務(wù)之后,綁定模塊940將多個服務(wù)綁定到應(yīng)用。通過本實施例提供的系統(tǒng)900,可 以實現(xiàn)應(yīng)用的自動部署,避免了重復(fù)部署的人力消耗,并且能夠降低部署應(yīng)用的技能需求。
[0081] 本發(fā)明一實施例中,綁定模塊940進(jìn)一步被配置為,根據(jù)所述模型中的指令和拓 撲元數(shù)據(jù)按照所述模型中指令的順序,將準(zhǔn)備好的服務(wù)綁定到該應(yīng)用。
[0082] 本發(fā)明一實施例中,服務(wù)模塊920進(jìn)一步被配置為,根據(jù)所述模型中的指令和服 務(wù)元數(shù)據(jù)按照所述模型中指令的順序,準(zhǔn)備部署該應(yīng)用所需的服務(wù)。
[0083] 本發(fā)明一實施例中,服務(wù)模塊920包括以下子模塊之一或其任意組合:專用子模 塊,被配置為根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù),對于專用服務(wù),創(chuàng)建一個新的專用服 務(wù);共享子模塊,被配置為根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù),對于共享服務(wù),若該共享 服務(wù)已經(jīng)存在,則使用該已經(jīng)存在的共享服務(wù),若該共享服務(wù)不存在,則創(chuàng)建一個新的共享 服務(wù);以及外部子模塊,被配置為根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù),對于外部服務(wù)引 用,創(chuàng)建一個新的外部服務(wù)引用。
[0084] 如圖10所示,本發(fā)明實施例提供了一種用于在云計算環(huán)境中部署復(fù)合應(yīng)用的系 統(tǒng)1000。其中復(fù)合應(yīng)用至少包括第一自應(yīng)用和第二子應(yīng)用。系統(tǒng)1000包括:獲取模塊1010, 被配置為獲取第一子應(yīng)用和第二子應(yīng)用的模型,其中第一子應(yīng)用和第二子應(yīng)用的模型根據(jù) 上述方法實施例或者裝置實施例得到;生命周期管理模塊1020,被配置為根據(jù)所述第一子 應(yīng)用的模型中的拓?fù)湓獢?shù)據(jù)和所述第二子應(yīng)用的模型中的拓?fù)湓獢?shù)據(jù)生成所述復(fù)合應(yīng)用 的生命周期管理信息;存儲模塊1030,被配置為將所述第一子應(yīng)用的模型、所述第二子應(yīng) 用的模型以及所述生命周期管理信息存儲為所述復(fù)合應(yīng)用的模型以用于所述復(fù)合應(yīng)用的 部署。通過本實施例提供的系統(tǒng)1000,用戶可以復(fù)用已經(jīng)存在的子應(yīng)用的模板從而得到復(fù) 合應(yīng)用的模板,實現(xiàn)復(fù)合應(yīng)用的部署,避免了復(fù)合應(yīng)用部署的重復(fù)工作,也降低了部署復(fù)合 應(yīng)用的技能需求。
[0085] 上述裝置實施例中的實現(xiàn)細(xì)節(jié)可以參照相應(yīng)的方法實施例。并且,上述裝置實施 例之間可以彼此參照得到更多的示例。
[0086] 附圖中的流程圖和框圖顯示了根據(jù)本發(fā)明的多個實施例的系統(tǒng)、方法和計算機程 序產(chǎn)品的可能實現(xiàn)的體系架構(gòu)、功能和操作。在這點上,流程圖或框圖中的每個方框可以 代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個 用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應(yīng)當(dāng)注意,在有些作為替換的實現(xiàn)中,方框中所 標(biāo)注的功能也可以以不同于附圖中所標(biāo)注的順序發(fā)生。例如,兩個連續(xù)的方框?qū)嶋H上可以 基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的 是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行 規(guī)定的功能或操作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的 組合來實現(xiàn)。
[0087] 以上已經(jīng)描述了本發(fā)明的各實施例,上述說明是示例性的,并非窮盡性的,并且也 不限于所披露的各實施例。在不偏離所說明的各實施例的范圍和精神的情況下,對于本技 術(shù)領(lǐng)域的普通技術(shù)人員來說許多修改和變更都是顯而易見的。本文中所用術(shù)語的選擇,旨 在最好地解釋各實施例的原理、實際應(yīng)用或?qū)κ袌鲋械募夹g(shù)的技術(shù)改進(jìn),或者使本技術(shù)領(lǐng) 域的其它普通技術(shù)人員能理解本文披露的各實施例。
【權(quán)利要求】
1. 一種用于在云計算環(huán)境中部署應(yīng)用的方法,所述方法包括: 在用戶部署應(yīng)用時,收集與部署應(yīng)用相關(guān)的元數(shù)據(jù)以及指令,所述元數(shù)據(jù)包括服務(wù)元 數(shù)據(jù)、應(yīng)用元數(shù)據(jù)以及拓?fù)湓獢?shù)據(jù),其中,所述服務(wù)元數(shù)據(jù)包括與部署該應(yīng)用所需要的服務(wù) 相關(guān)的元數(shù)據(jù),所述應(yīng)用元數(shù)據(jù)包括與該應(yīng)用相關(guān)的元數(shù)據(jù),拓?fù)湓獢?shù)據(jù)包括表示所述服 務(wù)與所述應(yīng)用之間關(guān)系的元數(shù)據(jù); 將收集到的元數(shù)據(jù)和指令存儲為模型以用于該應(yīng)用的再次部署。
2. 根據(jù)權(quán)利要求1所述的方法,其中, 所述服務(wù)元數(shù)據(jù)包括以下之一或其任意組合:服務(wù)的類型、服務(wù)的名稱、服務(wù)的ID、月艮 務(wù)的版本和服務(wù)的配置; 所述應(yīng)用元數(shù)據(jù)包括以下之一或其任意組合:應(yīng)用的類型、應(yīng)用的名稱、應(yīng)用的ID和 應(yīng)用的配置; 所述拓?fù)湓獢?shù)據(jù)包括以下之一或其任意組合:應(yīng)用的ID、服務(wù)的ID、應(yīng)用的名稱、服務(wù) 的名稱、綁定配置以及綁定策略。
3. 根據(jù)權(quán)利要求1所述的方法,其中,所述將收集到的元數(shù)據(jù)和指令存儲為模型以用 于該應(yīng)用的再次部署,包括:按照所述用戶部署該應(yīng)用的操作順序,將收集到的元數(shù)據(jù)和指 令存儲起來形成模型以用于該應(yīng)用的再次部署。
4. 根據(jù)權(quán)利要求1所述的方法,其中,所述將收集到的元數(shù)據(jù)和指令存儲為模型以用 于該應(yīng)用的再次部署,包括以下至少之一: 對收集到的元數(shù)據(jù)和指令進(jìn)行分析,去除冗余的元數(shù)據(jù)和指令; 按照所述用戶部署該應(yīng)用的操作順序,將去除冗余后的元數(shù)據(jù)和指令存儲起來形成模 型以用于該應(yīng)用的再次部署;以及 按照所述用戶部署該應(yīng)用的操作順序,將收集到的元數(shù)據(jù)和指令存儲起來;對存儲起 來的元數(shù)據(jù)和指令進(jìn)行分析,去除冗余的元數(shù)據(jù)和指令形成模型以用于該應(yīng)用的再次部 署; 對收集到的元數(shù)據(jù)和指令進(jìn)行分析,合并無效的元數(shù)據(jù)和指令;按照所述用戶部署該 應(yīng)用的操作順序,將合并后的元數(shù)據(jù)和指令存儲起來形成模型以用于該應(yīng)用的再次部署; 按照所述用戶部署該應(yīng)用的操作順序,將收集到的元數(shù)據(jù)和指令存儲起來;對存儲起 來的元數(shù)據(jù)和指令進(jìn)行分析,合并無效的元數(shù)據(jù)和指令形成模型以用于該應(yīng)用的再次部 署。
5. 根據(jù)權(quán)利要求1所述的方法,其中,所述方法進(jìn)一步包括:響應(yīng)于所述用戶向已經(jīng)部 署完畢的所述應(yīng)用再進(jìn)行部署相關(guān)操作,收集該操作涉及的元數(shù)據(jù)和指令,并將該操作涉 及的元數(shù)據(jù)和指令更新到所述模型,其中所述操作涉及的元數(shù)據(jù)包括該操作涉及的服務(wù)元 數(shù)據(jù)、該操作涉及的應(yīng)用元數(shù)據(jù)以及該操作涉及的拓?fù)湓獢?shù)據(jù)中的至少一個。
6. -種用于在云計算環(huán)境中部署應(yīng)用的方法,所述方法包括: 獲取按照權(quán)利要求1-5中任一項所述的方法得到的模型; 根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù)準(zhǔn)備部署該應(yīng)用所需的服務(wù); 根據(jù)所述模型中的指令和應(yīng)用元數(shù)據(jù)將該應(yīng)用發(fā)布到運行環(huán)境; 根據(jù)所述模型中的指令和拓?fù)湓獢?shù)據(jù)將準(zhǔn)備好的服務(wù)綁定到該應(yīng)用。
7. 根據(jù)權(quán)利要求6所述的方法,其中, 所述根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù)準(zhǔn)備部署該應(yīng)用所需的服務(wù),包括:根據(jù)所 述模型中的指令和服務(wù)元數(shù)據(jù)按照所述模型中指令的順序,準(zhǔn)備部署該應(yīng)用所需的服務(wù); 所述根據(jù)所述模型中的指令和拓?fù)湓獢?shù)據(jù)將準(zhǔn)備好的服務(wù)綁定到該應(yīng)用,包括:根據(jù) 所述模型中的指令和拓?fù)湓獢?shù)據(jù)按照所述模型中指令的順序,將準(zhǔn)備好的服務(wù)綁定到該應(yīng) 用。
8. 根據(jù)權(quán)利要求6所述的方法,其中,所述根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù)準(zhǔn)備 部署該應(yīng)用所需的服務(wù),包括以下之一或其任意組合: 根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù),對于專用服務(wù),創(chuàng)建一個新的專用服務(wù); 根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù),對于共享服務(wù),若該共享服務(wù)已經(jīng)存在,則使用 該已經(jīng)存在的共享服務(wù),若該共享服務(wù)不存在,則創(chuàng)建一個新的共享服務(wù); 根據(jù)所述模型中的指令和服務(wù)元數(shù)據(jù),對于外部服務(wù)引用,創(chuàng)建一個新的外部服務(wù)引 用。
9. 一種用于在云計算環(huán)境中部署復(fù)合應(yīng)用的方法,所述復(fù)合應(yīng)用至少包括第一子應(yīng)用 和第二子應(yīng)用,所述方法包括: 獲取按照權(quán)利要求1-5中任一項所述的方法得到的所述第一子應(yīng)用的模型; 獲取按照權(quán)利要求1-5中任一項所述的方法得到的所述第二子應(yīng)用的模型; 根據(jù)所述第一子應(yīng)用的模型中的拓?fù)湓獢?shù)據(jù)和所述第二子應(yīng)用的模型中的拓?fù)湓獢?shù) 據(jù)生成所述復(fù)合應(yīng)用的生命周期管理信息; 將所述第一子應(yīng)用的模型、所述第二子應(yīng)用的模型以及所述生命周期管理信息存儲為 所述復(fù)合應(yīng)用的模型以用于所述復(fù)合應(yīng)用的部署。
10. -種用于在云計算環(huán)境中部署應(yīng)用的系統(tǒng),所述系統(tǒng)能夠執(zhí)行權(quán)利要求1-9中任 一項所述的方法。
【文檔編號】H04L29/08GK104253831SQ201310259539
【公開日】2014年12月31日 申請日期:2013年6月26日 優(yōu)先權(quán)日:2013年6月26日
【發(fā)明者】楊博, 毛新生, 譚佳, 李彤 申請人:國際商業(yè)機器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
炎陵县| 乐亭县| 景宁| 晋江市| 江源县| 永昌县| 鱼台县| 垦利县| 临潭县| 平罗县| 米泉市| 乳山市| 永新县| 泸州市| 江都市| 乌兰县| 衡阳市| 南溪县| 鄂伦春自治旗| 定州市| 滦南县| 内江市| 石楼县| 上栗县| 西平县| 收藏| 惠安县| 拉萨市| 故城县| 黔西| 施秉县| 博湖县| 泰兴市| 庆安县| 井研县| 台北县| 桐梓县| 北京市| 通城县| 汉寿县| 舒兰市|