新四季網

用於計算公共設施的層級式資源管理的製作方法

2023-05-13 23:01:01 2

專利名稱:用於計算公共設施的層級式資源管理的製作方法
技術領域:
本發明涉及計算公共設施(computing utility)中資源的供應和管理,該計算公共設施使用資源來向用戶提供計算服務。本發明更具體地涉及用於計算公共設施的層級式資源管理。
背景技術:
託管(hosted)中心為多個用戶提供計算服務。每一位用戶被分配服務提供者的基礎設施資源例如伺服器的一個子集來滿足其需求。用戶的需求隨時間改變,而且特別是,高峰期的資源需求可能超過資源的平均需求達好幾個量級。簡單的資源靜態分配來滿足高峰期需求會使得資源無法得到充分利用。根據用戶的需求動態地重新配置基礎設施資源,則需要來自管理人員的快速關注,並可能需要移動硬體,從而提高了運營成本和無法提供適當服務的風險。託管中心的問題就是如何對所需服務的改變實現快速反應。託管中心的問題就是如何對用戶需求的改變實現快速反應,從而使得基礎設施資源和員工以一種高效率的和成本高效的方式被使用或。計算公共設施試圖通過自動化在共享的、動態可分配的基礎設施上的多個計算服務的創建和管理來解決這一問題。
先前的計算公共設施中的工作在被提供服務的類型上、被使用的資源上和操作被自動化的程度上各有不同。可進行自動化的操作的範圍很寬,並包括創建服務,為用戶部署服務,修改用於提供服務的資源集,以及將新的資源實例和類型合併到託管中心和它的服務中去。
先前的系統基於諸如伺服器負荷和響應時間等度量來自動化網站中的前端伺服器的供應。它包括一個自動發現伺服器和網絡拓撲的組件。另一種系統則提供了多種多層的網站,其中預先配置的伺服器可以根據諸如伺服器負荷等度量被自動分配到不同的層。另外一種系統也依據伺服器負荷分配伺服器資源,但是建模了向每位用戶分配資源的價值以及使用這些資源的成本這兩者,並強調了能量的成本。更近期的工作包括其他資源類型例如存儲器和存儲設備的分配,以及用於通用目的的伺服器的分配。
在應用層,有些系統具有一個用以部署和管理分布式應用的框架。一個應用被描述成相關的、可重用的組件的一個匯集,這些組件可代表一些資源或子系統。這種描述包含了依賴信息,以確保例如組件以正確的順序被啟動。一旦被部署,應用就可以被監視,並且可以指定當組件或資源發出故障時採取的動作,例如自動故障轉移(failover)或重啟。這樣的系統不會被用於低級的資源配置任務,例如在伺服器上安裝作業系統,而是用於更高級的特定於應用的配置。
越來越多的工業產品瞄準了在包含各種資源的物理基礎設施上提供多層的應用,所述多種資源例如來自Hewlett Packard,ThinkDynamics,SunMicrosystems以及Jareva的產品。它們在很多方面各不相同,例如所提供資源的類型(例如,伺服器和存儲設備);所支持的特定作業系統和中間件;網絡基礎設施的假定和特徵(例如,是否通過VLAN提供網絡的隔離);監視支持的水平(例如,資源利用、故障檢測、SLA、基於閾值的警報);對資源發現的支持;對一旦被部署後修改服務資源的支持;修改是否可以自動發生(例如由SLA觸發);以及產品可以或者必須被定製以適合已有託管中心基礎設施的程度。

發明內容
本發明提供了用於計算基礎設施的層級式供應和管理的方法、裝置、系統和體系結構,用以提供面向服務的、或公共設施計算。它對於託管環境來說是有用的。它經常被提供給擁有基礎設施的服務提供者的用戶。它允許向計算環境動態供應和分配資源。
本發明的一個方面是提供了在具有下述特徵的環境中操作的計算公共設施的一個元素。這些特徵共同概括了在先前的工作中研究的環境。
本發明的另一個方面是提供用於計算公共設施的資源的自動供應和管理。計算公共設施可以被公司、服務提供者或個人使用。本發明允許在多個用戶集中共享資源,並允許將資源限制於特定用戶。它允許用戶將由被管理資源組成的一個或多個服務提供給其客戶。被管理的資源可以隨需被分配給用戶或域。它還允許資源的層級式管理。
在根據本發明的方法的示例性實施例中,該方法包含了為實體提供至少一個域的層級式管理的步驟。該提供層級式管理的步驟包括獲得至少一個域的層級式表示,該表示包括將被管理的計算環境的列表,控制為所述至少一個域從資源庫獲取至少一個資源的至少一個策略,和所述至少一個域內的任何子域;以及實例化該表示。
在根據本發明體系結構的示例性實施例中,用於計算公共設施的體系結構包括用來為多個客戶提供至少一個服務的裝置。該裝置包括基資源分布服務,用來將資源分配給所述至少一個服務;該基資源分布服務有至少一個收集器;至少一個與該基資源分布服務連接的供應和管理資源服務,用來為該至少一個服務供應和管理資源;以及至少一個與該基資源分布服務連接的基資源庫服務,用來提供資源的保留和分配。


