專利名稱:用于管理多主機(jī)環(huán)境下的公共信息模型的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種改善的數(shù)據(jù)處理系統(tǒng),并且具體來講,涉及一種用于多計(jì)算機(jī)系統(tǒng)管理的方法和設(shè)備。
背景技術(shù):
計(jì)算機(jī)系統(tǒng)管理需要與計(jì)算機(jī)組件和網(wǎng)絡(luò)組件、這些項(xiàng)目的每一個的狀態(tài)及其關(guān)系有關(guān)的信息。這種信息可以包括網(wǎng)絡(luò)發(fā)現(xiàn)、網(wǎng)絡(luò)路徑、計(jì)算機(jī)、操作系統(tǒng)、文件系統(tǒng)、網(wǎng)卡、已安裝的應(yīng)用、應(yīng)用組件、用戶事務(wù)、使用統(tǒng)計(jì)以及其他信息。
有許多不同的方法來從計(jì)算機(jī)網(wǎng)絡(luò)及其組件中發(fā)現(xiàn)并且檢索部分這種信息,并且使這種信息可以為客戶端所利用。最常用的方法是學(xué)科特定的、域特定的或者單個主機(jī)特定的。學(xué)科特定的方法的示例是收集監(jiān)控和可用性信息以便對該信息采取動作。域特定的方法的示例是對諸如應(yīng)用、模塊、小服務(wù)程序、EJB等的J2EETM資源的管理,其在JavaTM2平臺企業(yè)編輯管理規(guī)范(JavaTM2 Platform EnterpriseEdition Management Specification)的JavaTM規(guī)范請求(JSR)77中進(jìn)行了定義。單個主機(jī)特定的方法的示例是MicrosoftTM的視窗管理工具(Windows Management Instrumentation,WMI),其中該單個主機(jī)特定的方法允許檢索與運(yùn)行MicrosoftTMWindowsTM操作系統(tǒng)的計(jì)算機(jī)有關(guān)的信息。
然而,只選擇這些方法之一,還不足以識別和/或解決某些當(dāng)今復(fù)雜的系統(tǒng)管理的問題。此外,這些方法中的每一種的實(shí)現(xiàn)方式通常使其發(fā)現(xiàn)的信息可以一種專有的方式利用。例如,系統(tǒng)管理員在多主機(jī)、多學(xué)科、多域環(huán)境中發(fā)現(xiàn)問題的根本原因方面將會是十分困難的,其中,在所述環(huán)境中,每種方法以不同的方式來揭示其信息,并且相關(guān)信息來自多個主機(jī)。同樣地,在確定哪些主機(jī)、其應(yīng)用及其用戶在特殊的主機(jī)、操作系統(tǒng)、應(yīng)用、文件服務(wù)器等因崩潰或者安排的系統(tǒng)維護(hù)而變得不可利用時將會受到影響的過程中,系統(tǒng)管理員也存在困難。
一種用于依照公共方式揭示來自不同域的信息的現(xiàn)有機(jī)制是通過分布式管理任務(wù)組(Distributed Management Task Force,DMTF)的公共信息模型(CIM)來實(shí)現(xiàn)的。信息可通過CIM模型由CIM對象管理器(CIM Object Manager,CIMOM)利用。CIMOM可以把信息保持在其存儲庫(repository)內(nèi),并且CIMOM還可以通過添加供應(yīng)商插件(plug-in)來用附加信息進(jìn)行擴(kuò)展。CIM已經(jīng)成為軟件行業(yè)內(nèi)用于工具(instrumentation)和關(guān)系的共同特性(commondenominator)。有意義的基于CIM的數(shù)據(jù)目前可以在各種操作系統(tǒng)環(huán)境下被客戶端利用,所述操作系統(tǒng)環(huán)境例如是WindowsTM、SolarisTM、AIXTM、OS/400TM和zOSTM平臺。
客戶端可以與CIMOM連接并且檢索期望的信息。客戶端可以使用標(biāo)準(zhǔn)協(xié)議并結(jié)合應(yīng)用編程接口(API)來遠(yuǎn)程訪問這些信息,其中所述標(biāo)準(zhǔn)協(xié)議例如在2003年1月6日由Distributed Management TaskForce公司(DMTF)提出的“DMTF CIM Operations Over HTTP”(1.1版本)內(nèi)定義了,所述應(yīng)用編程接口在2000年3月1日由SunMicrosystems提出的“JSR(Java Specification Request)48WBEM(Web-Based Enterprise Management)Services Specification”中定義了。JSR 48定義了用于從遠(yuǎn)程CIMOM訪問基于CIM的數(shù)據(jù)的JavaTMAPI,以及用于利用供應(yīng)商插件擴(kuò)展可利用的CIMOM內(nèi)容的附加API。
然而,在所述CIMOM體系結(jié)構(gòu)內(nèi)也存在不足?,F(xiàn)有的CIMOM無法揭示來自一個以上的主機(jī)中的信息,即使所述主機(jī)具有同一平臺類型也一樣。此外,現(xiàn)有CIMOM既不支持也不管理一個以上的主機(jī)之間的關(guān)系。此外,現(xiàn)有CIMOM不支持通常無法共存或者位于不同模式級別(schema level)的模型。不會在同一CIMOM中發(fā)現(xiàn)的兩個模型的示例是SolarisTM特定的CIM模型和WindowsTM特定的CIM模型。不同模式級別的示例是CIM版本2.7模式和CIM版本2.8模式。
因此,提供一種具有將來自多種類型的方法、主機(jī)和版本的模型和信息進(jìn)行整合(integrate)的能力的系統(tǒng)和方法,將是十分有益的,其中所述能力包括可根據(jù)需要建模并包括附加的工具(當(dāng)其不存在時)。此外,還將會十分有益的是,特別是通過使用程序設(shè)計(jì)機(jī)制來建模、創(chuàng)建和管理跨系統(tǒng)的和跨領(lǐng)域的關(guān)系,以便依照統(tǒng)一的方式向客戶端揭示信息。
發(fā)明內(nèi)容
一種用于在數(shù)據(jù)處理系統(tǒng)內(nèi)采用公共信息模型(CIM)資源的方法和系統(tǒng)。接收關(guān)于對CIM資源的操作的請求,并且就所述請求是可以在本地實(shí)現(xiàn)還是在遠(yuǎn)程實(shí)現(xiàn)進(jìn)行確定。響應(yīng)于在本地實(shí)現(xiàn)所述請求的確定,把所述請求委托(delegate)給本地CIM對象管理器(CIMOM)功能,以便從本地存儲庫或者從在本地管理的供應(yīng)商那里獲得結(jié)果數(shù)據(jù)。響應(yīng)于在遠(yuǎn)程實(shí)現(xiàn)所述請求的確定,把所述請求委托給一個或多個遠(yuǎn)程CIMOM,并且從多個遠(yuǎn)程CIMOM中聚集結(jié)果數(shù)據(jù)。然后,把所述結(jié)果數(shù)據(jù)返回給所述請求的發(fā)起者。
在所附權(quán)利要求書中闡明了被認(rèn)為是本發(fā)明的特性的新穎特征。當(dāng)結(jié)合附圖閱讀時,通過參考如下詳細(xì)說明,將會更好地理解本發(fā)明本身、其進(jìn)一步的目的和優(yōu)點(diǎn),其中圖1A描述了每一個均可以實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)的典型網(wǎng)絡(luò);圖1B描述了在可以實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)內(nèi)使用的典型計(jì)算機(jī)體系結(jié)構(gòu);
圖2描述了用于示出具有典型CIMOM的典型企業(yè)數(shù)據(jù)處理系統(tǒng)的框圖;圖3是示出了根據(jù)本發(fā)明的實(shí)施例、針對多個CIM對象管理器經(jīng)由CIM聚集器(Aggregator)執(zhí)行系統(tǒng)管理的組件配置的框圖;圖4是示出了根據(jù)本發(fā)明實(shí)施例的CIM聚集器的初始化處理的流程圖;圖5是示出了根據(jù)本發(fā)明實(shí)施例的CIM聚集器的終止處理的流程圖;圖6是示出了根據(jù)本發(fā)明實(shí)施例、用于在CIM聚集器中處理對涉及元數(shù)據(jù)的操作的請求的處理的流程圖;圖7是示出了根據(jù)本發(fā)明實(shí)施例、用于在CIM聚集器中處理某些類型的涉及實(shí)例的操作、涉及屬性的操作和涉及方法的操作的處理的流程圖;并且圖8A-8B是示出了根據(jù)本發(fā)明實(shí)施例、用于在CIM聚集器中處理某些類型的涉及實(shí)例的列舉操作的處理的流程圖。
具體實(shí)施例方式
總體上講,可以包括或者涉及本發(fā)明的設(shè)備包括各式各樣的數(shù)據(jù)處理技術(shù)。因此,在比較詳細(xì)地描述本發(fā)明之前,作為背景技術(shù),先描述分布式數(shù)據(jù)處理系統(tǒng)內(nèi)的硬件和軟件組件的典型結(jié)構(gòu)。
現(xiàn)在參考附圖,圖1A描述了每一個均可以實(shí)現(xiàn)本發(fā)明的一部分的數(shù)據(jù)處理系統(tǒng)的典型網(wǎng)絡(luò)。分布式數(shù)據(jù)處理系統(tǒng)100包含網(wǎng)絡(luò)101,其是可用來在分布式數(shù)據(jù)處理系統(tǒng)100內(nèi)的連接在一起的各種設(shè)備和計(jì)算機(jī)之間提供通信鏈路的介質(zhì)。網(wǎng)絡(luò)101可以包括永久連接,諸如有線或者光纖電纜,或者包括經(jīng)由電話或者無線通信實(shí)現(xiàn)的暫時連接。在所述的例子中,服務(wù)器102和服務(wù)器103連同存儲單元104一起與網(wǎng)絡(luò)101相連。另外,客戶端105-107也與網(wǎng)絡(luò)101相連??蛻舳?05-107和服務(wù)器102-103可以由各種計(jì)算設(shè)備表示,諸如大型機(jī)、個人計(jì)算機(jī)、個人數(shù)字助理(PDA)等。分布式數(shù)據(jù)處理系統(tǒng)100可以包括附加的未示出的服務(wù)器、客戶端、路由器、其它設(shè)備以及對等體系結(jié)構(gòu)。
在所述的例子中,分布式數(shù)據(jù)處理系統(tǒng)100可以包括互聯(lián)網(wǎng)(網(wǎng)絡(luò)101表示網(wǎng)絡(luò)的全球集合)以及使用各種協(xié)議進(jìn)行彼此通信的網(wǎng)關(guān),所述協(xié)議諸如是輕型目錄訪問協(xié)議(LDAP)、傳輸控制協(xié)議/網(wǎng)際協(xié)議(TCP/IP)、超文本傳輸協(xié)議(HTTP)、無線應(yīng)用協(xié)議(WAP)等。當(dāng)然,分布式數(shù)據(jù)處理系統(tǒng)100還可以包括多個不同類型的網(wǎng)絡(luò),諸如例如內(nèi)聯(lián)網(wǎng)、局域網(wǎng)(LAN)或者廣域網(wǎng)(WAN)等。例如,服務(wù)器102直接支持網(wǎng)絡(luò)109以及客戶端110;網(wǎng)絡(luò)109包括無線通信鏈路。網(wǎng)絡(luò)啟用的(network-enabled)電話111和PDA 112可以使用適當(dāng)?shù)募夹g(shù)、例如經(jīng)由BluetoothTM無線技術(shù)或者Wi-Fi技術(shù)(IEEE802.11),跨越無線鏈路113在它們自身之間直接傳送數(shù)據(jù),其中所述技術(shù)允許創(chuàng)建所謂的個人區(qū)域網(wǎng)(PAN)或者個人特設(shè)(ad-hoc)網(wǎng)絡(luò)。電話111通過無線鏈路114與網(wǎng)絡(luò)109連接,并且PDA 112通過無線鏈路115與網(wǎng)絡(luò)109連接。按照類似方式,PDA 112可以經(jīng)由無線鏈路116向PDA 107傳送數(shù)據(jù)。
本發(fā)明可以在各種硬件平臺上實(shí)現(xiàn);圖1A用作異類計(jì)算環(huán)境的示例,而不是作為對本發(fā)明的體系結(jié)構(gòu)限制。
現(xiàn)在參考圖1B,該圖描述了可以實(shí)現(xiàn)本發(fā)明的數(shù)據(jù)處理系統(tǒng)(諸如圖1A中示出的那些)的典型計(jì)算機(jī)體系結(jié)構(gòu)。數(shù)據(jù)處理系統(tǒng)120包含一個或多個連接至內(nèi)部系統(tǒng)總線123的中央處理單元(CPU)122,所述內(nèi)部系統(tǒng)總線123用于互連隨機(jī)存取存儲器(RAM)124、只讀存儲器126和用于支持各種I/O設(shè)備的輸入/輸出適配器128,其中所述I/O設(shè)備諸如是打印機(jī)130、盤單元132或者其它未示出的設(shè)備、諸如音頻輸出系統(tǒng)等。系統(tǒng)總線123還連接通信適配器134,其用于提供對通信鏈路136的訪問。用戶接口適配器148連接各種用戶設(shè)備,諸如鍵盤140和鼠標(biāo)142,或者其它未示出的設(shè)備,諸如觸摸屏、輸入筆、麥克風(fēng)等。顯示適配器144把系統(tǒng)總線123連接至顯示設(shè)備146。
應(yīng)該理解的是,圖1B中的硬件在不同系統(tǒng)中可以有所變化。例如,系統(tǒng)可以具有不同的處理器,諸如基于IntelPentium的處理器和數(shù)字信號處理器(DSP),以及不同類型的存儲器。除了所述硬件之外,或者用來代替所述硬件,還可以使用其它外圍設(shè)備,這不意味著暗示對本發(fā)明進(jìn)行限制。除了能夠在各種硬件平臺上實(shí)現(xiàn)以外,本發(fā)明還可以在各種軟件環(huán)境下實(shí)現(xiàn)。例如,一種設(shè)備可以運(yùn)行Unix操作系統(tǒng),而另一種設(shè)備支持Java運(yùn)行時環(huán)境。
現(xiàn)在參考圖2,該框圖描述了典型的企業(yè)數(shù)據(jù)處理系統(tǒng)。盡管圖1A描述了具有客戶端和服務(wù)器的典型數(shù)據(jù)處理系統(tǒng),但是,與此相比,圖2示出了網(wǎng)絡(luò)內(nèi)涉及某些服務(wù)器側(cè)實(shí)體的客戶端,其中該服務(wù)器側(cè)實(shí)體可用來支持訪問資源的客戶端請求。如在典型計(jì)算環(huán)境下那樣,企業(yè)域200保存用戶202可以訪問的資源,其中所述資源例如通過使用客戶端設(shè)備206上的客戶端應(yīng)用204經(jīng)由網(wǎng)絡(luò)208來訪問;所述計(jì)算機(jī)網(wǎng)絡(luò)可以是因特網(wǎng)、內(nèi)聯(lián)網(wǎng)或者其它網(wǎng)絡(luò),如圖1A所示。
企業(yè)域200支持多個服務(wù)器。應(yīng)用服務(wù)器210支持對受控資源和/或不受控資源的訪問,其中所述資源包括基于web的應(yīng)用或者其它類型的后端應(yīng)用(包括傳統(tǒng)應(yīng)用)。企業(yè)域200還包含CIM(公共信息模型)對象管理器(CIMOM)212及其對象存儲庫214。CIMOM 212提供了標(biāo)準(zhǔn)化接口,其允許遵照CIM的應(yīng)用210訪問存儲在存儲庫214內(nèi)的管理數(shù)據(jù)。
反向代理服務(wù)器216、或簡稱為代理服務(wù)器216執(zhí)行企業(yè)域200的各種各樣的功能。例如,代理服務(wù)器216可以高速緩存網(wǎng)頁,以便鏡像來自應(yīng)用服務(wù)器的內(nèi)容。輸入和輸出的數(shù)據(jù)流可以分別由輸入數(shù)據(jù)流過濾器218和輸出數(shù)據(jù)流過濾器220來處理,以便根據(jù)在各種策略內(nèi)指定的目標(biāo)和條件、或者根據(jù)所采納的軟件模塊的配置,來對輸入的請求和輸出的響應(yīng)執(zhí)行各種處理任務(wù)。會話管理單元222針對由代理服務(wù)器216識別的會話,管理會話標(biāo)識符、經(jīng)高速緩存的憑證或者其它信息。
企業(yè)域200內(nèi)的上述實(shí)體表示許多計(jì)算環(huán)境內(nèi)的典型實(shí)體。然而,許多企業(yè)域具有用于控制對受保護(hù)的計(jì)算資源的訪問的安全特性。驗(yàn)證服務(wù)器224可以支持各種驗(yàn)證機(jī)制,諸如用戶名/密碼、X.509證書或者安全令牌;多個驗(yàn)證服務(wù)器可以專用于專門的驗(yàn)證方法。授權(quán)服務(wù)器226可以采用授權(quán)數(shù)據(jù)庫228,其包含諸如訪問控制列表230、授權(quán)策略232、與用戶組或角色234有關(guān)的信息、以及與特殊管理員組236內(nèi)的管理員用戶有關(guān)的信息之類的信息。使用這些信息,授權(quán)服務(wù)器226向代理服務(wù)器216提供指示,以表明是否應(yīng)該允許繼續(xù)進(jìn)行特定請求,例如,是否應(yīng)該響應(yīng)于來自客戶端206的請求而允許訪問受控資源。應(yīng)該注意的是,本發(fā)明可以與各種驗(yàn)證和授權(quán)應(yīng)用相結(jié)合地實(shí)現(xiàn),并且就驗(yàn)證和授權(quán)服務(wù)的配置而言,此處所描述的本發(fā)明的實(shí)施例不應(yīng)該被解釋為限制本發(fā)明的范圍。
如先前描述的附圖中所描繪的那樣,典型的計(jì)算環(huán)境可以包括用于支持客戶端應(yīng)用的服務(wù)器,所述客戶端應(yīng)用用于請求來自服務(wù)器的資源。計(jì)算資源可以是電子數(shù)據(jù)處理設(shè)備/子系統(tǒng)/系統(tǒng)、應(yīng)用、對象、可執(zhí)行代碼模塊、文檔、網(wǎng)頁、文件、數(shù)據(jù)庫、數(shù)據(jù)庫記錄、各種其它類型的功能單元、各種其它類型的信息單元或者各種類型的通信功能。受保護(hù)或受控的資源是這樣一種資源,只有當(dāng)提出請求的客戶端或提出請求的用戶被驗(yàn)證和/或授權(quán)時,才能對其進(jìn)行訪問或檢索;在某些情況下,默認(rèn)地,通過驗(yàn)證的用戶是被授權(quán)的用戶。
盡管如此,但是更具體地說,本發(fā)明致力于在數(shù)據(jù)處理環(huán)境內(nèi)改善系統(tǒng)管理。雖然本發(fā)明可以鑒于其它系統(tǒng)管理模型規(guī)范來實(shí)現(xiàn),但是在下文中本發(fā)明是鑒于公共信息模型(CIM)規(guī)范來描述的。
所述CIM規(guī)范意在表示構(gòu)成數(shù)據(jù)處理環(huán)境的計(jì)算資源和那些計(jì)算資源之間的關(guān)系。所述CIM規(guī)范支持?jǐn)?shù)據(jù)處理環(huán)境內(nèi)的實(shí)體的端到端管理。概括地說,由Distributed Management Task Force公司(DMTF)推動的所述CIM標(biāo)準(zhǔn)和規(guī)范支持管理基礎(chǔ)設(shè)施。所述CIM規(guī)范描述了對于基于面向?qū)ο蟮姆独南到y(tǒng)、軟件、網(wǎng)絡(luò)和用戶管理的方法。所述CIM規(guī)范提供了一種標(biāo)準(zhǔn)的、統(tǒng)一的概念框架,其用于通過把信息組織為一種分級的類集合,來描述受管環(huán)境下的物理和邏輯對象,其中所述分級的類集合描述了受管環(huán)境下的對象。每一類中的屬性描述了按照類封裝的數(shù)據(jù)。通過使用CIM關(guān)聯(lián)類,可以把對象與其它對象相關(guān)。
更具體地說,依據(jù)由Distributed Management Task Force公司(DMTF)于1999年6月14日發(fā)布的公共信息模型(CIM)規(guī)范(2.2版本),CIM是以其中可以把受管環(huán)境看作是相互關(guān)聯(lián)的系統(tǒng)的集合的這樣一種方式構(gòu)造的,其中每個系統(tǒng)包括多個獨(dú)立的元件。管理模式是用于管理平臺和管理應(yīng)用的構(gòu)建塊,諸如是設(shè)備配置、性能管理和變化管理。CIM向類集合提供屬性和關(guān)聯(lián),其提供了更好理解的概念框架,在該概念框架內(nèi),能夠組織關(guān)于受管環(huán)境的可用信息。應(yīng)用開發(fā)者可以編寫將針對對象模式來進(jìn)行操作的代碼。
CIM自身被構(gòu)造為這些不同的層核心模型、公共模型和擴(kuò)展模式;核心模型和公共模型經(jīng)常一起被稱為CIM模式。所述核心模型是這樣一種信息模型,其用于獲取可適用于所有管理區(qū)域的概念。所述公共模型是這樣一種信息模型,其用于獲取特殊管理區(qū)域所共有的、但獨(dú)立于特殊技術(shù)或者實(shí)現(xiàn)方式的概念。所述公共區(qū)域可以包括系統(tǒng)、應(yīng)用、網(wǎng)絡(luò)和設(shè)備。特別的是,所述信息模型是足夠特定的,以便為管理應(yīng)用的開發(fā)提供基礎(chǔ);此模式為擴(kuò)展到技術(shù)特定的模式區(qū)域中提供了基礎(chǔ)類集合。擴(kuò)展模式表示對公共模型的技術(shù)特定的擴(kuò)展;這些模式對于諸如操作系統(tǒng)之類的環(huán)境來說是特定的,所述操作系統(tǒng)例如是UNIXTM或者M(jìn)icrosoftTMWindowsTM。
所述核心模型是類、關(guān)聯(lián)和屬性的集合,用于提供用于分析和描述受管系統(tǒng)的基本詞匯。所述核心模型表示分析器在確定如何擴(kuò)展公共模式的過程中的起點(diǎn)。所述公共模型是基本類集合,其用于定義各種與技術(shù)無關(guān)的區(qū)域,諸如系統(tǒng)、應(yīng)用、網(wǎng)絡(luò)和設(shè)備。公共模型中的類、屬性、關(guān)聯(lián)和方法意在提供這樣一種區(qū)域視圖(view),其足夠詳細(xì),以便用作程序設(shè)計(jì)的基礎(chǔ),并且在某些情況下還用作實(shí)現(xiàn)的基礎(chǔ)。在提供了公共模型類的具體的類和實(shí)現(xiàn)的、平臺特定的添加中,在公共模型下面添加了擴(kuò)展。當(dāng)公共模型被擴(kuò)展時,它將提供較寬范圍的信息。所述擴(kuò)展模式是對公共模型的技術(shù)特定的擴(kuò)展。模型的構(gòu)造被存儲在存儲庫內(nèi),其中該存儲庫可以使用各種類型的數(shù)據(jù)庫來實(shí)現(xiàn)。
元模式(Meta Schema)是模型的正式定義。它定義了用于表示所述模型及其使用和語義的術(shù)語??梢允褂媒y(tǒng)一建模語言(UML)來定義元模式的結(jié)構(gòu)。所述模型的元素是模式、類、屬性和方法。所述模型還支持作為類的類型的指示和關(guān)聯(lián)、以及作為屬性類型的參考(reference)。
模式是具有單個擁有者的一組類。所述模式用于管理和類命名。類名在其擁有的模式內(nèi)必須是唯一的。類是用于支持同一類型、也就是相同屬性和方法的實(shí)例的集合??梢砸勒找话慊姆旨壗Y(jié)構(gòu)來設(shè)置類,所述一般化分級結(jié)構(gòu)表示類之間的子類型關(guān)系。類可以具有方法,其表示與該類相關(guān)的行為。通過作為關(guān)聯(lián)所擁有的參考之一的目標(biāo),類可以參與到關(guān)聯(lián)中。類還具有實(shí)例。
屬性是用于表征類的實(shí)例的值??梢园褜傩钥醋魇且粚Α癵et(獲得)”和“set(設(shè)置)”函數(shù),當(dāng)將其應(yīng)用于對象時,其分別用于返回狀態(tài)和設(shè)置狀態(tài)。方法是對簽名的聲明,即,方法名稱、返回類型和參數(shù),并且在一個具體的類的情況下,其可以隱含實(shí)現(xiàn)方式。觸發(fā)是對類實(shí)例的狀態(tài)改變和屬性的更新或訪問的識別。指示是作為觸發(fā)的結(jié)果而創(chuàng)建的對象。因?yàn)橹甘臼穷惖淖宇愋停运鼈兛梢跃哂袑傩院头椒?,并且可以依照類型分級結(jié)構(gòu)來設(shè)置。
關(guān)聯(lián)是包含兩個或更多參考的類。它表示兩個或更多對象之間的關(guān)系。由于定義關(guān)聯(lián)的方式,所以能夠在不影響任何相關(guān)類的情況下來建立類之間的關(guān)系。也就是說,關(guān)聯(lián)的添加不影響相關(guān)類的接口。參考定義了關(guān)聯(lián)中每個對象所起的作用。所述參考表示在關(guān)聯(lián)的上下文下類的作用名。關(guān)聯(lián)支持提供特定對象的多個關(guān)系實(shí)例。例如,系統(tǒng)可以涉及許多系統(tǒng)組件。
使用限定詞來表征命名的元素;例如,存在用于定義屬性的特性或者類的關(guān)鍵詞的限定詞。限定詞提供了這樣一種機(jī)制,其使得元模式能夠以有限的并且受控的方式來擴(kuò)展。能夠通過引入新的限定詞名稱來添加新類型的限定詞,借此向用于管理和操作所述元模式的類、屬性以及其它元素的處理提供新類型的元數(shù)據(jù)。
鑒于上述背景信息,在下文將根據(jù)其余附圖來比較詳細(xì)地解釋本發(fā)明的實(shí)施例。
現(xiàn)在參考圖3,該框圖描述了根據(jù)本發(fā)明的實(shí)施例、針對多個CIM對象管理器經(jīng)由CIM聚集器執(zhí)行系統(tǒng)管理的組件配置。在本發(fā)明內(nèi),CIM聚集器擴(kuò)展CIM對象管理器(CIMOM)的標(biāo)準(zhǔn)實(shí)現(xiàn)方式和語義,其中所述CIMOM支持遵照CIM的系統(tǒng)管理應(yīng)用。CIM聚集器充當(dāng)用于可在本地實(shí)現(xiàn)的請求的典型的CIMOM。另外,根據(jù)需要,CIM聚集器通過把CIM請求路由至外部CIMOM,來支持多個遠(yuǎn)程的同時作用的主機(jī)。因此,在圖3中示出的所述實(shí)施例中,CIM聚集器300的功能包括本地CIMOM 302的功能和CIMOM路由器304的功能。
本地CIMOM功能單元302與典型的CIMOM功能單元進(jìn)行交互,其中典型的CIMOM功能單元諸如為用于與供應(yīng)商插件進(jìn)行接口的供應(yīng)商插件接口306,用于根據(jù)多種協(xié)議和數(shù)據(jù)格式來處理和/或變換消息的協(xié)議適配器單元308,以及安全管理單元310;沒有示出其它可能的功能單元。術(shù)語“供應(yīng)商插件”相當(dāng)于通常在CIM上下文下使用的術(shù)語“供應(yīng)商”;此處使用術(shù)語“供應(yīng)商插件”來把供應(yīng)商插件與在數(shù)據(jù)處理系統(tǒng)內(nèi)所采用的其它類型的計(jì)算資源加以區(qū)分。CIMOM路由器304包括允許它執(zhí)行其操作的功能單元,諸如CIMOM連接管理單元312以及未示出的其它可能的功能單元。CIM連接管理單元312例如通過維護(hù)CIMOM連接的可配置池來執(zhí)行與遠(yuǎn)程CIMOM 314的連接管理。不過,應(yīng)當(dāng)指出的是,任何圖示的組件之間的關(guān)系可以被認(rèn)為是邏輯關(guān)系;因此,CIM聚集器300可以不作為單片應(yīng)用來實(shí)現(xiàn),其中所述單片應(yīng)用可通過編程來包含本地CIMOM302和CIMOM路由器304,但是根據(jù)需要其僅僅在獨(dú)立執(zhí)行的組件之間提供接口。
CIM聚集器300支持對來自存儲庫316、來自聚集器供應(yīng)商插件318以及來自所有已注冊遠(yuǎn)程CIMOM 314的關(guān)系和工具實(shí)例的創(chuàng)建、修改和刪除。通過對CIM聚集器實(shí)現(xiàn)的單個請求,關(guān)系和工具實(shí)例還可以從存儲庫316、從聚集器供應(yīng)商插件318、從特定的遠(yuǎn)程主機(jī)、從所有遠(yuǎn)程主機(jī)、或者從所有這些來源的組合中進(jìn)行檢索。
通過CIM聚集器可以獲得的注冊信息,遠(yuǎn)程CIMOM對于CIM聚集器來說是已知的。在遠(yuǎn)程CIMOM針對給定的CIM聚集器進(jìn)行注冊之后,所述遠(yuǎn)程CIMOM的標(biāo)識或者位置對于CIM聚集器來說是已知的。在不影響CIM聚集器的實(shí)現(xiàn)的情況下,遠(yuǎn)程CIMOM針對特殊CIM聚集器進(jìn)行注冊的處理可以發(fā)生改變。例如,遠(yuǎn)程CIMOM的注冊表可以被用作支持CIM聚集器的系統(tǒng)內(nèi)的數(shù)據(jù)存儲設(shè)備(datastore)中的配置文件或者一部分的配置數(shù)據(jù)。作為選擇,與遠(yuǎn)程CIMOM有關(guān)的信息可以由系統(tǒng)管理員通過管理實(shí)用應(yīng)用來輸入,借此,相對于所述CIM聚集器在本地存儲與遠(yuǎn)程CIMOM有關(guān)的信息。關(guān)于遠(yuǎn)程CIMOM的注冊信息可以存儲在本地CIM存儲庫中。
CIM聚集器300例如經(jīng)由客戶端接口322與遵照CIM的系統(tǒng)管理應(yīng)用320進(jìn)行交互。例如,雖然客戶端接口322可以被擴(kuò)展以便與CIM聚集器300的最新功能進(jìn)行接口,但是客戶端接口322可以支持典型的JavaTMWBEM客戶端API,以便支持從諸如系統(tǒng)管理應(yīng)用320之類的CIMOM客戶端進(jìn)行的連接。
CIM聚集器的CIM路由功能允許諸如系統(tǒng)管理員之類的用戶具有管理多個CIM主機(jī)就好像這些CIM主機(jī)是一個主機(jī)一樣的能力。經(jīng)由CIM進(jìn)行系統(tǒng)管理,根據(jù)需要通常要求與每個特定主機(jī)的連接。然而,通過使用本發(fā)明,所述CIM聚集器向用戶給予了將來自多個遠(yuǎn)程主機(jī)的信息與本地的相關(guān)數(shù)據(jù)進(jìn)行整合的能力。當(dāng)列舉屬于不同主機(jī)的實(shí)例時,或者當(dāng)導(dǎo)航跨系統(tǒng)的關(guān)系時,所述CIM聚集器除去了對客戶端應(yīng)用連接到不同CIMOM或與不同CIMOM斷開連接的要求。
存儲庫316提供了支持典型CIMOM行為的功能;因此,存儲庫316可以依照各種方式來實(shí)現(xiàn),如在CIM環(huán)境下典型的那樣。所述存儲庫可以是單個文件、嵌入式CIMOM、關(guān)系型數(shù)據(jù)庫或者某些其它實(shí)現(xiàn)方式。依照典型的方式,在存儲庫316內(nèi)存儲用于所支持的工具類型的元數(shù)據(jù)。存儲在存儲庫內(nèi)的元數(shù)據(jù)包括CIM命名空間、限定詞類型和類的定義。
然而,為了支持本發(fā)明的實(shí)現(xiàn)方式,存儲庫316還存儲了附加信息,這些附加信息往往不會在典型的CIMOM實(shí)現(xiàn)方式內(nèi)被找到。例如,CIM聚集器的配置數(shù)據(jù)可以被存儲在存儲庫內(nèi)。這包括CIM類和實(shí)例,以便配置與遠(yuǎn)程CIMOM的連接并且管理這些連接的安全性。配置數(shù)據(jù)還包括是否/哪些聚集器供應(yīng)商插件為哪些CIM類而執(zhí)行。把對操作元數(shù)據(jù)的請求處理為標(biāo)準(zhǔn)的CIMOM存儲庫功能。這包括對創(chuàng)建、修改、列舉和刪除CIM命名空間、限定詞類型和類的請求。
所述CIM規(guī)范包含CIM Object Path(CIM對象路徑)的概念,以便指定由客戶端程序所請求的對象的位置、類型和標(biāo)識。在典型的CIM實(shí)現(xiàn)方式中,所述位置語義用來與單個CIMOM連接,然后接著利用該單個CIMOM;如果客戶端要求與另一CIMOM的連接,那么由客戶端執(zhí)行另一連接,并且接著使用第二CIMOM。利用本發(fā)明,CIM聚集器擴(kuò)展位置的語義,以便同時管理客戶端與多個CIMOM的連接,從而把這多個連接視為一個邏輯CIMOM,如下文中更加詳細(xì)解釋的那樣。例如,如果對于CIMOM請求在“CIMObjectPath”變量中識別出特定的主機(jī),那么CIM聚集器把所述請求僅委托給該遠(yuǎn)程CIMOM,然后把該遠(yuǎn)程CIMOM的結(jié)果返回給調(diào)用者。另一方面,如果對于CIMOM請求在“CIMObjectPath”中沒有識別出特定的主機(jī),那么CIM聚集器將在所有已注冊的遠(yuǎn)程CIMOM上調(diào)用該請求,收集來自所有遠(yuǎn)程CIMOM的結(jié)果,然后把所收集的結(jié)果返回給調(diào)用者。
典型的CIMOM接口包括幾個主要類型的入口點(diǎn)。對流程圖的如下描述對應(yīng)于CIM聚集器的用于這些類型的操作的行為。
現(xiàn)在參考圖4,該流程圖描述了根據(jù)本發(fā)明實(shí)施例的CIM聚集器的初始化處理。一旦創(chuàng)建了CIM聚集器時,就執(zhí)行圖4中示出的處理。通過初始化所述存儲庫來開始所述處理(步驟402)。創(chuàng)建用于CIM聚集器的供應(yīng)商插件的供應(yīng)商管理器(步驟404),并且還創(chuàng)建用于管理遠(yuǎn)程CIMOM的安全性的安全管理器(步驟406)。執(zhí)行授權(quán)操作,以便確保用戶是被授權(quán)來使用CIM聚集器的(步驟408);如果不是的話,那么將返回錯誤消息或者指示。
然后,為CIM聚集器的遠(yuǎn)程CIMOM創(chuàng)建管理器(步驟410),其包括涉及每個已注冊的遠(yuǎn)程CIMOM的迭代處理。確定下一個未處理的已注冊遠(yuǎn)程CIMOM(步驟412),并且從所述存儲庫中檢索該已注冊遠(yuǎn)程CIMOM的配置數(shù)據(jù)(步驟414)。從安全管理器中檢索該已注冊遠(yuǎn)程CIMOM的驗(yàn)證信息(步驟416)。然后,所述CIM聚集器使用從安全管理器檢索的驗(yàn)證信息來與該已注冊遠(yuǎn)程CIMOM進(jìn)行連接(步驟418)。就另一已注冊遠(yuǎn)程CIMOM是否仍未處理進(jìn)行確定(步驟420),并且倘若如此,那么所述處理分支轉(zhuǎn)移回到步驟412,以便對它進(jìn)行處理。否則,如果已經(jīng)對每個已注冊遠(yuǎn)程CIMOM進(jìn)行了連接,那么結(jié)束所述處理。
現(xiàn)在參考圖5,該流程圖描述了根據(jù)本發(fā)明的實(shí)施例的CIM聚集器的終止處理。一旦CIM聚集器關(guān)閉或終止時,就執(zhí)行圖5中示出的處理。所述處理通過關(guān)閉用于CIM聚集器的遠(yuǎn)程CIMOM的管理器而開始(步驟502),其包括涉及已經(jīng)與其連接的每個已注冊遠(yuǎn)程CIMOM的迭代處理。確定與遠(yuǎn)程CIMOM的下一未處理的連接(步驟504),并且關(guān)閉所述連接(步驟506)。就另一遠(yuǎn)程CIMOM連接是否仍未處理進(jìn)行確定(步驟508),并且倘若如此,那么所述處理分支轉(zhuǎn)移回到步驟504,以便對它進(jìn)行處理。否則,關(guān)閉用于CIM聚集器的供應(yīng)商插件的供應(yīng)商管理器(步驟510)。然后,所述存儲庫被關(guān)閉(步驟512),并且結(jié)束該處理。
現(xiàn)在參考圖6,該流程圖描述了根據(jù)本發(fā)明的實(shí)施例、用于在CIM聚集器中處理對涉及元數(shù)據(jù)的操作的請求的處理。當(dāng)接收到對于涉及元數(shù)據(jù)的操作的請求時開始所述處理(步驟602)。把所述請求委托給存儲庫(步驟604),并且結(jié)束該處理。
如圖6所示,所有元數(shù)據(jù)操作都被直接委托給存儲庫,其中包括用于直接處理對命名空間、限定詞類型和類的創(chuàng)建、修改、列舉和刪除的所有操作。還包括涉及類之間的關(guān)系定義的操作。特定的涉及元數(shù)據(jù)的操作是創(chuàng)建命名空間、列舉命名空間、刪除命名空間、創(chuàng)建限定詞類型、設(shè)置限定詞類型、獲得限定詞類型、列舉限定詞類型、刪除限定詞類型、創(chuàng)建類、設(shè)置類、獲得類、列舉類名、列舉類、刪除類、關(guān)聯(lián)器(associator)名稱(用于類的)、關(guān)聯(lián)器(用于類的)、參考名稱(用于類的)和參考(用于類的)。
現(xiàn)在參考圖7,該流程圖描述了根據(jù)本發(fā)明的實(shí)施例、用于在CIM聚集器中處理某些類型的涉及實(shí)例的操作、涉及屬性的操作和涉及方法的操作的處理。包括創(chuàng)建、修改和刪除的涉及屬性的操作、涉及方法的操作和涉及實(shí)例的操作遵循圖7中示出的概括性處理。所述處理從確定來自所接收到的請求的被請求操作的目標(biāo)CIM類是否由CIM聚集器內(nèi)部管理來開始(步驟702)。倘若如此,那么就是否存在用于此類和此操作的CIM聚集器供應(yīng)商插件進(jìn)行確定(步驟704)。倘若如此,那么,如果所述供應(yīng)商插件先前沒有被初始化,則對其進(jìn)行初始化(步驟706),并且把所述請求委托給用于此類和此操作的特定CIM聚集器供應(yīng)商插件來處理(步驟708),并且結(jié)束該處理。否則,如果用于被請求操作的目標(biāo)CIM類被內(nèi)部管理,但是沒有CIM聚集器供應(yīng)商插件,那么把所述請求委托給CIM聚集器的存儲庫(步驟710),并且結(jié)束該處理。
如果在步驟702中確定來自所接收到的請求的被請求操作的目標(biāo)CIM類不是由CIM聚集器內(nèi)部管理的,那么就是否存在面向此類此操作的特定的遠(yuǎn)程、已注冊CIMOM進(jìn)行確定(步驟712)。倘若如此,那么把所述請求委托給用于此類此操作的特定的遠(yuǎn)程、已注冊CIMOM(步驟714);否則,把請求委托給用于此類此操作的所有已注冊的遠(yuǎn)程CIMOM(步驟716)。不論是哪種情況,然后都結(jié)束該處理。
現(xiàn)在參考圖8A-8B,該流程圖描述了根據(jù)本發(fā)明實(shí)施例、用于在CIM聚集器中處理某些類型的涉及實(shí)例的列舉操作的處理。涉及實(shí)例的列舉操作包括列舉實(shí)例名稱、列舉實(shí)例、關(guān)聯(lián)器名稱(用于實(shí)例的)、管理器(用于實(shí)例的)、參考名稱(用于實(shí)例的)和參考(用于實(shí)例的);所有這些操作都遵循圖8A-8B中示出的概括性處理。
所述處理從分配空的數(shù)據(jù)結(jié)構(gòu)、例如列表以便保持被請求操作的結(jié)果而開始(步驟802)。然后,就來自所接收到的請求的被請求操作的目標(biāo)CIM類是否由CIM聚集器內(nèi)部管理進(jìn)行確定(步驟804)。倘若如此,那么就是否存在用于此類和此操作的CIM聚集器供應(yīng)商插件進(jìn)行確定(步驟806)。倘若如此,那么,如果所述供應(yīng)商插件先前未被初始化的話,則對其進(jìn)行初始化(步驟808),并且把所述請求委托給用于此類和此操作的特定CIM聚集器供應(yīng)商插件來處理(步驟810)。把供應(yīng)商插件的任何結(jié)果添加到所分配的列表中的任何先前存儲的結(jié)果中(步驟812)。否則,如果所請求操作的目標(biāo)CIM類被內(nèi)部管理,但沒有CIM聚集器供應(yīng)商插件,那么把請求委托給CIM聚集器的存儲庫(步驟814),并且把來自存儲庫的任何結(jié)果都添加到所分配的列表內(nèi)的任何先前存儲的結(jié)果上(步驟816)。
如果在步驟804中確定來自所接收到的請求的被請求操作的目標(biāo)CIM類不是由CIM聚集器內(nèi)部管理的,那么就是否存在面向此類此操作的特定的遠(yuǎn)程、已注冊CIMOM進(jìn)行確定(步驟818)。倘若如此,那么把請求委托給用于此類此操作的特定的遠(yuǎn)程、已注冊CIMOM(步驟820),并且把來自該特定的遠(yuǎn)程、已注冊CIMOM的任何結(jié)果添加到所分配列表內(nèi)的任何先前存儲的結(jié)果上(步驟822)。否則,如果沒有作為所請求操作的目標(biāo)的特定的遠(yuǎn)程、已注冊CIMOM,那么把該請求委托給用于此類此操作的所有已注冊的遠(yuǎn)程CIMOM(步驟824),并且把來自該特定的遠(yuǎn)程、已注冊CIMOM的任何結(jié)果添加到所分配列表內(nèi)的任何先前存儲的結(jié)果上(步驟826)。
在由適當(dāng)?shù)墓?yīng)商插件在步驟810中、由本地存儲庫在步驟814中、由特定的遠(yuǎn)程CIMOM在步驟820中、或者由所有適當(dāng)?shù)倪h(yuǎn)程CIMOM在步驟824中處理了所請求的操作之后,然后就是否需要遍及指定類的所有子類進(jìn)行深度搜索進(jìn)行確定(步驟828),此操作是由所請求的操作所隱含的或者是由操作的調(diào)用者特別請求的。倘若如此,那么通過目前正處理的類的子類進(jìn)行遞歸循環(huán);換言之,對于指定類的每一子類而言,在圖8A-8B中示出的邏輯在特定子類上被遞歸執(zhí)行,并且來自遞歸邏輯流程的結(jié)果被添加到所分配的列表內(nèi)的結(jié)果中。
通過識別當(dāng)前特定類的下一未處理子類(步驟830),然后對所識別的子類在圖示的處理內(nèi)遞歸地執(zhí)行所述邏輯(步驟832),之后把結(jié)果添加到所分配列表內(nèi)的先前存儲的結(jié)果中(步驟834),來啟動對圖8B中另一級別的這種遞歸操作。就當(dāng)前指定的類中是否存在任何其它未處理的子類進(jìn)行確定(步驟836);倘若如此,那么該處理分支轉(zhuǎn)移回到步驟830,以便處理另一子類,并且如果不是的話,那么退出循環(huán)。
當(dāng)在步驟828中確定是否遍及當(dāng)前指定的類的所有子類進(jìn)行深度搜索時,把已經(jīng)存儲在所分配的列表內(nèi)的結(jié)果返回給適當(dāng)?shù)恼{(diào)用者(步驟838),并且結(jié)束該處理。應(yīng)該注意的是,在如圖8A-8B所示的處理中,所請求的操作的結(jié)果在返回單個值之前在該操作內(nèi)被完全確定和收集。在可替代的實(shí)施例中,列舉可以被立即返回給已經(jīng)請求該操作的調(diào)用者。當(dāng)調(diào)用者使用列舉來請求結(jié)果集合中的單個條目時,在這時,可能的是,從存儲庫、CIM聚集器供應(yīng)商插件和遠(yuǎn)程的已注冊CIMOM執(zhí)行實(shí)際檢索。
通過參考上文提供的對本發(fā)明的詳細(xì)說明,對于本領(lǐng)域普通技術(shù)人員來說,本發(fā)明的優(yōu)點(diǎn)應(yīng)當(dāng)是顯然的。通過使用本發(fā)明,所述CIM聚集器向用戶給予了將來自多個遠(yuǎn)程主機(jī)的信息與本地的相關(guān)數(shù)據(jù)進(jìn)行整合的能力。當(dāng)列舉屬于不同主機(jī)的實(shí)例時,或者當(dāng)導(dǎo)航跨系統(tǒng)的關(guān)系時,所述CIM聚集器除去了對客戶端應(yīng)用連接到不同CIMOM或與不同CIMOM斷開連接的要求。
舉例來說,如果CIM聚集器的客戶端應(yīng)用要求涉及所有“CIM_ComputerSystem”資源的細(xì)節(jié),其中所述資源可以經(jīng)由已注冊的CIMOM來獲得,那么CIM聚集器客戶端能夠提出單個請求,以便執(zhí)行來自所有已注冊CIMOM的“CIM_ComputerSystem”類的深度實(shí)例列舉。將從每個已注冊的CIMOM中檢索“CIM_ComputerSystem”及其子類的所有實(shí)例的細(xì)節(jié)。此請求例如可以產(chǎn)生來自主機(jī)“foo”的“Win32_ComputerSystem”實(shí)例,來自主機(jī)“bar”的“IBMAIX_ComputerSystem”實(shí)例,以及來自主機(jī)“baz”的“Solaris_ComputerSystem”實(shí)例,其中每個實(shí)例都出自其所擁有的類型的主機(jī)和模型。另外,可以從特定的已注冊的CIMOM中請求涉及特定“Win32_ComputerSystem”實(shí)例的細(xì)節(jié)。
由于CIM聚集器可以同時參考來自多個源的實(shí)例和關(guān)系這一事實(shí),所以附加的CIM聚集器供應(yīng)商插件可以被編寫為利用此信息來提供來自這些源的實(shí)例之間的關(guān)系。除了標(biāo)準(zhǔn)的現(xiàn)有CIMOM的那些性能以外,此性能向CIM聚集器的用戶給予了重大的附加能力,其中包括實(shí)現(xiàn)第三方關(guān)系。
跨主機(jī)的第三方關(guān)系的一個示例是在一個主機(jī)上的“Win32_NetworkConnection”實(shí)例和在另一主機(jī)上的其支持的“Win32_Share”實(shí)例之間的“Win32_NetworkConnectionToShare”關(guān)系。實(shí)現(xiàn)第三方關(guān)系存在利弊。第三方關(guān)系的備選方案是使關(guān)系存在于關(guān)系源或關(guān)系目的地上。在大多數(shù)情況下,關(guān)系源是正確的位置,但是在某些情況下,較好的是具有第三方,以便當(dāng)所述源被破壞或變得不可利用時,人們?nèi)钥梢圆樵兯鲫P(guān)系。繼續(xù)上述示例,如果人們希望確定是誰正在使用“Win32_Share”,并且具有“Win32_NetworkConnection”的主機(jī)在查詢時不可利用,那么,如果存在于同一主機(jī)上的相關(guān)性是“Win32_NetworkConnection”,那么人們將無法看到該相關(guān)性。然而,通過使用可以利用本發(fā)明實(shí)現(xiàn)的第三方關(guān)系,它可以由第三方來保存,并且人們將能夠通過本發(fā)明的實(shí)現(xiàn)來看到所述相關(guān)性。
重要的是,應(yīng)該注意到,雖然已經(jīng)在完全發(fā)揮功能的數(shù)據(jù)處理系統(tǒng)的環(huán)境中描述了本發(fā)明,但是本領(lǐng)域普通技術(shù)人員將會理解的是,本發(fā)明中的處理能夠以計(jì)算機(jī)可讀介質(zhì)中的指令的形式以及各種其它形式來分發(fā),而不管實(shí)際上用于執(zhí)行所述分發(fā)的信號承載介質(zhì)的特殊類型如何。計(jì)算機(jī)可讀介質(zhì)的例子包括諸如EPROM、ROM、磁帶、紙張、軟盤、硬盤驅(qū)動器、RAM和CD-ROM之類的介質(zhì),并且還包括諸如數(shù)字和模擬通信鏈路之類的傳輸型介質(zhì)。
總體上把方法設(shè)想為是導(dǎo)致期望結(jié)果的自相一致的步驟序列。這些步驟要求物理量的物理操作。通常,這些量采用能夠被存儲、傳送、組合、比較或者操作的電或者磁信號的形式,但也未必如此。有時為了方便,主要是出于通用的原因,把這些信號稱為比特、值、參數(shù)、項(xiàng)、元素、對象、符號、字符、術(shù)語、數(shù)字等。然而,應(yīng)當(dāng)指出的是,所有這些術(shù)語和類似術(shù)語將與適當(dāng)?shù)奈锢砹肯嚓P(guān)聯(lián),并且僅僅作為方便的、應(yīng)用于這些量的標(biāo)記。
已經(jīng)出于舉例說明的目的給出了對本發(fā)明的描述,但是這不意味著是窮舉的,并且也不意味著把本發(fā)明限制為所公開的實(shí)施例。許多修改和變化對于本領(lǐng)域普通技術(shù)人員來說將會是顯而易見的。選擇這些實(shí)施例是為了解釋本發(fā)明的原理及其實(shí)際應(yīng)用,并且使其它本領(lǐng)域普通技術(shù)人員理解本發(fā)明,以便實(shí)現(xiàn)具有適合于其它所設(shè)想的用途的各種修改的各種實(shí)施例。
權(quán)利要求
1.一種用于在數(shù)據(jù)處理系統(tǒng)內(nèi)管理位于多個主機(jī)的公共信息模型資源、即CIM資源的方法,所述方法包括如下步驟接收來自發(fā)起者的關(guān)于對CIM資源的所請求操作的請求;確定是把所述請求委托給本地CIM對象管理器功能、即本地CIMOM功能還是委托給一個或多個遠(yuǎn)程CIMOM;響應(yīng)于把所述請求委托給本地CIMOM功能的確定,把所述請求委托給本地CIMOM功能,以便獲得結(jié)果數(shù)據(jù);響應(yīng)于把所述請求委托給一個或多個遠(yuǎn)程CIMOM的確定,把所述請求委托給一個或多個遠(yuǎn)程CIMOM,并且從多個遠(yuǎn)程CIMOM聚集結(jié)果數(shù)據(jù);并且把所述結(jié)果數(shù)據(jù)發(fā)送給請求的發(fā)起者。
2.如權(quán)利要求1所述的方法,其中,確定是否把所述請求委托給本地CIMOM功能的步驟還包括識別所請求的操作的目標(biāo)CIM類;并且確定所述目標(biāo)CIM類是否在本地被管理。
3.如權(quán)利要求1所述的方法,其中,把所述請求委托給本地CIMOM功能的步驟還包括識別所請求的操作的目標(biāo)CIM類;并且響應(yīng)于就所述目標(biāo)CIM類存在供應(yīng)商插件的確定,把所述請求委托給該供應(yīng)商插件。
4.如權(quán)利要求1所述的方法,其中,把所述請求委托給本地CIMOM功能的步驟還包括識別所請求的操作的目標(biāo)CIM類;并且響應(yīng)于就所述目標(biāo)CIM類不存在供應(yīng)商插件的確定,把所述請求委托給本地存儲庫。
5.如權(quán)利要求1所述的方法,其中,把所述請求委托給本地CIMOM功能的步驟還包括響應(yīng)于所請求的操作是涉及元數(shù)據(jù)的操作的確定,把所述請求委托給本地存儲庫。
6.如權(quán)利要求1所述的方法,其中,確定是否把所述請求委托給一個或多個遠(yuǎn)程CIMOM的步驟還包括確定特定的遠(yuǎn)程CIMOM是否為對于所請求操作的請求的目標(biāo)。
7.如權(quán)利要求6所述的方法,其中,確定特定的遠(yuǎn)程CIMOM是否為對于所請求操作的請求的目標(biāo)的步驟還包括確定在所述請求中特定的主機(jī)是否被標(biāo)識為“CIMObjectPath”。
8.如權(quán)利要求1所述的方法,其中,確定是把所述請求委托給本地CIMOM功能還是委托給一個或多個遠(yuǎn)程CIMOM的步驟還包括識別所請求的操作的目標(biāo)CIM類;響應(yīng)于所述目標(biāo)CIM類不是在本地被管理的確定,確定特定的遠(yuǎn)程CIMOM是否為對于所請求操作的請求的目標(biāo);并且響應(yīng)于特定的遠(yuǎn)程CIMOM不是對于所請求操作的請求的目標(biāo)的確定,把所述請求委托給下述多個遠(yuǎn)程CIMOM,其中所述多個遠(yuǎn)程CIMOM是為所請求的操作的目標(biāo)CIM類而注冊的。
9.一種在數(shù)據(jù)處理系統(tǒng)中使用的位于計(jì)算機(jī)可讀介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品,用于管理位于多個主機(jī)上的公共信息模型資源、即CIM資源,所述計(jì)算機(jī)程序產(chǎn)品包括適于執(zhí)行如先前任一項(xiàng)權(quán)利要求所述的方法的步驟的裝置。
10.一種用于管理位于多個主機(jī)的公共信息模型資源、即CIM資源的設(shè)備,所述設(shè)備包括用于接收來自發(fā)起者的關(guān)于對CIM資源的所請求操作的請求的裝置;用于確定是把所述請求委托給本地CIM對象管理器功能、即本地CIMOM功能還是委托給一個或多個遠(yuǎn)程CIMOM的裝置;用于響應(yīng)于把所述請求委托給本地CIMOM功能的確定,把所述請求委托給本地CIMOM功能以便獲得結(jié)果數(shù)據(jù)的裝置;用于響應(yīng)于把所述請求委托給一個或多個遠(yuǎn)程CIMOM的確定,把所述請求委托給一個或多個遠(yuǎn)程CIMOM的裝置,以及用于從多個遠(yuǎn)程CIMOM聚集結(jié)果數(shù)據(jù)的裝置;以及用于把所述結(jié)果數(shù)據(jù)發(fā)送給請求的發(fā)起者的裝置。
11.如權(quán)利要求10所述的設(shè)備,其中,用于確定是否把所述請求委托給本地CIMOM功能的裝置還包括用于識別所請求的操作的目標(biāo)CIM類的裝置;以及用于確定所述目標(biāo)CIM類是否在本地被管理的裝置。
12.如權(quán)利要求10所述的設(shè)備,其中,用于確定是否把所述請求委托給一個或多個遠(yuǎn)程CIMOM的裝置還包括用于確定特定的遠(yuǎn)程CIMOM是否為對于所請求操作的請求的目標(biāo)的裝置。
13.如權(quán)利要求10所述的設(shè)備,其中,用于確定是把所述請求委托給本地CIMOM功能還是委托給一個或多個遠(yuǎn)程CIMOM的裝置還包括用于識別所請求的操作的目標(biāo)CIM類的裝置;用于響應(yīng)于所述目標(biāo)CIM類不是在本地被管理的確定,來確定特定的遠(yuǎn)程CIMOM是否為對于所請求操作的請求的目標(biāo)的裝置;以及用于響應(yīng)于特定的遠(yuǎn)程CIMOM不是對于所請求操作的請求的目標(biāo)的確定,把所述請求委托給下述多個遠(yuǎn)程CIMOM的裝置,其中所述多個遠(yuǎn)程CIMOM是為所請求的操作的目標(biāo)CIM類而注冊的。
全文摘要
一種用于在數(shù)據(jù)處理系統(tǒng)內(nèi)采用公共信息模型(CIM)資源的方法和系統(tǒng)。接收關(guān)于對CIM資源的操作的請求,并且就所述請求是可以在本地實(shí)現(xiàn)還是在遠(yuǎn)程實(shí)現(xiàn)進(jìn)行確定。響應(yīng)于在本地實(shí)現(xiàn)所述請求的確定,把所述請求委托給本地CIM對象管理器(CIMOM)功能,以便從例如本地存儲庫或者從在本地管理的供應(yīng)商那里獲得結(jié)果數(shù)據(jù)。響應(yīng)于在遠(yuǎn)程實(shí)現(xiàn)所述請求的確定,把所述請求委托給一個或多個遠(yuǎn)程CIMOM,并且從多個遠(yuǎn)程CIMOM聚集結(jié)果數(shù)據(jù)。然后,把所述結(jié)果數(shù)據(jù)返回到請求的發(fā)起者。
文檔編號G06F9/46GK1921413SQ200610121618
公開日2007年2月28日 申請日期2006年8月23日 優(yōu)先權(quán)日2005年8月25日
發(fā)明者詹姆斯·魯塞爾·伯金, 阿爾博托·加馬瑞亞, 布萊恩·約瑟夫·施羅薩爾 申請人:國際商業(yè)機(jī)器公司