云計算開啟對可配置的計算資源的共享池的無所不在的按需網(wǎng)絡(luò)訪問,可配置的計算資源可以快速地被提供并且以最小的管理努力或服務(wù)提供者交互被釋放。該資源可以包括例如處理、服務(wù)器、存儲、應(yīng)用、網(wǎng)絡(luò)帶寬和服務(wù)。傳統(tǒng)的云模型提供按需自服務(wù)、寬帶網(wǎng)絡(luò)訪問、資源池、快速的彈性和測量的服務(wù)。在不要求服務(wù)提供者交互的情況下,云消費者單方面地根據(jù)需要提供計算能力。云服務(wù)在公共網(wǎng)絡(luò)和/或私有網(wǎng)絡(luò)上是可用的并且使用標(biāo)準(zhǔn)機制被訪問。云提供者的計算資源被集中,使得其可以被用于通過根據(jù)消費者需求(即,多租戶)動態(tài)地分配和重新分配物理和虛擬資源來服務(wù)多個消費者。
云消費者通常不具有關(guān)于可以由一個或多個分布式數(shù)據(jù)中心支持的所提供的資源的位置的控制或知識。云服務(wù)彈性地被提供并且被釋放以隨著需求快速縮放。因此,能力可以對于消費者表現(xiàn)為無限的并且可用于在任何時間以任何數(shù)量進(jìn)行提供。云服務(wù)通過利用適于服務(wù)的類型的計量能力來自動地控制和優(yōu)化資源使用。
可以向云注冊任何數(shù)目的附加資源,只要新的服務(wù)符合在云系統(tǒng)中使用的標(biāo)準(zhǔn)應(yīng)用編程接口(API)合約。然而,被加載到公共或私有云的服務(wù)當(dāng)前要求手工處理。例如,為了提供云中的新的多租戶服務(wù),服務(wù)必須首先被安裝、被分配運行時間等。一旦完全安裝,那么某人必須手動地注冊和批準(zhǔn)服務(wù)統(tǒng)一資源標(biāo)識符(URI)、證書和其他憑證。此外,必須聲明服務(wù)的能力(諸如資源類型、版本號等)。當(dāng)組織想要將新的多租戶服務(wù)安裝在其自身的私有云或托管的公共云中時,這些要求特別地是不方便的。
技術(shù)實現(xiàn)要素:
提供該概述以引入以在詳細(xì)描述中下文進(jìn)一步描述的簡化形式的概念的選擇。該概述不旨在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或基本特征,其也不旨在被用于限制所要求保護(hù)的主題的范圍。
本發(fā)明的實施例提供了組合云系統(tǒng)中的服務(wù)安裝和服務(wù)注冊的能力。該過程將多租戶服務(wù)安裝減少到單步過程。例如,云系統(tǒng)管理員可以簡單地安裝新的服務(wù),并且自動地完成注冊作為安裝的一部分。
由于注冊被綁定到新的服務(wù),更新(諸如重新配置)是較不易于出錯的。例如,當(dāng)更新管理端點的憑證時,更新所有相關(guān)資源。特別地,更新服務(wù)注冊,以在不要求額外手動步驟的情況下反映新的配置。
這還考慮作為單步操作的服務(wù)刪除。該云系統(tǒng)可以驗證是否正在使用服務(wù)并且如果其仍然由租戶使用則防止服務(wù)的刪除。在服務(wù)刪除被證實之后(即,服務(wù)未在使用中),在一個步驟中從云移除并且去注冊服務(wù)。
附圖說明
為了進(jìn)一步澄清本發(fā)明的實施例的以上和其他優(yōu)點和特征,將通過參考附圖提供本發(fā)明的實施例的更特定描述。將理解到,這些附圖僅描繪本發(fā)明的典型實施例并且因此將不被認(rèn)為是對其范圍的限制。將通過使用附圖以附加特殊性和細(xì)節(jié)描述和解釋本發(fā)明,在附圖中:
圖1是向企業(yè)用戶提供對本地內(nèi)部部署資源和遠(yuǎn)程或公共資源的訪問的系統(tǒng)的高級框圖。
圖2是根據(jù)一個實施例的提供云計算服務(wù)或分布式計算服務(wù)的數(shù)據(jù)中心的框圖。
圖3圖示了用于與示例實施例一起使用的資源管理器清單或模板。
圖4是用于將新的服務(wù)添加到云系統(tǒng)的訂閱管理服務(wù)的部件的框圖。
圖5是用于將多租戶服務(wù)安裝在分布式計算或云系統(tǒng)中的方法的示例實施例的流程圖。
具體實施方式
圖1是向企業(yè)用戶提供對本地內(nèi)部部署資源和遠(yuǎn)程或公共資源的訪問的系統(tǒng)的高級框圖。本地企業(yè)終端101允許用戶經(jīng)由內(nèi)部部署網(wǎng)絡(luò)103直接訪問內(nèi)部部署數(shù)據(jù)中心102。位于企業(yè)100外部的用戶可以使用遠(yuǎn)程終端104訪問內(nèi)部部署數(shù)據(jù)中心102。終端101和104可以是例如臺式、膝上型、筆記本或平板計算機。其他設(shè)備(諸如專用終端、智能電話、個人數(shù)字助理(PDA)等)也可以用作終端101和104。
防火墻105為企業(yè)100提供網(wǎng)絡(luò)安全系統(tǒng)并且控制輸入和輸出網(wǎng)絡(luò)流量。外部終端104可以經(jīng)由因特網(wǎng)106或任何公共或私有網(wǎng)絡(luò)連接到企業(yè)內(nèi)部部署網(wǎng)絡(luò)103。如果終端104提供適當(dāng)?shù)膽{證和認(rèn)證,則防火墻105允許終端104訪問內(nèi)部部署數(shù)據(jù)中心102。在終端101和104處的企業(yè)用戶還可以經(jīng)由因特網(wǎng)106訪問公共數(shù)據(jù)中心107。
內(nèi)部部署數(shù)據(jù)中心102和公共數(shù)據(jù)中心107可以將“云計算”服務(wù)提供給企業(yè)100和其他用戶。通過使企業(yè)用戶免于管理信息技術(shù)(IT)基礎(chǔ)設(shè)施,云計算以低成本提供實際上無限的計算、存儲和網(wǎng)絡(luò)資源,同時允許服務(wù)按需縮放。
圖2是根據(jù)一個實施例的提供云計算服務(wù)或分布式計算服務(wù)的數(shù)據(jù)中心200的框圖。多個服務(wù)器201由數(shù)據(jù)中心管理控制器202管理。負(fù)載均衡器203將請求和工作量分布在服務(wù)器201上,以避免其中單個服務(wù)器201變得不堪重負(fù)的情況,并且最大化數(shù)據(jù)中心200中的資源的可用容量和性能。路由器/交換機204經(jīng)由外部網(wǎng)絡(luò)205支持服務(wù)器201之間和數(shù)據(jù)中心200與外部資源、用戶之間的數(shù)據(jù)業(yè)務(wù),外部網(wǎng)絡(luò)205可以是企業(yè)內(nèi)部部署數(shù)據(jù)中心102的情況下的局域網(wǎng)(LAN)或在公共數(shù)據(jù)中心(107)的情況中的因特網(wǎng)。
服務(wù)器201可以是傳統(tǒng)的獨立計算設(shè)備和/或其可以被配置為多個服務(wù)器設(shè)備的機架中的個體刀片。服務(wù)器201具有與其他數(shù)據(jù)庫實體通信的輸入/輸出(I/O)連接器。每個服務(wù)器201上的一個或多個主機處理器運行支持多個虛擬機(VM)的主機操作系統(tǒng)(O/S)。每個VM可以運行其自身的O/S,使得服務(wù)器上的每個VM的O/S不同或相同或兩者的混合。VM的O/S可以是例如相同O/S的不同的版本(例如,不同的VM運行操作系統(tǒng)的不同的當(dāng)前版本和舊的版本)。附加地或者備選地,可以通過不同的制造商(例如,一些VM運行操作系統(tǒng),同時其他VM運行操作系統(tǒng))提供VM的O/S。每個VM可以然后運行一個或多個應(yīng)用(App)。每個服務(wù)器還包括可以由主機處理器和VM訪問并使用的存儲裝置(例如,硬盤驅(qū)動器(HDD)和存儲器(例如,RAM))。
云計算是將計算能力遞送為服務(wù),這使與來自水龍頭的水一樣可用的IT資源(計算能力、聯(lián)網(wǎng)和存儲)的訪問。與任何實用程序一樣,你通常僅支付你利用云計算使用的那些。通過接進(jìn)云服務(wù),你可以在不必昂貴地建造、管理或維持復(fù)雜的IT構(gòu)造塊的情況下利用海量數(shù)據(jù)中心的能力。利用云服務(wù),提取IT的許多復(fù)雜性,這讓你僅聚焦于真實地對你的商業(yè)重要的基礎(chǔ)設(shè)施、數(shù)據(jù)和應(yīng)用開發(fā)。
數(shù)據(jù)中心200提供在其中消費者或租戶可以在不必添加更多服務(wù)器或附加聯(lián)網(wǎng)的情況下根據(jù)需要動態(tài)地提供和縮放應(yīng)用的集中資源。這允許租戶在不必獲得、提供和管理每應(yīng)用自組網(wǎng)基礎(chǔ)上的基礎(chǔ)設(shè)施的情況下獲得其需要的計算資源。云計算數(shù)據(jù)中心200允許租戶動態(tài)地按比例放大或按比例縮小資源來滿足其商業(yè)的當(dāng)前需要。此外,數(shù)據(jù)中心操作者可以將基于使用的服務(wù)提供給租戶,使得當(dāng)其需要使用它們時,其僅支付其使用的資源。例如,租戶可以初始地使用服務(wù)器201-1上的一個VM運行其應(yīng)用。當(dāng)需求增加時,數(shù)據(jù)中心可以根據(jù)需要激活相同服務(wù)器和/或新服務(wù)器201-N上的附加的VM。如果需求稍后下降,則可以去激活這些附加的VM。
數(shù)據(jù)中心200可以提供保證的可用性、災(zāi)難恢復(fù)和備份服務(wù)。例如,數(shù)據(jù)中心可以將服務(wù)器201-1上的一個VM指派為針對租戶的應(yīng)用的主位置,并且在第一VM或服務(wù)器201-1發(fā)生故障的情況下可以將相同或不同的服務(wù)器上的第二VM激活為備用或備份。數(shù)據(jù)庫管理器202在不要求租戶介入的情況下自動地使輸入用戶請求從主VM移動到備份VM。盡管數(shù)據(jù)中心200被圖示為單個位置,但是將理解到,服務(wù)器201可以被分布到跨越全球的多個位置以提供附加的冗余和災(zāi)難恢復(fù)能力。
數(shù)據(jù)中心操作者可以將不同水平的云計算服務(wù)提供給租戶。利用基礎(chǔ)設(shè)施即服務(wù)(IaaS)提供,較低水平的IT堆棧被遞送為服務(wù),其使開發(fā)者免于提供物理機器和配置網(wǎng)絡(luò)的許多復(fù)雜性。利用IaaS,租戶可以容易地提供高度可擴展和可用的云環(huán)境中的虛擬機,開發(fā)和測試方案,然后將應(yīng)用部署到生產(chǎn)。利用平臺即服務(wù)(PaaS)提供,通過運行時間提供來自網(wǎng)絡(luò)連接性的所有東西。PAAS通過為應(yīng)用服務(wù)提供附加支持和操作系統(tǒng)的管理(包括更新)使得開發(fā)容易。利用PaaS,租戶可以集中于應(yīng)用的商業(yè)邏輯并且迅速地將應(yīng)用從概念移動到啟動。利用軟件即服務(wù)(SaaS)提供,單個完成的應(yīng)用或應(yīng)用組可以通過web瀏覽器被遞送給用戶,從而消除其管理包括應(yīng)用代碼的IT堆棧的低層部件的需要。
再參考圖1,企業(yè)可以使用公共數(shù)據(jù)中心或公共云計算服務(wù)以利用成本節(jié)省、降低的管理要求或所提供的特定服務(wù)。另一方面,企業(yè)還可以使用內(nèi)部部署數(shù)據(jù)中心或私有云服務(wù)來確保數(shù)據(jù)安全性或使用例如專有應(yīng)用。將理解到,企業(yè)不必使用內(nèi)部部署數(shù)據(jù)中心以利用私有云服務(wù)。相反,可以通過限制對企業(yè)的訪問的數(shù)據(jù)中心提供私有云服務(wù)。由企業(yè)造成的公共云服務(wù)和私有云服務(wù)兩者的使用通常被稱為混合云。
組織可以管理針對云的其自身的基于云的服務(wù)、計劃和訂閱。例如,組織管理員可以選擇通過從預(yù)定義服務(wù)的庫選擇服務(wù)來安裝新的多租戶服務(wù)。從庫下載描述服務(wù)的包(諸如Azure資源管理器(ARM)包)。CSM引擎打開來自包的模板并且對服務(wù)和所有必要的端點進(jìn)行部署和配置。在這時候,在現(xiàn)有系統(tǒng)中,管理員將需要轉(zhuǎn)到資源提供者注冊用戶接口(UI)或API并且對新安裝的服務(wù)進(jìn)行注冊。本發(fā)明的實施例對該體驗進(jìn)行改進(jìn)并且消除了傳統(tǒng)的手動注冊步驟。
如下文更詳細(xì)描述的,訂閱管理服務(wù)被修改為暴露在本文中被稱為“注冊資源提供者”資源的特殊資源類型,其看起來并且表現(xiàn)為如云中的任何其他資源那樣。多租戶服務(wù)的開發(fā)者可以包括用于服務(wù)的CSM模板中的注冊資源提供者資源并且將服務(wù)的特性(例如,URI、憑證等)與包的剩余部分相關(guān)聯(lián)。當(dāng)包由組織的管理員部署時,其創(chuàng)建注冊資源提供者資源作為服務(wù)的部署剩余的一部分。當(dāng)注冊資源提供者資源被部署到訂閱管理服務(wù)中時,其向云注冊新安裝的服務(wù)。
注冊資源提供者資源對服務(wù)管理命名空間進(jìn)行注冊并且使服務(wù)管理可用于用戶或組織。使能API呼叫路由,并且服務(wù)管理經(jīng)驗可以被加載到管理控制臺中。
一旦新的服務(wù)由注冊資源提供者資源注冊,服務(wù)就被包括到可以被提供給組織的租戶的計劃中。
此外,服務(wù)可以被包括到由組織對租戶標(biāo)價出售的計劃中。組織的計劃自動地被更新為包括新注冊的服務(wù),并且新安裝的服務(wù)變?yōu)閷Π惭b服務(wù)的組織管理員自動可用。
由于服務(wù)注冊同時被部署作為服務(wù)應(yīng)用的剩余部分,因而注冊結(jié)合到服務(wù)的生命周期。例如,當(dāng)刪除服務(wù)時(即,當(dāng)刪除包括該服務(wù)的所有資源時),那么自動地刪除服務(wù)注冊。類似地,當(dāng)更新服務(wù)時(例如,當(dāng)旋轉(zhuǎn)憑證時等),注冊資源被更新為正常重新配置的一部分。
圖3圖示了用于與示例實施例一起使用的資源管理器清單或模板300。例如,模板300可以被用于將SQL服務(wù)添加到組織的云系統(tǒng)。模板300標(biāo)識在云上建立SQL資源提供者所需要的資源(包括資源301和依賴性302的集合)。模板300由資源管理器用于創(chuàng)建和注冊如模板中所定義的新的資源提供者。
在示例模板300中,由資源管理器用于創(chuàng)建新資源提供者的資源包括類型VM的資源和類型注冊的資源304。模板300將VM資源命名為“r1”并且將SQL資源提供者安裝(sqlPR.msi)部署在該VM上。模板300將提供者注冊資源命名為“r2”。依賴性302將資源r2(提供者注冊)定義為依賴于資源r1(VM)。
將理解到,出于說明目的而簡化模板300并且實際的實施方式可以要求未示出在圖3中的其他格式化和句法。在一個示例中,可以以JSON格式書寫模板。
模板300可以被提供給資源管理器,其將理解到用于引導(dǎo)資源管理器創(chuàng)建新的VM資源并且創(chuàng)建針對該新的VM資源的注冊的模板。例如,注冊可以存儲針對注冊表中的新創(chuàng)建的VM資源的統(tǒng)一資源標(biāo)識符(URI)。
圖4是用于將新的服務(wù)添加到云系統(tǒng)的訂閱管理服務(wù)的部件的框圖。資源管理器401接收模板402并且標(biāo)識模板中的資源和依賴性。使用圖3中所示的示例模板300,資源管理器401將確定其需要創(chuàng)建VM資源(r1)和注冊資源(r2),并且注冊資源依賴于VM資源。資源管理器401調(diào)用VM資源提供者403并且引導(dǎo)其創(chuàng)建新的VM 404并且將SQL資源提供者安裝包(sqlRP.msi)在VM 404上。VM資源提供者403對資源管理器401的輸出是針對新的SQL資源提供者404的端點。
資源管理器401然后調(diào)用注冊資源提供者并且引導(dǎo)其創(chuàng)建注冊資源406。由于資源r2依賴于模板300中的資源r1,因而注冊資源將存儲針對新創(chuàng)建的SQL資源提供者404的端點的統(tǒng)一資源標(biāo)識符(URI)。
一旦創(chuàng)建SQL資源提供者404,則云系統(tǒng)可以現(xiàn)在將SQL服務(wù)提供給其租戶。當(dāng)租戶想要開始新的SQL服務(wù)時,資源管理器可以調(diào)用SQL資源提供者404以創(chuàng)建針對該租戶的新的SQL資源。資源管理器401可以參考注冊表406以標(biāo)識針對SQL資源提供者404的當(dāng)前端點。
自動更新過程407監(jiān)視云系統(tǒng)的操作并且檢測針對資源提供者403-405的資源清單的變化。如果自動更新過程407檢測到針對SQL資源提供者404的清單中的變化,那么其將更新注冊表406中的相關(guān)聯(lián)的注冊。例如,如果端點URI、API、版本或資源類型針對SQL資源提供者404改變,那么在注冊表406中更新該信息。取代將值存儲在注冊表中,可以通過引用完成注冊以促進(jìn)更新。
圖5是用于將多租戶服務(wù)安裝在分布式計算或云系統(tǒng)中的方法的示例實施例的流程圖。在步驟501中,向在分布式計算系統(tǒng)上運行的資源管理服務(wù)提供清單。該清單與要被添加到分布式計算系統(tǒng)的新的服務(wù)相關(guān)聯(lián)。在步驟502中,基于清單中的信息,分布式計算系統(tǒng)中的一個或多個資源被分配以支持新的服務(wù)。
在步驟503中,基于清單中的信息,通過注冊資源提供者創(chuàng)建注冊資源。在步驟504中,使用清單中所標(biāo)識的注冊資源來向訂閱管理服務(wù)注冊新的服務(wù)。例如,可以向資源管理器注冊用于新的服務(wù)的端點??梢酝ㄟ^注冊表中的引用對新的服務(wù)進(jìn)行注冊。一旦服務(wù)被安裝并且被注冊,則其可以被提供給分布式計算系統(tǒng)的租戶。
在步驟505中,更新過程監(jiān)視新的服務(wù)并且標(biāo)識對新的服務(wù)的變化。在步驟506中,基于變化來更新針對新的服務(wù)的注冊。
雖然已經(jīng)以特定于結(jié)構(gòu)特征和/或方法動作的語言描述了主題,但是應(yīng)理解到,所附的權(quán)利要求中定義的主題不必限于上文所描述的特定特征或動作。相反,上文所描述的特定特征和動作被公開為實現(xiàn)權(quán)利要求的示例形式。