本發明的這些以及進一步的方面、優點和特徵將通過下面對一優選實施例的詳細描述以及附圖更加明顯,在附圖中圖1示出了一個託管環境的組件;圖1A示出了一個公司示例性結構;圖2示出了根據本發明的一個計算公共設施管理系統中的組件;圖3示出了根據本發明的一個計算公共設施管理系統中的庫組件的操作;圖4示出了根據本發明的一個計算公共設施內的收集器的層級結構;圖4A示出了根據本發明分配給一個公司的一個單元的應用;圖4B示出了根據本發明圖4A中的應用如何被結構化以便供應;圖5示出了根據本發明的具有多個根收集器的計算公共設施;圖6示出了根據本發明將資源池與匯集相關聯;圖7示出了根據本發明如何在一個計算公共設施內檢驗獲取策略;圖8示出了如何在一個計算公共設施內定位可用資源;圖9示出了根據本發明在一個計算公共設施內供應和管理資源服務(PMRS)與基資源分配服務(BRDS)之間的交互;圖10示出了根據本發明在一個計算公共設施的操作期間收集器如何工作;圖11示出了根據本發明一個新的服務如何被添加到計算公共設施中;圖12示出了根據本發明一個公司內的應用分配;圖13示出了根據本發明與圖12的分配相關聯的收集器層級結構。
具體實施例方式
本發明提供了用於計算基礎設施的層級式供應和管理方法、裝置、系統和體系結構,該計算基礎設施被用來向擁有該基礎設施的服務提供者的用戶提供面向服務的或公共設施計算。以這種方式,託管環境可以從其他託管環境中獲取資源等等。本發明提供了用於計算基礎設施的層級式管理的體系結構,其包括仲裁、供應和管理。它允許向計算環境動態供應和分配資源。用戶可以在他們的域內擁有多個計算環境。該計算公共設施在多個用戶域之間共享它的資源,並在域之間和域內對資源的使用進行仲裁。本發明使得資源能夠專用於特定的用戶域或專用於特定的計算環境。用戶可以指定獲取和分布策略,所述策略控制他們在其域內對來自公共設施的資源的使用。
本發明是計算公共設施的一個元素,該計算公共設施一般來說,但並不一定,在具有以下一個或多個特徵的環境中操作。這些特徵共同概括了在先前的工作中研究的環境。
第一,資源可以在異構的組合中被分配給用戶,它們可以相互依賴,並且隨時間改變。
第二,提供給每個用戶的服務可以不同。例如,一個用戶可能被提供用於網站的資源,而另外一個用戶則被提供用於科學計算群集的資源。因此,資源的類型、數量、依賴、以及分配模式將在用戶之間各不相同。
第三,提供給每個用戶的服務的級別可能不同。這意味著評估給一用戶的資源分配的質量要考慮服務的類型和水平這兩者。
第四,資源基礎設施在服務提供者之間各不相同。進一步地,對於一個給定的服務提供者,基礎設施隨時間而改變。這些改變可以是由於對物理基礎設施的升級或添加、使用另一個提供者的服務、或在空閒時或者在一天中的某些時間納入另外的資源、或刪除不再需要的資源。
第五,資源可能被預先分配或保留。即使在基礎設施中當前沒有足夠可用的資源來滿足保留時,但基於將及時地獲取用於分配的另外的資源這一預期,保留仍可被接受。
第六,用戶可能希望通過細分他們的分配並且使服務提供者管理這些子部分例如管理子部分到部門來在一個組織內共享資源。
第七,用戶可能希望提供一些他們當前擁有的資源以由服務提供者進行管理(即,用戶將其資源的管理外包給了服務提供者),這些資源只能用於他們的目的。這樣的要求對資源可向哪裡分配強加了約束。
第八,用戶可能希望指定一些策略來支配他們的資源的管理和操作。這些策略將由計算公共設施所執行。
最後,不同的服務提供者在向用戶分配資源時心目中可能有不同的目標,例如最大化利潤、可用性、或性能。
本發明作為用於為計算公共設施自動供應和管理資源的裝置的一部分也是有用的。計算公共設施可以由公司、服務提供者或個人使用。本發明允許在用戶組之間共享資源,並允許將資源限制到特定用戶。它允許用戶向其客戶提供由被管理資源組成的一個或多個服務。被管理的資源可以隨需被分配給用戶或域。它還允許資源的層級式管理。
圖1示出了本發明所運行的一個託管環境。該環境由處理器101、存儲設備103、防火牆105、以及軟體107所構成。軟體107可以是作業系統、中間件或者應用。在圖1中軟體107被表示為業務過程、業務應用或服務。所有的可用軟體都已經被預先配置到這些元素中。事實上,本發明的目的是使得能夠按需要將硬體和軟體組件動態地重新配置到新的或已有的服務中。這種環境可以存在於大公司中,或者由ISP或ASP提供而作為服務的基礎。回到詳細描述中來,硬體資源由網絡連接,該網絡由將所有這些資源互連起來的線109的網格所表示。這個網絡可被配置到一個或多個層,其中每一層由路由器105或者防火牆105分開。網絡內部的層的配置可以是靜態的或動態的。當網絡被靜態地配置,沒有人的(或機械的)幹預便無法在網絡中的各層間移動資源。使用動態配置,資源可在如本發明中正在描述的基礎設施或者在控制臺前工作的操作者的控制下在不同層之間移動。在每一層,資源可以被任意分組為單元,這可以通過使用例如虛擬LAN等機制完成。軟體資源由控制基礎設施被分配給物理資源。
在這個環境中資源的一個子集被分配給管理基礎設施111、113和115。在圖1中,這些資源被環繞它們的點線指示出來。這些被分配給管理基礎設施的資源運行本發明中描述的資源管理軟體。該軟體管理其餘的資源。用於管理基礎設施的資源不會被分配給託管環境的客戶117。被管理的資源根據需要被分配給客戶117。可以預期客戶117將主要通過經由網際網路119連接到託管環境而接收服務。但是,客戶117可以在其經由任何方式連接到託管環境的情況下接收服務。例如,他們可以具有和被管理資源的直接連接,他們可以被連接到與被管理的資源相同的網絡上,他們可以具有與被管理資源的VPN連接,或者他們可以具有與包含被管理資源的網絡的VPN連接。客戶117觀察不到基礎設施;他們只看到其從託管環境接收的應用或服務。
管理基礎設施根據需要向每個支持的服務分配資源。這種需要由根據已授權該服務在託管環境中操作的SLA、合同或者其他協議的、對該服務的需求確定。希望提供服務的個人或組織將與託管環境的提供者達成協議。回到圖1中來,處理器101可擁有直接的附加存儲設備,該存儲設備將被管理,作為管理該處理器的一部分。該圖中的存儲設備103指任何形式的可以網絡附加的存儲伺服器。處理器也可以代表某種複雜的功能例如資料庫伺服器或視頻伺服器。資源被劃分為更小的功能來進行管理的程度取決於基礎設施的擁有者。即使是像資料庫伺服器這樣的複雜資源也可以被分解成更小的組件,資源的擁有者將確定它在管理基礎設施中被如何表示。這一特徵允許本發明使用託管環境的非本地資源。本發明假定資源被安全地互連並具有足夠的性能。但是,連接資源的網絡代表一邏輯連接。可使用任何允許足夠程度的安全性、性能和對資源的控制的基礎設施,例如VPN,來將資源連接到託管環境中。因此,如圖1所表示的託管環境本身可以在全世界分布。該圖中的網際網路代表一種邏輯布置,其中網際網路可以被用來動態地向託管環境添加資源。
域是用戶內的、為其供應服務的組織單元。一個組織可能在內部有多個也利用服務提供者的子域、部、單元或部門。子域也是域,並且一個組織的域構成樹。一個組織可擁有多個彼此並不相連接的域樹。為了本發明的目的,認為它們是多個組織。根域是最高的域,或者說是組織的域樹的基。圖1A示出了其中服務可以被提供的一個用戶內的各域。在圖1A中,主公司或者根域為Smith緊固件公司120,所有該公司的其他部分均為Smith緊固件的子部分或子域。Smith緊固件有四個主要的部,研究121、財務122、硬體123、以及市場124。硬體部和市場部在其每個的內部具有另外的單元或子域。硬體被劃分為螺栓127、螺釘128和鉸鏈129。市場則有兩個地區,地區1 125和地區2 126。地區2被進一步劃分為北130和南131。本發明的一個目標是使得服務提供者能夠向任何公司例如Smith緊固件公司的各域、單元和/或部提供計算服務。然後,任何域或子域可預訂(subscribe to)所提供的計算服務。本發明假定為了實現供應目的,公司可以被結構化為一個域樹。進一步地,任何任意樹都可以被支持。正如在本說明書後面要描述的那樣,域樹控制資源的共享,以便在被一個公司使用的各種應用之間進行供應。本發明並不要求資源共享樹精確地映射到公司結構。可以使用任何任意的資源共享樹。為了說明的目的,我們將使用映射到一個組織即Smith緊固件公司120的結構的資源共享樹。
在一個組織內部,每一個域、部或單元都有著自己的僱員。本發明不限制公司中的什麼人(該公司的哪些僱員)可以使用計算服務。使用計算環境的資格通過該公司內部的管理策略進行控制。用戶名、密碼、以及授權由公司所控制。例如,所有的應用可以使用共同的認證和授權機制,或者每一個應用可以有各自的認證和授權機制,或者兩者之間的任何組合。訪問控制的供應是PMRS的一部分。計算服務的使用(被允許訪問或使用應用的用戶)與被用來向應用供應資源的結構無關。
在這種環境中有多種方式來劃分利用本發明的角色和責任。在一種這樣的劃分中,存在著一個擁有圖1中所描述的託管環境的基礎設施提供者;一個或多個提供使用託管環境的某種服務的服務提供者;以及服務提供者的一個或多個客戶。應注意到服務提供者也是基礎設施提供者的用戶。在另外一種這樣的劃分中,公司(或實體)可能為了服務與基礎設施提供者籤訂合同,從而外包其基礎設施的管理。在這種情況下,該公司便利用本發明來管理在其自身內部提供的服務。在另外一種這樣的劃分中,基礎設施提供者和服務提供者可以是同一個。進一步地,有些實體開發所提供的服務。它們可以是獨立的,例如獨立軟體開發商(ISV),或者是一個或多個上面提及的實體的一部分。希望提供某種基礎設施上的由本發明所管理的服務的實體向該基礎設施提供該服務的描述。這種描述可以是抽象的或具體的,並且包括該服務的組織、將要被提供的該服務的指示、以及控制該服務的操作的策略。
圖2示出了一個計算公共設施的高層視圖。存在三層組件。頂層代表被供應的服務,被稱作計算環境。一個計算環境包括硬體和軟體資源,例如伺服器、作業系統、應用和中間件。每一個計算環境都有一個被調用來供應和管理其資源的服務,這個服務稱為供應和管理資源服務(PMRS)。該PMRS在一個單獨的發明中被詳細描述,該發明標題為「用於計算公共設施的計算環境的組件化自動供應和管理」,案卷號為YOR920030588PCT1。底層代表託管中心的對其用戶可用的資源。基資源是原子的資源;它不會被分解成其他資源。每一個基資源類型都有一個服務來提供該資源類型的實例的保留和分配,這個服務稱為基資源庫服務(BRLS)。基資源的定義由服務提供者所決定。因此,BRLS可以提供簡單的資源例如軟體許可證,或者提供複雜的資源例如安裝並運行在硬體平臺上的作業系統。添加、刪除或者修改基資源將改變系統的總的能力。本發明假定基資源的數量和類型隨時間改變。基資源由基資源庫服務(BRLS)201集表示。圖2示出了四種類型的基資源DB2許可證203、zSeries LPAR 205,xSeries伺服器207、以及AIX許可證209。BRLS提供了諸如目錄操作(cataloging)、籤出(分配)、籤入(解除分配)、以及保留等操作。BRLS 203、205、207、209的接口在圖3中被更加詳細地描述。
複合資源從一個或多個其他資源(包括其他複合資源)被構建,來執行指定的功能。一個複合資源可以具有一組與其關聯的依賴。複合資源的一示例是網站。它可能由一定數量的前端伺服器、後端伺服器、一個負荷平衡器、用於伺服器的一組IP位址、web伺服器軟體、資料庫軟體、以及與軟體聯繫的許可證所構成。被用來實現一個複合資源的功能的基資源集可以隨時間改變,儘管並不是所有的複合資源都具有這種能力。計算環境是一種複合資源。
與每一個計算環境關聯的是供應和管理被用來提供服務的資源的軟體,稱為供應和管理資源服務(PMRS)211。每一個資源類型,包括複合資源,都有一個PMRS來封裝如何創建該類型的資源、以及如何管理該資源的實例的知識。供應是指將資源分配到一個計算環境並配置它以便在服務內使用的動作。供應動作可包括將基資源組裝成複合資源,配置網絡設備,安裝作業系統、應用軟體、監視器、以及用戶帳戶。資源管理可包括如請求向資源實例中添加或者從其刪除能力等動作。圖2示出了一些PRMS,即DB2 213、Linux 215、以及網站217。PMRS在標題為「用於計算公共設施的計算環境的組件化自動供應和管理」、案卷號為YOR920030588PCT1的發明中有詳細的描述。
圖2中的中間層是基資源分布服務(BRDS)219。它的任務是基於服務提供者具有的用於其每一個域的有效的協議,以一種有效的方式將服務提供者的資源分配到它的域內。域被層級式地組織,一些域是其他域的子域。BRDS指定了哪些資源集可用於哪些域,並且當資源受到約束時基於業務策略自動重新分配這些資源。它既與計算環境211(PMRS)也與資源201(BRLS)相交互。一個資源可以或者立即或者未來被分配到一個計算環境。未來資源分配的允諾是保留。本發明假定分配到一個計算環境的資源在其分配期間是為該計算環境所專用的。
基資源庫服務資源駐留在池內,其可根據類型進行排列。資源池可以是公有的或私有的。公有資源池是任何域都可以從中分配資源的資源池。私有資源池局限於用戶域的子集。私有池被用來將一些資源專用於用戶域的子集。例如,一個私有池可以為了單個用戶保持用於多個域的資源。這樣的池可以用於用戶擁有但卻希望服務提供者為它進行管理的資源。每一個資源都有它從中起源的起始(home)池,這個起始池既可以是公有的,也可以是私有的。當一個資源被分配或被保留時,起始池不會發生改變。一組沒有被分配的資源被稱作自由池。
圖3示出了一個基資源庫服務(BRLS)的操作的示例。系統中的每一個基資源都由一個庫或BRLS 310表示,它提供了例如目錄操作、籤出(分配)、籤入(解除分配)和預先保留等信息。一個BRLS用作一個資源類型的實例的起始池,並且它可以是公有的或是私有的(代表示公有資源池或私有資源池)。每一個BRLS 310都與一個收集器相關聯。每一個BRLS 310都有兩類接口,即被系統用來獲取、保留以及返回資源的資源操作330,以及被用來管理可用於BRDS 219的資源的目錄操作340。提供的資源操作330是保留(Reserve)、取消保留(CancelReservation)、籤入(CheckIn)、籤出(CheckOut)、延長保留(ExtendReservation)和查詢(Query)。
Reserve(num-instances,selection-spec,start time,duration)->reservation-ids該請求由BDRS 219代表用戶計算環境發出來保留資源。
輸入num-instances是希望的實例的數目selection-spec是由BRLS 310所支持的希望的屬性的規格說明start time,如果沒有被指定的話,任何實例都可被用來滿足該請求。
start time可以是立即的,也可以用於預先保留輸出reservation-ids[]。其元素是資源保留票據(ticket),每個資源實例一個,直到num-instances。在保留時無需將這些映射到實例。換句話說,庫可超額訂出(overbook)其資源。
CheckOut(reservation-id)->resource-handle該請求由BDRS 219代表用戶計算環境發出來分配資源。
輸入由Reserve發出的reservation-id輸出resource-handle。資源實例的標識符。如果資源的實例無法被提供,那麼被設置為一特殊值。
CheckIn(resource-handle)該請求由BDRS 219代表用戶計算環境發出來返回資源。
輸入由CheckOut發出的resource-handle。
ExtendReservation(resource-handle,end time)該請求由BRDS 219代表用戶計算環境發出,來延長一個當前被保持的資源的保留。
輸入由CheckOut發出的resource-handle。
end time資源將被返回的時刻。
輸出Accept資源保留可以被延長。
Reject資源被返回。
Query(selection-spec)->availability-data該請求由BDRS 219代表用戶計算環境發出來返回資源。
輸入selection-spec是由BRLS 310所支持的希望的屬性的規格說明。
它被用來限制查詢的範圍。
它可包括資源句柄來引用特定的實例。
輸出availability-data[]。其元素是指示什麼時候實例可用於被保留的一些結構。
CancelReservation(reservation-id)該請求由BDRS 219代表用戶計算環境發出來取消一個保留。接收到取消之後,資源便可用於分配和由另外一個計算環境籤出。
輸入由Reserve發出的reservation-id目錄操作為管理員320或其他管理機制提供目錄操作340,來修改由BRLS 310管理的資源池。資源發現機制也可以使用這些操作來將該過程自動化。提供的操作包括添加(Add)、刪除(Remove)、更新(Update)、查詢(Query)以及這些操作的任何組合。
Add(resource-identifier,instance-data)該請求被發出以向BRLS 310添加一個資源實例。
輸入resource-identifier是一個資源標識符,可以與上面的句柄相同,也可以與其不同。
instance-data是一些屬性值的匯集,這些屬性值可以被用來通過一個selection-spec來選擇資源。
Remove(resource-identifier)該請求被發出以從BRLS 310刪除一個資源實例。
輸入resource-identifier是資源標識符Query(selection-spec)->resource-identifier[]該請求被用來查詢已經註冊到BRLS 310的資源實例。
輸入selection-spec是由BRLS 310所支持的希望的屬性的規格說明。
它被用來限制查詢的範圍。
它可包括資源標識符。
輸出resource-identifier[],滿足selection-spec的資源標識符的列表。
Query(resource-identifier)->instance-data該請求被用來查詢已經註冊到BRLS 310的資源實例。
輸入resource-identifier是資源標識符輸出instance-data是為該實例(如果有的話)註冊的屬性值的匯集Update(resource-identifier,update-data)->instance-data該請求被用來修改已經註冊到BRLS 310的資源實例。
輸入resource-identifier是資源標識符update-data將被應用到該資源、或者為該資源註冊的新信息輸出instance-data是為該實例註冊的屬性值(如果有的話)的匯集基資源分布服務圖4示出了一個基資源分布服務(BRDS)219的各組件的一個示例。BRDS 219確定了如何在各計算環境中分布基資源。BRDS 219包括兩種組件,收集器420、422、424、426、428和一個仲裁器430。一個域至少與一個收集器相關聯。對於每個計算環境都有一個包括先前提到的策略的收集器,以及為該計算環境所保留的資源列表。
仲裁器仲裁器確定資源如何在各計算環境之間被劃分。它在當前的分配和將來的分配(保留)這兩者上操作。資源可以反應性地被分配到計算環境中,也可以前瞻性地被分配。當沒有足夠的自由資源來滿足來自用戶計算環境的需求時,可以詢問仲裁器。它也可以被用來周期性地優化資源分配。如果資源受限制,仲裁器可從計算環境回收資源。仲裁器操作的詳細內容在一個單獨的標題為「計算公共設施系統中的仲裁裝置」、案卷號為YOR920030589US1的發明中。
收集器收集器代表被分配到一個或多個計算環境的資源集。每一個計算環境的根域都有一個關聯的收集器。收集器可以是嵌套的,例如以表示組織內的各部門。這一結構使得能夠在計算環境的子集間共享資源,從而實質上為這些域複製了計算公共設施。一個計算公共設施可以為多個組織供應資源,連接到多個組織(每個組織的根域)的收集器稱為根收集器。圖4示出了一個有兩個域的根收集器420,其中一個域有兩個子域。兩個主要的域是表示公司A和公司B的Col-A 424和Col-B 422。Col-A 424有兩個子域,表示部門X和部門Y的Col-X 426和Col-Y 428。在圖4中有三個PMRS,即PMRS-X 496、PMRS-Y 498和PMRS-B 495。一個收集器與這些計算環境的每一個相關聯。另外BRDS 219也有一個收集器420。
圖4還示出了公有的和私有資源池。一個公有BRLS與BRDS 219中的一個根收集器相關聯。一個私有BRLS與BRDS 219的非根收集器的一個收集器相關聯。在圖4中,BRLS 486、488和482是公有的,因為它們與根收集器420相關聯。而BRLS 484是私有的,因為它與不是根收集器420的收集器424相關聯。
收集器執行用戶的獲取策略,這種策略確定了在什麼情況下向它的匯集添加資源,或者從中刪除資源,或者改變匯集的組成。收集器的層級式結構允許指定控制資源的本地(特定於組織的)策略。最簡單的獲取策略(即,沒有獲取策略)是完全請求驅動的。也就是說,資源根據每一個請求和返回在BRLS 482(486、488)和PMRS 495之間通過收集器層級結構移動。一個更加複雜的獲取策略可以指定在每一個收集器處的伺服器的最小和最大數目。這些獲取策略過濾請求流。這樣一個獲取策略允許收集器為其域維護多種自由池(被分配的或被保留的資源的緩存),從而實際上為預測的請求預先分配了資源。獲取策略將會在圖7和圖8的描述中進行討論。
每一個BRLS 482、484、486、488都與一個收集器相關聯。這種關聯定義了用於由BRLS代表的資源池的共享範圍。例如,如果一個組織希望具有用於它的部門一個私有資源池,那麼它將會使一個BRLS 484與該組織的收集器424相關聯,如圖4所示。這些資源將可用於僅由與該組織相關聯的用戶計算環境(即,與有該組織的收集器作為祖先的收集器相關聯)進行的分配。圖4A示出了來自圖1A的Smith緊固件公司的一個子域,即硬體123。為了供應的目的,硬體123已經被分配到了三個應用,即App1 440、App2 450和App3 460。在這種情況下,所有三個應用被允許共享相同的資源集。圖4B示出了這一供應決策如何映射到一個收集器層級結構。Col 1470與硬體123相關聯。另外,每一個應用都具有與之關聯的一個PMRS和一個收集器。App1 440具有Col 1 441和PMRS 1 442,App2具有Col 2 451和PMRS 2 452,而App3具有Col 3 461和PMRS 3 462。在本發明中,一個PMRS最多與一個收集器相關聯。
圖5示出了一個具有多個根收集器510和520的計算公共設施的示例。本發明描述了一個具有單個根收集器的BRDS 219。本領域的技術人員可以通過邏輯地分區資源池並將用於每一個分區的BRLS與不同的根收集器相關聯,而將本發明擴展到多個根。用於根收集器的各BRLS可以管理相同的資源類型。圖5通過示出一個具有兩個根收集器510和520的BRDS圖示說明了這一概念。根收集器520具有BRLS 530和535。根收集器520具有BRLS540和545。在這種情況下,BRLS 530可以管理與BRLS 540相同類型的資源。應注意到在其他可選擇的實現中,類型相同但是關聯不同的BRLS可以被表示為單個BRLS,並帶有對於它們的資源實例可被分配到何處的約束。
圖6圖示說明了匯集和庫的一個示例。每一個計算環境都有被分配給它的一個資源集。這些只被顯示在它們相應的PMRS 660、680和690中,而未顯示在收集器或它們的祖先中。收集器Col-Y 632有一個額外的類型為「三角形」的資源,它被分配以由計算環境Y使用。三角形的起始匯集是私有庫BRLS-1690。三角形只能被分配到PMRS X 660和PMRS Y 680。收集器Col-A 630也有一些額外的類型為「正方形」、「星形」和「圓」的資源,它們由計算環境Col-X 633和Col-Y 632使用。它們各分別來自相應類型692、694和696的公有BRLS。這些資源實例可以被收集器Col-B620回收以便使用。圖6中的BRLS 690是私有的。它的資源被收集器630、632和633共享。在圖6中,BRLS 692、694和696是公有的。
當一個資源被一個計算環境所請求,BRDS 219要經歷一個三階段的過程。第一個階段是確定如果請求被同意的話,用於該計算環境的收集器以及它的中間祖先節點(如果有的話)的獲取策略是否將被滿足。如果例如被請求的資源將超出用戶與服務提供者的協議中指定的資源,BRDS 219可拒絕請求。因此,獲取策略是在該決策過程中被納入考慮的一組約束。如果BRDS 219確定一個資源可以被同意,則過程的第二個階段是要定位那些將滿足請求的實例。可用的實例可在一個公有的或私有的BRLS中找到,也可能是在收集器中。如果沒有可用的實例,那麼可根據分布策略從另外一個計算環境重新分配實例。如果請求是針對一個資源集,則BRDS 219相應地協調它們的分配。如果請求成功,則一組保留票據就會被返回到PMRS。
BRDS 219將嘗試滿足收集器的獲取策略,即使是在沒有來自PMRS的資源請求的情況下,從而在必要時生成向BRLS的請求。正是BRDS 219代表收集器進行保留,不管它是由獲取策略還是由顯式的資源請求引發的。
返回到對收集器和BRDS 219的描述,當保留的起始時間到來時,BRDS219將票據轉換成資源句柄。如果保留向資源句柄的轉換失敗,則保留無法被承認(honored)。如果持有票據的收集器與一個PMRS相關聯,則BRDS219將句柄傳遞給該收集器,該收集器然後將其呈現給PMRS。在圖6中,如果收集器632正持有一個到期的保留票據,那麼BRDS將把它轉換成一個資源句柄。這個資源句柄將被返回給收集器632,隨後收集器632將把該資源句柄傳遞給PMRS 680。然後PMRS 680可將該資源配置到計算環境中。否則持有保留的收集器不與一個PMRS相關聯,因此BRDS 219將資源句柄傳遞到該收集器。在圖6中,如果保留由收集器630所持有,那麼這樣的情況便會發生。
當一個保留期滿,BRDS 219回收與之相關聯的資源句柄,並將其返回到其出借者(起始池或中間收集器)。維持不變的是,若且唯若有對資源的保留(並可推測,一個用戶正為其被計費)時,資源才能從一個起始池中被籤出,或者被中間收集器借出。
為了延長保留,PMRS 660向BRDS 219發出請求,並帶有它已經在使用的資源的選擇規格說明。如果獲取策略和其他承諾(commi tment)允許,則BRDS 219將與BRLS(692、694、696或690)交互以延長該保留。也就是說,PMRS 60不與BRLS直接通信。
當一個資源被PMRS 660返回時,它的相關聯的收集器的獲取策略確定是否將它返回到其父。如果收集器保持該資源,那麼客戶可繼續因該資源而被計費。保持資源的好處是請求時更快的部署。(例如,用於該資源的計量已經被部署。)如果它返回了資源,則它的父的獲取策略也會被進行類似的檢驗。資源不被保持在與它們的起始池(BRLS)相關聯的收集器中;這種情況下,它們被籤入到它們的起始池中。例如,如果一個與BRLS 690相關聯的資源被返回到收集器Col-A 630,則它將被返回到BRLS 690,而不是由收集器所持有。
應注意到,如圖6中630的、擔當一組計算環境的資源池的收集器(即,收集器層級結構中的一個中間節點)需要與BRLS相同的功能來分布它的資源。基本上它是一個把從外面借來的資源再借出的庫。這樣,它的資源匯集也可以被表示成與它相關聯的BRLS。收集器與私有的BRLS之間的差別是,資源可被從收集器回收,以便由它的父或收集器層級結構中的其他部分使用(只要該資源的起始BRLS允許)。相反,私有的BRLS中的資源只能被它的相關聯的收集器和它的後代使用。收集器潛在地可以具有為系統所知的每個資源類型的、其自己的匯集。與私有的BRLS類似,收集器的匯集的一個實現可以在單個BRLS集內獲得,並帶有關於它們的資源實例可被分配在何處的約束,以及另外,持有用於來自其起始池中的資源的保留票據的收集器的身份。一旦資源已經被分配到收集器或PMRS,它在層級結構中的位置便成為該資源的一個屬性。
圖7圖示說明了檢驗資源請求上的獲取策略的過程的示例,不管請求是由PMRS產生,還是收集器的獲取策略的結果。該過程從方框710開始。首先檢驗720來看請求是否由一個PMRS發起。如果是,那麼在730設置當前匯集是PMRS,從而獲取策略檢驗從與該PMRS相關聯的收集器開始。否則,在740設置當前匯集為請求收集器的父。這是因為請求是由一個其獲取策略需要更多的資源的收集器發起的。接下來檢驗750來看是否到了根收集器。如果策略一直到根收集器都被滿足,那麼資源則可以被獲取,並且流程轉到780一個嘗試定位可用資源的過程。否則檢驗760來看請求是否將違反當前匯集的獲取策略。如果策略將被違反,那麼檢驗765來看請求者是否是PMRS。如果是,那麼請求被拒絕795。否則,有可能使用已經被分配給其獲取策略會被違反的收集器及其後代的資源來滿足該請求,並且在這樣的子樹方面調用仲裁790,該子樹的根為其獲取策略會已經被違反的收集器。回到760處的檢驗,如果策略將不會在當前匯集中被違反,那麼在770將當前匯集設置為剛剛被檢驗的匯集的父並在750繼續檢驗。
圖8圖示說明了定位可用資源的過程的一個示例。該過程從810開始。首先確定搜索的起點。如果請求源於PMRS 820,則搜索的起始匯集是與該PMRS 827相關聯的收集器。否則,它就是該請求從中發起的收集器的父825。由於一個資源請求可指定不同類型的資源集,所以在830構造希望的資源的描述列表,每一個資源類型每一個實例有一個元素。本領域的技術人員認識到有多種方法來構造該列表,例如每個資源類型一個元素,而在該元素中相同類型的多個元素被跟蹤。對於列表中的每一個元素,為資源檢驗三個可選項與收集器相關聯的私有的BRLS,收集器的匯集,或者公有的BRLS(當搜索到達了根時)。這些檢驗在從起始收集器到根的每個收集器處被重複。這是通過從要求的資源列表中刪除840第一個被請求的資源RR來完成的。在步驟850從起始匯集開始,檢驗860來看是否有一個具有類型為RR的可用資源的BRLS。如果沒有,那麼檢驗863來看是否收集器有類型為RR的資源。如果沒有,檢驗865來看是否到了根匯集。如果不在根,那麼轉到867當前匯集的父並繼續在860檢驗。如果已經在根,那麼不是所有的被要求的資源都可用,因而將使用仲裁870來確定是否可使資源可用。如果檢驗860或者檢驗863找到了資源,那麼資源的信息在步驟880被添加到保留列表。接下來檢驗890來看是否所有被請求的資源都已經被定位。如果它們還沒有被定位,那麼將列表840中最上面的元素去除,並繼續尋找資源。如果所有的資源都已被定位,那麼作出對被定位的資源的保留請求895,並且保留請求的結果在定位可用資源過程的最後被返回。
如果保留失敗,將會以根收集器為範圍而調用仲裁。仲裁是標題為「計算公共設施系統中的仲裁裝置」、案卷號為YOR920030589US1的交叉引用的申請的主題。本發明將仲裁當作「黑箱」處理。如果仲裁成功,則資源被保留,並且票據被返回給請求者。否則請求被拒絕。成功的仲裁可能要求從其他的域中回收資源。由匯集管理器、相關聯的庫以及獲取策略所強加的約束被輸入到仲裁器。
BRDS提供了下面列出的資源管理操作。
資源管理操作圖9圖示說明了BRDS 219和PMRS 920之間的交互的一個示例。有一個用於由BRDS向PMRS作出請求的操作集930,以及另一個用於由PMRS向BRDS作出請求的操作集940。資源的分配涉及五種操作PMRS可以請求、保持或者返回資源940,而BRDS可以回收或提供資源930。當PMRS需要額外的資源或者有剩餘可以返回時,它就使用RequestResource(請求資源)和ReturnResource(返回資源)接口940。當PMRS希望在超出初始請求中指定的期限之外保持資源時,它就使用RetainResource(保持資源)940。當先前保留的資源變得可用時,BRDS 219就使用DeliverResource(交付資源)接口930來將資源交給PMRS 920。每當BRDS需要從一個PMRS中刪除資源時,它就使用ReclaimResource(回收資源)接口930。例如,一種情況將是撤銷先前分配的資源,從而使它們可以重新分配到其他地方。OfferResource(提供資源)接口930被用來使這樣的額外資源可用,這些資源未被PMRS 920顯式請求,但卻是它的計算環境的策略所允許的。
RequestResource(R,start-time,duration)該請求由PMRS 920代表用戶計算環境向BRDS 219發出,來請求額外的資源。BRDS 219可以拒絕該請求。
輸入R[],一個結構矢量,每個資源類型有一個元素。每個結構包含該類型的實例的數目以及可選的選擇準則。選擇準則可包括資源句柄來指定特定的實例。
start-time可以是立即的,或者用於預先保留輸出
返回指示成功或失敗的代碼R』[],可選的返回。失敗時,可被設置以指示可用資源。R』的元素是資源保留票據,每個資源實例一個,而PMRS 920可將其收回以獲得額外的資源。
start-time』,可選的返回。失敗時,可被設置以指示資源何時可用。如果被設置則應用於R』,否則應用於R。
ReturnResource(R)該請求由PMRS 920代表用戶計算環境向BRDS 219發出以返回資源。BRDS 219接受資源。
輸入R[],正在被返回的資源的資源標識符(句柄或保留票據)列表。這些資源可以是當前被分配的資源或是保留。
輸出指示成功或失敗的返回碼RetainResource(R,end time)該請求由PMRS 920代表用戶計算環境向BRDS 219發出,以將資源保留與先前承諾不同的時間量(延長或修改資源的保留)。BRDS 219可以接受或拒絕該請求。
輸入R[],正在被保留的資源的資源標識符(句柄或保留票據)列表。這些資源可以是當前被分配的資源或是保留。
end time是所請求的用於列表中資源的新的中止時間。如果該中止時間不是在未來,那麼請求被拒絕。
輸出指示成功或失敗的返回碼
ReclaimResource(R)該請求由BRDS 219向PMRS 920發出,來撤銷一個資源集的分配或保留。PMRS 920放棄資源。
輸入R[],一個結構矢量,每個資源類型一個元素。每個結構包含該類型的實例的數目以及可選的選擇準則。選擇準則可包括資源句柄或保留票據來指定特定的實例。計算環境可根據準則來選擇要回收的資源實例。
輸出R』[],正在被返回的資源標識符(資源句柄或保留票據)的列表。R』可以是R的超集,其包括一些因為對被回收資源的依賴而變得無用的資源。
OfferResource(R,start-time,duration)該請求由BRDS 219向PMRS 920發出,以通知可用於該計算環境的額外資源的可用性。PMRS 920可以接受也可以拒絕提供的資源。為接受資源,PMRS 920發出RequestResource請求。
輸入R[],一個包含可用的每一種資源類型的實例的數目的矢量start-time可以是立即的,也可以用於預先保留輸出無DeliverResource(R)該請求由BRDS 219向PMRS 920發出,以指示先前被保留的資源已經被分配用於該計算環境。
輸入R[],一個元組列表,每一個元組包含一個保留標識和對應的資源句柄。
輸出無為獲取資源並將其分布到用戶計算環境中,BRDS 219調用上述BRLS910、912、914和916的操作。
圖10圖示說明了在正常操作期間PMRS 1010和BRDS 219之間的交互的一個示例。圖10中的PMRS代表一組可能具有可變大小的Linux伺服器。某事件使得代表Linux伺服器PMRS 1010認識到了它需要額外的資源,例如一個xSeries Linux伺服器或一個額外的IP位址。它使用RequestResource 1011來向BRDS 219請求資源。BRDS 219使用在圖7和圖8中描述的方法來分配和保留資源。作為對RequestResource 1011的響應,保留票據被返回到PMRS 1010。當資源變得可用時,將使用DeliverResource1012通知PMRS 1010。PMRS 1010內部的詳細交互在標題為「用於計算公共設施的計算環境的組件化自動供應和管理」、案卷號為YOR920030588PCT1的申請中被描述。
圖11圖示說明了向現存的託管基礎設施中添加新的用戶(或服務)的過程的一個示例。這個過程與向現存的服務添加新的資源類似。本發明假定有一個操作集,其允許組織預訂服務提供者的服務,並進一步成組添加計算環境以用於組織內的資源共享。至少,提供了向組織添加來自該組織與服務提供者之間的協議的某種信息例如協議的起始時間和期限,以及獲取或其他策略。對於特定的計算環境,還提供計算環境的類型和設置。在正常操作期間,控制計算環境的策略可以通過添加新的策略、刪除已有的策略、或更新已有的策略來修改。另外,本發明假定存在當其協議終止時刪除域和組織的操作。要添加新的域,客戶指定該域(包括子域)的表示、策略和將為該域供應的計算環境列表。
在圖11中計算環境類型是網站。BRDS 219有單個根收集器。有一些用於網絡調度器許可證1130、Linux伺服器(硬體和軟體)1132、和WebSphere許可證1134的BRLS。當新的用戶請求1105到達時,BRDS 219的新用戶(NC)1160組件便為其創建一個新的收集器1150,(由點線指示)以及用於用戶的信息的佔位符,直到用於新匯集的PMRS 1180完全可操作。新用戶請求1105指定將被實例化的確切的複合資源。創建新的收集器之後,NC 1160向正確類型的PMRS 1180發送一個Realize(實現)1111請求。Realize被BRDS 219用來在新的計算環境被請求時獲取用來在已有的基礎設施上構造資源的一組可能計劃。Realize在一個標題為「用於計算公共設施的計算環境的組件化自動供應和管理」、案卷號為YOR920030588PCT1的單獨的發明中被詳細地定義。在Realize 1111請求的最後,BRDS 219具有了可以被用來構建指定類型的計算環境的可能資源集的列表。所有這些選項都被返回到NC 1160對象,該對象實例化一個收集器1150來管理新的實例,並請求收集器1150為資源進行協商。這個剛剛被實例化的收集器1150(BRDS)對照可用資源和策略來分析選項,並為資源而與庫BRLS 1130、1132和1134進行協商。然後它計劃安排在被請求的時間構造服務,並假定所有的資源都可以在策略內被獲得。(如果資源無法被獲得,則新用戶請求1105失敗。)當資源保留的起始時間到來時,BRDS 219獲得資源並將資源句柄交付給NC 1160,NC 1160向PRS 1110發送Build(構建)1112請求。Build請求包括所有需要的策略。一種類型的被提供的策略是獲取策略,其他需要的策略可以是特定於資源類型的,並將在此時被提供。應該注意到,PMRS 1180是PRS 1110和MRS 1170之間的邏輯關聯。PMRS的細節在一個標題為「用於計算公共設施的計算環境的組件化自動供應和管理」、案卷號為YOR920030588PCT1的申請中被描述。作為Build 1112請求的結果,PRS 1110創建MRS 1170,而後者將與該計算環境相關聯。當這個過程完成,PRS 1110將新的MRS 1170的標識符返回到NC 1160,NC 1160以用於該計算環境的根MRS 1170的身份更新收集器1150。
一旦收集器有了句柄,收集器現在便與這個由它管理的、剛剛被實例化的服務相關聯起來,如圖11中的虛線所示。在另一個可選擇的實施例中,NC不是向PRS發送Build 1112請求,而是NC可以發送DeliverResource請求,並且PMRS可以認識到第一個交付資源請求意味著構建。
在另一個可選擇的實施例中,NC的功能可以被結合到收集器,從而在新用戶請求到達時BRDS可以實例化新的收集器。新的收集器將作為它的初始化的一部分,經歷分配給NC的所有步驟。在這些步驟完成之時,NC將被完成,並且服務變得可操作。也有可能託管環境可能沒有滿足請求的能力,在這種情況下對新用戶的請求將被拒絕。如前面指示的那樣,該託管環境具有獲取並利用可能存在於其他某個託管環境中的資源的能力。因此,如果這個託管環境沒有所有所要求的資源,而它能夠從具備可接受的條件集的其他某個託管環境獲取資源,那麼對新用戶的請求就可以被接受,而不被拒絕。從另外一個託管環境中獲取的資源仍將被表示成這個環境中的一個BRLS。當一個託管環境包含來自多個託管環境的一些BRLS時,這些BRLS是有類型的(typed),從而可以提供獲取策略,來管理外部資源對內部資源的使用。
圖12示出了為了供應目的將一組計算環境向Smith緊固件公司120分布的一個示例。Smith緊固件公司不得不決定他們希望在其組織內利用哪些服務,以及組織的哪個部分將持有(或者預訂)每一個服務。Smith還不得不決定如何將資源分配給他們的域,以及用於每一個域的分配和分布策略將是什麼。這些供應決策與Smith緊固件公司的哪些僱員要去使用被供應的服務不相關。生成域和計算環境樹的指導原則是域只有在至少有一個計算環境要被供應、至少兩個子域要被建立、或者至少有一個計算環境和一個子域的時候才能被插入。這一原則防止長串的、不過僅有一個子域的域。Smith緊固件公司120已經決定了它希望供應和控制在公司級別上的兩個應用,即應用1和應用5。一個會計應用即應用12將被公司以及每一個部即研究121、財務122、硬體123、和市場124所使用。硬體部已經決定每個產品單元即螺栓127、螺釘128和鉸鏈129應該使用相同的工程設計應用9的、他們自己的實例。鉸鏈單元129還試驗兩個額外的應用即應用10和應用11。市場部已經決定了它的每一個地區即地區1 125和地區2 126應該使用相同的應用即應用3的、它們自己的實例來管理市場活動。市場部的地區2 126被劃分為兩個分開的區域,即南130和北131。這些地區中的每一個在地區水平上使用它們自己的、應用4的實例來收集信息以供給應用3。Smith緊固件公司120的資源獲取和分布策略確保了它的每一個主要的域即研究121、財務122、硬體123和市場124都有它完成其任務所需要的資源。另外,市場124和財務122還可以在其每個季度或者每個年度末的高峰期享有從其他部門中而不是彼此之間重新分配給它們的資源。但是不允許它們佔據如此多的資源而使得其他部門喪失能力。
當所有這些決策被映射到具有計算環境一個域結構時,它看起來如下根域120,有三個應用,即App01 150、App12 151以及App05 152。根域120還有四個子域,即研究121、財務122、硬體123和市場124。每個研究121和財務122的子域使用單個應用。在這種情況下,它們每一個都有相同的應用的單獨的實例App12 155和App12 156。本發明並不禁止從使用者的角度在域之間共享應用的單個實例。例如在圖12中,App01既可以被研究和財務使用,也可以被根域使用。但是,從供應(和供應的管理)的角度,應用的每一個實例都具有在組織內的單個供應點。回到該圖的詳細描述。硬體域123有三個子域以及單個與之相關聯的應用。硬體123的子域是螺栓單元127、螺釘單元128和鉸鏈單元129。與硬體相關聯的應用是App12 157。市場域124有與之關聯的兩個應用和兩個子域。兩個應用是App12 153和App03 154,而兩個域是地區1 125和地區2 126。這些地區中的每一個都有其自己的、App03的實例。地區1 125使用App03 161,而地區2 126使用App03 158。地區2 126進一步被劃分為北130和南131,並且地區2 126的每一個子域都有自己的App04的副本。北使用App04 163,而南使用App04 162。
圖13示出了從計算環境和圖12的域結構產生的收集器層級結構。為產生這樣的收集器層級結構,從根域開始,並插入一個收集器。接下來檢查域樹的根域來看是否只有一個計算環境。如果是,那麼插入用於該計算環境的PMRS,並且完成。否則,根域有多於一個計算環境或子域。對於根域的每一個計算環境,插入一個收集器和PMRS。剩餘的子域則被放在域處理列表中。這一算法被應用到域處理列表中的每一個域,直到列表為空。基本上這個算法使用寬度優先搜索,其從該域的根域開始並計算環境樹。當這一算法被應用到圖12,便產生了圖13中示出了收集器層級結構。PMRS是有類型的,在圖13中PMRS名稱的最後兩位數字是它的類型,因此PMRS01是一個管理來自圖12的App01的實例的PMRS。回到圖13的更加詳細的描述,收集器SFC 1320被插入,因為圖12中的Smith緊固件公司120有多於一個的應用。在圖12中Smith緊固件公司120有三個應用。因此對應用1、12和5,一個收集器PMRS結構被插入。對於應用1,這是收集器1352和PMRS01 1374,對於應用12,這是收集器1351和PMRS12 1373,對於應用5這是收集器1350和PMRS05 1371。接下來將這種算法應用到Smith公司的子域中。注意到在圖12中的兩個子域即研究121和財務122都僅有一個應用即應用12。因此,對於這些子域中的每一個,一個收集器和PMRS結構被插入到層級結構中。對於圖12中的研究121,插入了收集器1321和PMRS12 1370,對於圖12中的財務122,插入了收集器1322和PMRS121372。在圖12中,硬體123和市場124具有多個子域和應用。接下來把該算法應用到硬體和市場的子域中。對於硬體,收集器1323被插入,而對於市場,收集器1324被插入。在圖12中硬體有三個子域,即螺栓127、螺釘128和鉸鏈129以及與之關聯的一個應用即應用12。所以將一個PMRS收集器層級結構添加到用於該應用的收集器1323。在圖12中,有兩個硬體子域只有單個應用與之關聯,即螺栓127和螺釘128。在圖13中,一個收集器PMRS結構與這些子域中的每一個相關聯。對於螺栓它是收集器1327和PMRS09 1376,而對於螺釘它是收集器1328和PMRS09 1377。在圖12中,硬體123的第三個單元即鉸鏈129有三個與之關聯的應用,所以在圖13中收集器1329被插入。在圖12中市場有兩個應用和兩個子域。這些應用是App12 153和App03 154,而子域是地區1 125和地區2 126。在圖13中,已經為每一個應用插入了一個收集器PMRS層級結構。它們是用於應用12的收集器1354和PMRS12 1378,以及用於應用3的收集器1355和PMRS03 1379。在圖12中,一個子域北130隻有單個應用與之關聯,即App04163。在圖13中,一個收集器PMRS層級結構被插入。這是收集器1330和PMRS04 1384。在圖12中市場的另一個子域即地區2 126具有一個應用和兩個子域。因此在圖13中一個收集器即收集器1326被插入。回到圖12中的鉸鏈129,它有三個應用與之關聯,即App11 164、App09 165和App10166。在圖13中,一個收集器PMRS層級結構為這些應用的每一個而被插入。它們是用於應用11的收集器1356和PMRS11 1381;用於應用9的收集器1357和PMRS09 1382;和用於應用10的收集器1358和PMRS10 1383。最後檢查圖12中的地區2 126。它有一個應用App03 158和兩個子域。在圖12中,它的每一個子域北130和南131都有應用4的一個實例。在圖13中為應用3插入一個PMRS收集器層級結構,即收集器1359和PMRS03 1386。對於子域也為其每一個插入一個收集器PMRS層級結構,因為它們只有一個應用。這是用於北的收集器1330和PMRS04 1384,和用於南的收集器1331和PMRS04 1385。這樣就完成了收集器計算環境層級結構的構造,而這個層級結構將被本發明用來提供資源的層級式管理。
收集器樹被設計為允許在向用戶供應服務時具有最大的靈活性。它允許私有的BRLS與樹中的每一個收集器相關聯。每一個收集器可以具有其自己的獲取和分布策略。這允許公司,在該例中即為Smith緊固件公司,有能力更精細地控制其計算資源分布。如果所有的獲取和分布策略相同,而且所有的資源都保持在公有的BRLS中,那麼該樹就是不必要的,一個平的樹(flat tree)就足夠了。通過使用層級結構,獲得了對組織內資源的分布和使用的更精細的控制水平。
本發明可與上面交叉引用的標題為「用於計算公共設施的計算環境的組件化自動供應和管理」和標題為「計算公共設施系統中的仲裁裝置」的申請中描述的發明一起使用。使用的一個示例是將這些發明結合起來以向一組用戶提供隨需服務。
為本發明所描述的一些變型可以在用於每一種特殊應用的任何希望的結合中實現。因此特定的限制,和/或者這裡描述的實施例增強,儘管可能對一特定的應用有著特定的優勢,但並不需要在所有的應用中都被使用。而且,並不是所有的限制都需要在包括本發明的一個或多個概念的方法、系統和/或裝置中被實現。
本發明可以在硬體、軟體或者硬體與軟體的結合中實現。根據本發明的可視化工具可以以集中的方式在一個計算機系統中實現,或者以分布的方式實現,在這種分布方式中,不同的元件被散布在幾個互連的計算機系統中。任何類型的計算機系統一或者其他適用於執行這裡描述的方法和/或功能的裝置一都是適合的。一種典型的硬體和軟體的結合可以是帶有電腦程式的通用計算機系統,該電腦程式當被加載和執行時,控制該計算機系統以使其執行這裡所描述的方法。本發明也可以嵌入到電腦程式產品中,該電腦程式產品包含了使能實現這裡所描述的方法的所有特徵,並且,當其被加載到計算機系統時,能夠執行這些方法。
本文中的電腦程式裝置或者電腦程式包括一組指令的以任何語言、代碼或符號表示的任何表達,該組指令旨在使得具有信息處理能力的系統或者直接地、或者在轉化成另外一種語言、代碼或符號和/或以不同的材料形式的再現之後執行特定的功能。
因此本發明包括一種包含了計算機可用介質的製造物品,其中,該介質具有體現在其中的用於產生上述功能的計算機可讀程序代碼裝置。該製造物品中的計算機可讀程序代碼裝置包含了用於使得計算機實現本發明的方法的步驟的計算機可讀程序代碼裝置。類似地,本發明可實現為一種包含計算機可用介質的電腦程式產品,該計算機可用介質具有體現在其中的用於引起上述功能的計算機可讀程序代碼裝置實施例。該電腦程式產品中的計算機可讀程序代碼裝置包含了用於使得計算機實現本發明的一個或多個功能的計算機可讀程序代碼裝置。此外,本發明還可以實現為機器可讀的程序存儲設備,該程序存儲設備有形地體現了機器可執行以完成用於產生本發明的一個或多個功能的方法步驟的指令程序。
值得注意的是,前述內容已經概述了本發明的一些更相關的目標和實施例。本發明可以使用在很多應用中。因此,雖然這裡的描述是對一些特定的安排和方法作出的,但是本發明的目的和概念對於其他的安排和應用也是適合的和可應用的。本領域的技術人員們應很清楚,可以對上述所公開的實施例進行修改而不脫離本發明的精神和範圍。所描述的實施例應該被理解為僅說明了本發明的一些更突出的特徵和應用。通過以一種不同的方式應用所公開的發明或者以本領域的技術人員所了解的方式修改本發明,可實現其他有益的結果。
權利要求
1.一種包括為實體提供至少一個域的層級式管理的方法,所述提供層級式管理的步驟包括獲取所述至少一個域的層級式表示,所述表示包括要被管理的計算環境的列表,控制為所述至少一個域從資源庫獲取至少一個資源的至少一個策略,和所述至少一個域內的任何子域;以及實例化該表示。
2.如權利要求1中所述的方法,進一步包括在構造所述層級式管理時,獲得用於所述計算環境列表的所需要的資源集;以及將用於所述資源集的資源提供給所述至少一個域。
3.如權利要求1中所述的方法,進一步包括更新所述表示的至少一個策略。
4.如權利要求1中所述的方法,進一步包括利用庫服務。
5.如權利要求1中所述的方法,進一步包括將每一個計算環境與特定的子域相關聯。
6.如權利要求4中所述的方法,其中所述利用步驟包括保留為所述計算環境列表所需要的資源集。
7.如權利要求6中所述的方法,進一步包括獲取所述資源集並且使用來自所述資源集的至少一個資源。
8.如權利要求1中所述的方法,其中所述至少一個域是多個域。
9.如權利要求8中所述的方法,其中來自所述至少一個域的至少一個域是另外一個域的子域。
10.如權利要求9中所述的方法,其中所述至少一個域中的至少一個域是根域。
11.如權利要求4中所述的方法,進一步包括將來自所述庫服務的至少一個庫服務與至少一個收集器相關聯。
12.如權利要求4中所述的方法,其中基資源的數量和類型都隨時間而改變。
13.一種包含這樣的計算機可用介質的製造物品,該計算機可用介質具有體現在其中的、用於使得為計算公共設施提供至少一個域的層級式管理的計算機可讀程序代碼裝置,所述製造物品中的計算機可讀程序代碼裝置包括用於使得計算機完成權利要求1中的步驟的計算機可讀程序代碼裝置。
14.一種機器可讀的程序存儲設備,其有形地體現了機器可執行以完成用於為計算公共設施提供至少一個域的層級式管理的方法步驟的指令程序,所述方法步驟包括權利要求1中的步驟。
15.一種包括用於為計算公共設施提供至少一個域的層級式管理的裝置的裝置,所述用於提供層級式管理的裝置包括用於獲得所述至少一個域的層級式表示的裝置,所述表示包括要被管理的計算環境的列表,控制為所述至少一個域從複合資源獲取至少一個資源的至少一個策略,和所述至少一個域內的任何子域;以及用於實例化該表示的裝置。
16.一種包含這樣的計算機可用介質的電腦程式產品,該計算機可用介質具有體現在其中的、用於使得為計算公共設施提供至少一個域的層級式管理的計算機可讀程序代碼裝置,所述電腦程式產品中的計算機可讀程序代碼裝置包括用於使得計算機實現權利要求15中的功能的計算機可讀程序代碼裝置。
17.一種方法,包括創建實體的層級式的表示,包括將該實體組織到域的域樹中,其中每個域代表該實體內的組織,所述每個域從計算公共設施獲得計算環境和資源。
18.如權利要求17中所述的方法,進一步包括確定將與每個域關聯的計算環境;為每個域確定獲取策略和分布策略;將所述域樹轉換為收集器層級結構;以及將所述收集器層級結構連接到託管環境的託管根收集器中。
19.如權利要求18中所述的方法,進一步包括使用所述託管環境來供應至少一個計算環境和至少一個資源給所述實體。
20.如權利要求18中所述的方法,其中所述連接步驟由服務提供者執行。
21.如權利要求18中所述的方法,其中所述連接步驟包括將用於所述託管環境的多個用戶的收集器層級結構連接到託管根收集器中。
22.如權利要求18中所述的方法,其中所述轉換步驟包括插入收集器作為收集器層級結構的層級結構根收集器,確定所述域樹的根域的若干計算環境,以及該域樹的根域的子域是否存在,如果只有一個計算環境,而且該域樹的根域沒有子域,則在所述收集器層級結構中插入PMRS,並終止該轉換步驟,否則,對於該域樹的所述根域的每個計算環境,向所述收集器層級結構的根收集器添加收集器和PMRS;確定該域樹的所述根域的、只有一個計算環境的子域對於該域樹的所述根域的、只有一個計算環境而沒有其他子域的每個子域,將PMRS插入到該收集器層級結構,對於該域樹的所述根域的、有多於一個計算環境或者其他子域的每個子域,將所述每個子域放在域處理列表中;以及重複所述插入收集器的步驟,為域處理列表中的每個域確定若干計算環境就如同它是根域一樣的步驟,以及確定該域樹的所述根域的、只有一個計算環境的子域的步驟,直到所述域處理列表為空。
23.如權利要求18中所述的方法,其中所述連接步驟由服務提供者執行。
24.如權利要求1中所述的方法,其中所述方法被用於隨需提供服務。
25.一種包含這樣的計算機可用介質的製造物品,該計算機可用介質具有體現在其中的用於使得創建實體的層級式表示的計算機可讀程序代碼裝置,所述製造物品中的計算機可讀程序代碼裝置包括用於使得計算機完成權利要求17中的步驟的計算機可讀程序代碼裝置。
26.一種機器可讀的程序存儲設備,其有形地體現了機器可執行以完成用於創建實體的分層表示的方法步驟的指令程序,所述方法步驟包括權利要求17中的步驟。
27.一種裝置,包括用於創建實體的層級式的表示的裝置,其包括用於將該實體組織到域的域樹中的裝置,其中每個域都代表該實體內的組織,所述每個域從計算公共設施中獲得計算環境和資源。
28.一種包含這樣的計算機可用介質的電腦程式產品,該計算機可用介質具有體現在其中的、用於使得創建實體的層級式表示的計算機可讀程序代碼裝置,所述電腦程式產品中的計算機可讀程序代碼裝置包括用於使得計算機實現權利要求27中的功能的計算機可讀程序代碼裝置。
29.一種裝置,包括多個收集器來代表計算公共設施中的多個域,每一個所述收集器都被連接到至少一個其他收集器,每個收集器具有控制器,用來為每個域控制被保留資源;策略顧問,用來解釋任何策略;以及資源管理器,用來為計算環境管理資源獲取。
30.如權利要求29中所述的裝置,所述裝置進一步包括至少一個基資源庫服務,至少一個收集器與所述至少一個基資源庫服務的至少一個相關聯,所述基資源庫服務具有資源操作接口和目錄接口。
31.如權利要求30中所述的裝置,其中所述至少一個基資源庫服務包括至少一個公有的基資源庫服務來向至少一個域提供庫服務,所述公有的基資源庫服務具有資源操作接口和目錄接口。
32.如權利要求29中所述的裝置,其中所述資源操作接口提供了取自這樣的一組操作的操作,該組操作包括保留,取消保留,籤入,籤出,查詢,更新,以及這些操作的任何組合。
33.如權利要求29中所述的裝置,其中所述目錄操作接口提供了取自這樣的一組操作的操作,該組操作包括保留,添加,刪除,更新,查詢,以及這些操作的任何組合。
34.如權利要求10中所述的方法,進一步包括請求計算環境作出對資源的特定組合的請求;檢驗所述請求計算環境的獲取策略的所述表示,來驗證對該資源的特定組合的請求的滿足是在所述請求計算環境的獲取策略內;以及對所述請求收集器的所有父收集器重複該檢驗步驟,直到到達任何根收集器。
35.如權利要求34中所述的方法,進一步包括確定獲取策略是否在到達任何根收集器的過程中一直都被滿足。
36.如權利要求10中所述的方法,進一步包括作出對資源的特定組合的請求;確定開始為該資源組合進行搜索的起始收集器;檢驗該起始收集器是否有至少一個來自所述資源組合的資源,所述至少一個資源是已經被定位的資源;檢驗是否存在至少一個庫包括至少一個來自所述資源組合的資源,所述至少一個資源是已經被定位的資源;在從起始收集器到任何根收集器的每個收集器處重複所述檢驗步驟;如果所述組合的所有資源都是被定位的資源,則保留所有被定位的資源,否則拒絕該請求。
37.如權利要求36中所述的方法,進一步包括調用仲裁來繼續定位來自所述資源組合的所有資源。
38.如權利要求1中所述的方法,其中所述至少一個資源是基資源或複合資源。
39.如權利要求1中所述的方法,進一步包括將所述至少一個資源組織到被提供給多個用戶的服務中。
40.如權利要求1中所述的方法,進一步包括將基資源分配給庫服務。
41.如權利要求40中所述的方法,進一步包括從滿足服務描述的基資源編制複合資源。
42.如權利要求1中所述的方法,進一步包括將複合資源分配給庫服務。
43.如權利要求1中所述的方法,進一步包括將服務分配給庫服務。
44.一種用於計算公共設施的體系結構,包括用來為多個客戶提供至少一個服務的裝置,所述裝置包括基資源分布服務,用來將資源分配給所述至少一個服務;所述基資源分布服務有至少一個收集器;至少一個與所述基資源分布服務連接的供應和管理資源服務,用來為所述至少一個服務供應和管理所述資源;以及至少一個與所述基資源分布服務連接的基資源庫服務,用來提供資源的保留和分配。
45.一種如權利要求44中所述的體系結構,其中所述基資源分布服務包括至少一個收集器,每個收集器保持了特定域的表示,並且持有所述特定域的策略以及持有為所述特定域保留的資源;以及與所述基資源分布服務連接並對所述每個收集器都可用的仲裁器,所述仲裁器向所述計算公共設施的每個收集器提供動態的資源分配。
46.一種如權利要求44中所述的體系結構,其中該體系結構由隨需服務所使用。
47.一種包含這樣的計算機可用介質的電腦程式產品,該計算機可用介質具有體現在其中的、用於控制和管理資源的計算機可讀程序代碼裝置,所述電腦程式產品中的計算機可讀程序代碼裝置包括用於使得計算機實現權利要求29中的功能的計算機可讀程序代碼裝置。
全文摘要
本發明提供了計算基礎設施的層級式供應和管理,該計算基礎設施用於向操作該基礎設施的服務提供者的用戶提供計算服務。本發明提供了用於計算環境的層級式管理的體系結構。用戶(120)可以在其域內具有多個計算環境。本發明使得資源(121、122、123)能夠被專用於特定的用戶域或專用於特定的計算環境。用戶(120)可指定控制他們在其域內對資源的使用的獲取和分布策略。
文檔編號G06F17/30GK1914608SQ200480041190
公開日2007年2月14日 申請日期2004年1月30日 優先權日2004年1月30日
發明者T·埃蘭, G·D·胡特, S·D·米勒, L·B·穆默特 申請人:國際商業機器公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