專利名稱:在提供系統(tǒng)中定義資源配置簡表的一般方法
技術領域:
本發(fā)明涉及計算機資源的自動提供系統(tǒng)(provisioning system)。本發(fā)明尤其涉及用于捕捉、存儲與部署配置簡表(profile),使得計算資源能夠在計算資源提供系統(tǒng)中被自動配置的方法和系統(tǒng)。
背景技術:
隨著企業(yè)試圖對變化中的需求和環(huán)境做出更快反應,更加需要快速重新分配在信息技術(IT)中使用的資源的能力??梢灶A見,在一個計算機服務模型中,企業(yè)將能夠與服務的IT提供商簽約。在這種模型中,提供公司將提供計算機硬件和軟件,這些硬件和軟件能夠被靈活地互連以在需要的時間內(nèi)作為客戶端,但是在需求終止時,可以被釋放回到通用資源池(general pool)中。提供公司能夠向客戶的位置提供設備和軟件,或者通過到另一個位置的所需資源的連接來提供服務。一旦資源被釋放回到通用資源池,系統(tǒng)能夠根據(jù)需要被重新配置以滿足下一個客戶的需求。
眾所周知,與增加或重新分配IT資源有關的過程是相當漫長、乏味的。理想狀態(tài)下,自動提供系統(tǒng)可以在很少或沒有人為干預的情況下分配和配置計算資源,使得這些資源能夠在操作中快速而有效地放入和移出。這樣,操作人員就能夠從管理由計算資源組成的基礎設施的大量負擔中解脫出來,使操作成本更低。自動提供也能夠利于更流暢、更及時、更自動化的資源分配與配置,從而允許管理層使用更多樣、效益更好的價格策略,例如提供商可使用計量使用服務。
提供自動提供資源的能力就是主要的挑戰(zhàn),因為不同的資源不僅要求不同的參數(shù),而且要求不同類型的配置參數(shù)。例如,為提供信息存儲設備,人們應該知道使用模式和要求的響應水平;相反,為提供軟件,人們一般需要了解有關處理器速度和快速存儲量的信息。而且,資源參數(shù)可以根據(jù)使用資源的用戶環(huán)境而要求不同的值。例如,分配給日志文件的空間大小依賴于業(yè)務量模式,其中低業(yè)務量環(huán)境比高業(yè)務量環(huán)境要求更少的磁盤空間。
現(xiàn)有的提供系統(tǒng)使用解決該問題的若干方法中的一種。一些提供系統(tǒng)支持用固定的參數(shù)值的集合進行的配置。在這種情況下,根據(jù)自己的需求來定制配置是客戶的職責。其它系統(tǒng)提供一種機制以在提供過程中執(zhí)行配置腳本,并期望管理員提供必要的腳本并且處理配置值的復雜問題。最后,有些提供系統(tǒng)期望當缺省配置不適合的時候,針對要提供的每個環(huán)境編寫不同的配置腳本。希望有一種提供系統(tǒng),其中系統(tǒng)自己能夠處理盡可能多的復雜問題。
發(fā)明內(nèi)容
本發(fā)明提供了一種用來獲取和存儲每個資源類型的配置文件模板的一般方法或模型。當為客戶安裝資源時,期望值被插入模板的拷貝以創(chuàng)建配置簡表。這種配置簡表能夠被存儲,而且配置值能夠根據(jù)需要而改變,以反映資源生命周期內(nèi)的不同階段,例如配置、修改和刪除。如果客戶希望安裝與已有的安裝相似,已有安裝的配置文件可以用來為新的安裝創(chuàng)建配置簡表。
在所附權利要求中提出了被認為是本發(fā)明特征的新穎特性。然而,結合附圖并參考以下對圖解實施例的詳細描述,可最優(yōu)地理解發(fā)明本身,其優(yōu)選實施方式,其進一步的目的和優(yōu)勢,其中圖1示出了一種提供系統(tǒng)及它與提供商、服務和客戶之間的關系。
圖2根據(jù)本發(fā)明示例性實施例示出了軟件資源的示例性記錄布局。
圖3根據(jù)本發(fā)明實施例示出了為作為軟件包的類(class)定義參數(shù)時使用的屏幕。
圖4A根據(jù)本發(fā)明實施例示出了根據(jù)配置簡表模板和分配請求,以及可選的先前配置簡表為給定安裝形成配置簡表的過程。
圖4B示出了根據(jù)新配置簡表和有關安裝程序格式的信息形成配置記錄的過程。
圖5根據(jù)本發(fā)明的實施例示出了在建立軟件包的實例時使用的屏幕。
具體實施例方式
下面參考附圖來解釋本發(fā)明的實施例。雖然該實施例在例子中使用了軟件,但是應該理解,本領域普通技術人員也可以修改本發(fā)明來提供硬件。
圖1示出了如何使用自動提供系統(tǒng)給客戶提供服務。服務提供商102提供了各種受管理的服務104。這些服務包括,但并不限于,服務器、終端、磁盤空間和各種軟件。希望得到服務104的客戶110可以通過因特網(wǎng)108或其它手段(未示出),例如電話來與提供商104取得聯(lián)系。然后提供過程由自動提供系統(tǒng)106來操縱。合同上的協(xié)議可以采用各種各樣的形式。例如客戶可以與提供商102訂合同在客戶位置安裝服務器和終端,其中在客戶110加人員的時候終端被提供商102添加進去。對軟件的升級可以在接收到請求時由自動提供系統(tǒng)自動下載到客戶的計算機。第二個客戶也可以有一個企業(yè),其中隨著不同項目的開始和結束,計算資源需要隨時間發(fā)生非常顯著的變化。這個客戶可以在必要的位置具有基本的計算機設備,但是按合同在項目的生命期內(nèi)使用從服務提供商獲得的服務器、存儲設備和軟件。這種第三方提供系統(tǒng)在美國專利申請20020169876中已有描述,該申請題為“用于第三方資源提供管理的方法和系統(tǒng)”,這里加以引用作為參考。
為了使自動提供系統(tǒng)工作,系統(tǒng)必須具有關于可用的硬件和軟件,以及它們的要求和可能的設置的信息。為了提供這類信息,本發(fā)明的方法為每個可用資源提供一個配置簡表規(guī)格,其將在下文中詳細講述。使用本發(fā)明建立的自動提供系統(tǒng)具有在針對不同環(huán)境提供資源時動態(tài)分配替換參數(shù)(override parameter)的能力,而且該系統(tǒng)能夠使用相同的一般機制或工作流程來提供不同的資源。在優(yōu)選實施例中,提供系統(tǒng)是用面向?qū)ο缶幊?OOP)語言編寫的,熟悉OOP的人們會認識到該系統(tǒng)的設計反應了OOP的觀點。
在這里描述的實施例中,根據(jù)類型將計算資源分組,其中類型的定義有各種不同的粒度。例如,粗粒度可以把不同類型的硬件與軟件區(qū)分開,而更精細的粒度可以根據(jù)組內(nèi)資源共有的屬性和規(guī)格來區(qū)分Windows軟件和DB2軟件,或者區(qū)分操作系統(tǒng)、數(shù)據(jù)庫等。硬件的每個種類和型號,以及軟件程序的每個版本構成一個OOP類。類定義了基本資源,列出使用資源所需的最低要求,同時也定義在資源安裝時需要的配置信息。在對類進行定義時,配置資源所需的每個信息被定義成配置參數(shù),其中所有配置參數(shù)形成配置簡表。存儲在提供程序能夠訪問的位置的類定義用作相關資源的主模板。然后,當資源的特定實例被安裝時,該安裝的特定參數(shù)將被寫入模板的拷貝中,用于安裝資源,并且最好保存為該安裝的記錄。
圖2示出了軟件資源的類記錄的示例性實施例。可以看到,軟件資源的規(guī)格包含資源名202、軟件類型碼204(例如操作系統(tǒng)、字處理器或游戲)、版本號206、運行軟件所需的存儲器量208以及保存代碼所需的磁盤空間210。也可以使用對資源和提供系統(tǒng)合適的其它字段。此外,該記錄包含配置簡表的空間,這是在安裝拷貝時候用到的信息。在配置簡表中分配空間以在安裝名212和安裝說明214中標識具體安裝或資源實例,例如XYZ公司,安裝在主位置。配置簡表也包括一組或多組參數(shù)215。每個參數(shù)215可以有參數(shù)名216,參數(shù)說明218,缺省值220和用于指明是否能夠替換(override)參數(shù)值、不能替換參數(shù)值或者必須替換參數(shù)的缺省值的替換指示222。每個參數(shù)也包含人工干預碼224,用來指示提供過程中是否要求人工干預,以及一個用于任何干預指令226的字段(僅用于需要人工干預的時候)。顯然,雖然在這個例子只列出了兩個參數(shù),但是每個資源可以所需數(shù)目的參數(shù)。有些參數(shù)可以用于資源本身,例如為工作文件分配的空間。其它參數(shù)可以是用來配置提供過程行為的指示——人工干預碼224就是這種類型的指示的例子。當用這樣的參數(shù)配置資源時,如果該參數(shù)有一個正值,則提供引擎就會發(fā)起一個人工步驟。
每當提供公司獲得新資源,例如新的軟件包或者已有軟件包的新版本時,產(chǎn)生這樣的類規(guī)格。有缺省值的類規(guī)格的產(chǎn)生最好通過圖形用戶界面(GUI)或其它方式進行。圖3示出了一個用于收集參數(shù)信息的示例性GUI。屏幕在增加參數(shù)部分302提示用戶輸入?yún)?shù)值。已有參數(shù)的值在參數(shù)列表304中示出,用戶通過標記參數(shù)并點擊刪除參數(shù)按鈕306可以從該表中刪除參數(shù)。具有其相關配置簡表的資源規(guī)格被儲存在永久存儲器,例如文件或數(shù)據(jù)庫中。當資源被安裝時,提供引擎和相關程序使用來自這個類規(guī)格的數(shù)據(jù)。
圖4A示出了配置簡表模板與特定安裝的配置簡表之間的關系。在該圖中,軟件資源規(guī)格402提供與該軟件相關的信息。配置簡表模板404是軟件規(guī)格402的擴展。該配置簡表規(guī)格404包含所有通過圖3屏幕輸入的配置參數(shù)規(guī)格406,以及它們的缺省值。當要使用軟件規(guī)格402中規(guī)定的資源執(zhí)行一個安裝時,就提交一個軟件分配請求410。如果該資源是第一次被這個用戶使用,那么分配請求410將給客戶想要的任何參數(shù)指定不同于缺省值的值。然而,如果客戶前面使用該資源進行過安裝,那么可訪問該安裝的配置記錄412以提供有關期望值的信息。軟件分配請求410和可選的前一次安裝的配置記錄412將為這次安裝提供需要的參數(shù)值。這些參數(shù)值將被插入到配置參數(shù)模板406的一個拷貝中以形成新記錄,也就是反映這個特定安裝的配置的配置簡表414。該配置簡表414最好保存在長期存儲器中以便能夠再次使用。在把配置簡表414的信息送到安裝程序之前,一個最后步驟是必須的。若干不同的安裝程序可以用來安裝該軟件,其中每個安裝程序都期望以特定格式和特定順序接收適當信息,雖然格式和順序可以根據(jù)安裝程序而改變。在公開的提供系統(tǒng)中,涉及安裝程序,其要求的格式和要求的輸入順序的信息作為安裝程序簡表420保存在存儲設備中,見圖4B。通過使用安裝程序簡表420,配置簡表414以正確的順序放置,并被轉(zhuǎn)換成針對將安裝軟件的安裝程序的正確格式,從而形成安裝記錄420。該安裝記錄420與要安裝的軟件的拷貝一起發(fā)送給安裝程序。
在本發(fā)明的優(yōu)選實施例中,配置簡表414可以在資源的生命周期里進行必要的更新。例如,一個軟件程序用處理器速度的給定參數(shù)來安裝。如果在將來的某個時候處理器更新到更快的型號,則軟件配置簡表414的保存版本能夠被從存儲設備中檢索到,并用更快的處理器速度和安裝在新處理器上的程序來更新。
圖5示出了一個用于建立軟件程序的特定安裝的示例性GUI,本例中的軟件程序是一個名為“無冬之夜”的游戲,版本為1.0.4。提供該包的缺省參數(shù),其中參數(shù)左側的符號指示用戶能否替換該參數(shù)。在這個例子中,“X”表示用戶不能替換該參數(shù),而鉛筆表示用戶必須替換該參數(shù)。
雖然在本申請中舉例說明的是軟件包,但是提供的資源并不局限于軟件。本領域技術人員可以將本發(fā)明應用于其它資源,例如物理資源(例如服務器和交換機),邏輯資源(例如客戶服務器組和存儲分配),或虛擬資源(例如虛擬機)。此外,在配置簡表中捕捉到的特定單元的修改或替換也可以由本領域技術人員加以修改,并且此修改在本發(fā)明的范圍內(nèi)。
非常值得注意的是,雖然本發(fā)明是在完整的功能性數(shù)據(jù)處理系統(tǒng)的上下文中描述的,但是本領域的普通技術人員應該理解,本發(fā)明的過程能夠以計算機可讀指令介質(zhì)的形式以及其它各種形式分配,而且本發(fā)明不論實際用來實現(xiàn)分配的承載介質(zhì)信號的特定類型如何,都同等適用。計算機可讀介質(zhì)的例子包括記錄型介質(zhì),諸如軟盤、硬盤、RAM、CD-ROM、DVD-ROM,和傳輸類介質(zhì),例如數(shù)字與模擬通信鏈路、使用傳輸形式的有線和無線通信鏈路,例如射頻和光波傳輸。計算機可讀介質(zhì)可以采用編碼格式,它們在特定的數(shù)據(jù)處理系統(tǒng)中可以被解碼。
本發(fā)明的描述是為了說明和描述的目的,并不試圖窮舉或者在形式上限制本發(fā)明。對于本領域的普通技術人員來講顯然可以做很多修改和變化。這里的實施例的選擇和描述是為了更好地理解本發(fā)明的原理和實際應用,并使得其他熟悉本領域的普通技術人員理解本發(fā)明,以期得到各種修改后的、適用于可以想到的特定應用的實施例。
權利要求
1.一種配置資源的方法,包含計算機操作的步驟從客戶接收期望資源的提供請求;訪問所述期望資源的配置簡表模板;如果被指定,則檢索出與所述期望資源及所述客戶相應的先前保存的配置簡表;組合來自所述提供請求、所述配置簡表模板以及所述先前保存的配置簡表的信息以形成所述資源的當前實例的新配置簡表。
2.根據(jù)權利要求1的方法,進一步包含將所述新配置簡表傳遞給安裝程序。
3.根據(jù)權利要求1的方法,進一步包含將新配置簡表存儲到永久存儲設備。
4.根據(jù)權利要求1的方法,進一步包含將所述新配置簡表中的信息放置成給定安裝程序所需的順序和格式以形成安裝記錄,并把所述安裝記錄發(fā)送到所述安裝程序。
5.根據(jù)權利要求1的方法,進一步包含在所述資源的所述實例被改變的情況下更新所述新配置簡表。
6.一種提供資源的方法,包括針對多個資源中的每個資源的步驟接收涉及要提供的資源的信息,所述信息至少包括資源標識符,類型碼,參數(shù)名,參數(shù)缺省值,和指示是否能夠替換所述參數(shù)缺省值、不能替換所述參數(shù)缺省值,或必須替換所述參數(shù)缺省值的指示;將所述信息格式化成標準格式以形成配置簡表模板;以及將所述配置簡表模板存儲到可被提供應用訪問的位置。
7.根據(jù)權利要求6的方法,其中多個配置簡表模板被存儲在永久存儲設備中。
8.根據(jù)權利要求7的方法,進一步包含更新配置簡表的所述配置參數(shù)中的至少之一。
9.根據(jù)權利要求6的方法,進一步包含檢索出配置簡表模板并使用其中的信息產(chǎn)生包括配置簡表,該配置簡表含有用于資源的給定安裝的配置參數(shù)。
10.根據(jù)權利要求9的方法,進一步包含將配置簡表中包含的信息格式化成安裝程序要求的順序和格式以形成安裝記錄,并將所述安裝記錄傳遞給所述安裝程序。
11.一種用于在計算機系統(tǒng)中并且通過計算機系統(tǒng)實現(xiàn)提供系統(tǒng)的計算機程序產(chǎn)品,該計算機程序產(chǎn)品由一系列指令實現(xiàn),并且被存儲在計算機可讀介質(zhì)中,這些指令包含接收指令,用于接收涉及要提供的資源的信息,所述信息至少包括資源標識符,類型碼,參數(shù)名,參數(shù)缺省值,和指示是否能夠替換所述參數(shù)缺省值、不能替換所述參數(shù)缺省值,或必須替換所述參數(shù)缺省值的指示;格式化指令,用于將所述信息格式化成標準格式以形成配置簡表模板;以及存儲指令,用于將所述配置簡表模板存儲到可被提供應用訪問的位置。
12.根據(jù)權利要求11的計算機程序產(chǎn)品,進一步包含用于將多個配置簡表模板存儲到永久存儲設備中的指令。
13.根據(jù)權利要求11的計算機程序產(chǎn)品,進一步包含更新指令,用于更新配置簡表的配置參數(shù)中的中至少一個。
14.根據(jù)權利要求11的計算機程序產(chǎn)品,進一步包含檢索指令,用于檢索出配置簡表模板并且使用其中的信息產(chǎn)生包含配置簡表,該配置簡表包含用于資源的給定安裝的配置參數(shù)。
15.根據(jù)權利要求11的計算機程序產(chǎn)品,進一步包含格式化指令,用于將配置簡表中包含的信息格式化成安裝程序要求的順序和格式以形成安裝記錄,并且將所述安裝記錄傳遞給所述安裝程序。
16.一種提供系統(tǒng),包含由提供實體提供的多個資源;多個存儲的配置簡表模板,每個模板提供涉及所述多個資源中的相應一個資源的安裝所需的參數(shù)的信息;多個配置簡表,每個所述配置簡表對應于特定環(huán)境下相應資源的指定安裝,其中每個所述配置簡表中的至少一些字段對應于相應配置簡表模板中的字段;和用于接收提供請求的請求系統(tǒng)。
17.根據(jù)權利要求16的提供系統(tǒng),其中所述配置簡表模板包含一個或多個具有缺省值的參數(shù),而且相應配置簡表包含具有實際值的對應參數(shù)。
18.根據(jù)權利要求16的提供系統(tǒng),其中所述配置簡表中的參數(shù)可以是文本或整數(shù),并且具有任意長度。
19.根據(jù)權利要求16的提供系統(tǒng),其中配置簡表模板中的每個參數(shù)包含參數(shù)名,缺省值,和有關是否能夠替換所述缺省值、必須替換所述缺省值、不能替換所述缺省值或人工干預的指示。
20.根據(jù)權利要求16的提供系統(tǒng),其中所述多個配置簡表是可更新的。
21.根據(jù)權利要求16的提供系統(tǒng),其中所述配置簡表被傳遞給安裝程序。
全文摘要
在提供系統(tǒng)中獲取并存儲每個資源的配置簡表的一般方法和模型。當在一個特定環(huán)境中使用一個資源時,配置值可以按需改變來反映資源生命周期中的不同階段,例如配置、修改和刪除。
文檔編號G06F15/16GK1591445SQ20041006419
公開日2005年3月9日 申請日期2004年8月24日 優(yōu)先權日2003年8月28日
發(fā)明者鄺麗瑤, 安德魯·朱利葉斯·格里夫, 米歇爾·哈賽恩·卡蘭塔, 戴維·喬治·金 申請人:國際商業(yè)機器公司