本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種服務(wù)器配置信息的采集方法、裝置及系統(tǒng)。
背景技術(shù):
配置管理數(shù)據(jù)庫(Configuration Management Database,CMDB),通過識別、控制、維護(hù),檢查企業(yè)的IT資源,從而高效控制與管理不斷變化的IT基礎(chǔ)架構(gòu)與IT服務(wù),并為其它流程,例如事故管理、問題管理、變更管理、發(fā)布管理等流程提供準(zhǔn)確的配置信息。隨著IT技術(shù)的進(jìn)步與發(fā)展,企業(yè)的IT環(huán)境越來越復(fù)雜。數(shù)量龐大、品種繁多的IT設(shè)備很難被有效的管理,更不用說管理以這些IT設(shè)備為基礎(chǔ)的各種IT服務(wù)。同時,企業(yè)的IT環(huán)境在不斷變化,如何評估某個設(shè)備或服務(wù)發(fā)生的事故或變更所造成的影響,以及如何為其它流程提供IT資源當(dāng)前準(zhǔn)確的配置信息都是企業(yè)面臨的重大挑戰(zhàn)。
目前,市場上開源的CMDB系統(tǒng)都具有服務(wù)器資產(chǎn)管理功能,收集的原理均是通過安全外殼(Secure Shell,縮寫為SSH)協(xié)議一一與服務(wù)器取得聯(lián)系,再通過執(zhí)行命令來收集到服務(wù)器的信息,最后進(jìn)行入庫展示。此種工作原理必須建立在服務(wù)器的安全策略允許對CMDB系統(tǒng)開放SSH端口,并且子客戶端的數(shù)量如果太多,在沒有對SSH端口進(jìn)行并行處理限制的情況下,將嚴(yán)重消耗系統(tǒng)自身的處理資源,而對并行處理進(jìn)行限制則降低會對信息采集的速度。因此,基于SSH協(xié)議的CMDB系統(tǒng)無法滿足大批量設(shè)備的快速輪訓(xùn),并且還要保證客戶端的SSH端口為打開狀態(tài)。
此外,還有的一些基于消息隊列傳輸模式的服務(wù)器資產(chǎn)管理軟件,如saltstack、puppet等軟件工具均可以完成快速收集大批量用戶的數(shù)據(jù)信息,但對于所收集的數(shù)據(jù)信息只能展示輸出在命令行中,而不能對這些數(shù)據(jù)信 息進(jìn)行分析處理,并存儲到CMDB系統(tǒng)中。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明提供一種服務(wù)器配置信息的采集方法、裝置及系統(tǒng),能夠快速收集大批量客戶端的系統(tǒng)配置信息,并將收集的信息自動存儲到CMDB系統(tǒng)數(shù)據(jù)庫中。
為達(dá)到上述目的,本發(fā)明主要提供如下技術(shù)方案:
依據(jù)本發(fā)明一個方面,提出了一種服務(wù)器配置信息的采集方法,該方法包括:
發(fā)送配置信息采集指令,以獲得與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息;
對所述執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息進(jìn)行格式化處理,以得到格式化配置信息或接收由所述服務(wù)器進(jìn)行格式化處理后得到的格式化配置信息,其中,所述格式化配置信息,是將與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息轉(zhuǎn)化為執(zhí)行主體能夠識別或操作的信息;
根據(jù)所述格式化配置信息,確定服務(wù)器的配置信息中的參數(shù)及對應(yīng)的參數(shù)信息;
將所述服務(wù)器端配置的參數(shù)以及對應(yīng)的參數(shù)信息發(fā)送到CMDB系統(tǒng)數(shù)據(jù)庫。
依據(jù)本發(fā)明的另一個方面,還提出了一種服務(wù)器配置信息的采集方法,該方法包括:
接收配置采集信息指令;
向主控端發(fā)送配置信息或格式化配置信息;其中,所述配置信息,為執(zhí)行主體本身的配置信息或與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息;
所述格式化配置信息,是將執(zhí)行主體本身的配置信息或與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息,轉(zhuǎn)化為所述主控端能夠識別或操作的信息。
依據(jù)本發(fā)明的另一個方面,還提出了一種服務(wù)器配置信息的采集裝置,該裝置包括:
發(fā)送單元,用于發(fā)送配置信息采集指令,以獲得與執(zhí)行主體相關(guān)聯(lián)的 服務(wù)器的配置信息;
格式化配置信息獲取單元,用于對所述執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息進(jìn)行格式化處理,以得到格式化配置信息,其中,所述格式化配置信息,是將與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息轉(zhuǎn)化為執(zhí)行主體能夠識別或操作的信息;
所述格式化配置信息獲取單元還用于,接收由所述服務(wù)器進(jìn)行格式化處理后得到的格式化配置信息;
解析單元,用于根據(jù)所述格式化配置信息,確定服務(wù)器的配置信息中的參數(shù)及對應(yīng)的參數(shù)信息;
所述發(fā)送單元還用于,將所述服務(wù)器端配置的參數(shù)以及對應(yīng)的參數(shù)信息發(fā)送到CMDB系統(tǒng)數(shù)據(jù)庫。
依據(jù)本發(fā)明的另一個方面,還提出了一種服務(wù)器配置信息的采集裝置,該裝置包括:
接收單元,用于接收配置采集信息指令;
發(fā)送單元,用于向主控端發(fā)送配置信息,其中,所述配置信息,為執(zhí)行主體本身的配置信息或與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息;
所述發(fā)送單元還用于,用于向主控端發(fā)格式化配置信息,期中,所述格式化配置信息,是將執(zhí)行主體本身的配置信息或與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息,轉(zhuǎn)化為所述主控端能夠識別或操作的信息。
依據(jù)本發(fā)明的另一個方面,還提出了一種服務(wù)器配置信息的采集系統(tǒng),該系統(tǒng)包括于主控端中的服務(wù)器配置信息采集裝置和用于服務(wù)器端中的服務(wù)器配置信息采集裝置,以及CMDB系統(tǒng);
所述CMDB系統(tǒng),用于將由所述主控端發(fā)送至CMDB系統(tǒng)數(shù)據(jù)庫中的所述服務(wù)器端的配置信息進(jìn)行更新、展示。
本發(fā)明所采用的服務(wù)器配置信息的采集方法、裝置及系統(tǒng),是在服務(wù)器端預(yù)設(shè)服務(wù)器配置信息采集裝置,通過主控端批量發(fā)送遠(yuǎn)程觸發(fā)指令,來實現(xiàn)服務(wù)器端配置信息的自動采集過程,并且在服務(wù)器端通過對配置信息的格式化處理使得主控端可以一次性獲取多個配置參數(shù)。同時,在主控端通過對格式化配置信息的解析,可以有選擇性的將所獲得的服務(wù)器端的 配置信息錄入CMDB系統(tǒng)的數(shù)據(jù)庫中,并且可以實現(xiàn)將大批量的服務(wù)器端的配置信息進(jìn)行快速錄入。最終由CMDB系統(tǒng)對所接收到的服務(wù)器端的配置信息進(jìn)行更新、展示。相對于現(xiàn)有的具有資產(chǎn)管理功能的軟件,本發(fā)明不近可以對大批量的服務(wù)器進(jìn)行配置信息的自動、快速采集,同時還可以避免CMDB系統(tǒng)通過SSH協(xié)議進(jìn)行遠(yuǎn)程一對一式的獲取服務(wù)器配置信息的弊端,由主控端將所有的服務(wù)器的配置信息同時進(jìn)行上傳,從而提高了服務(wù)器系統(tǒng)中資產(chǎn)管理信息的獲取效率及自動化程度。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的具體實施方式。
附圖說明
通過閱讀下文優(yōu)選實施方式的詳細(xì)描述,各種其他的優(yōu)點和益處對于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實施方式的目的,而并不認(rèn)為是對本發(fā)明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1示出了本發(fā)明實施例提出的一種服務(wù)器配置信息的采集方法流程圖;
圖2示出了本發(fā)明實施例提出的另一種服務(wù)器配置信息的采集方法流程圖;
圖3示出了本發(fā)明實施例提出的另一種服務(wù)器配置信息的采集方法流程圖;
圖4示出了本發(fā)明實施例提出的另一種服務(wù)器配置信息的采集方法流程圖;
圖5示出了本發(fā)明實施例提出的一種服務(wù)器配置信息的采集裝置的組成框圖;
圖6示出了本發(fā)明實施例提出的另一種服務(wù)器配置信息的采集裝置的組成框圖;
圖7示出了本發(fā)明實施例提出的另一種服務(wù)器配置信息的采集裝置的組成框圖;
圖8示出了本發(fā)明實施例提出的另一種服務(wù)器配置信息的采集裝置的組成框圖;
圖9示出了本發(fā)明實施例提出的一種服務(wù)器配置信息的采集系統(tǒng)的示意圖。
具體實施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實施例。雖然附圖中顯示了本公開的示例性實施例,然而應(yīng)當(dāng)理解,可以以各種形式實現(xiàn)本公開而不應(yīng)被這里闡述的實施例所限制。相反,提供這些實施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
本發(fā)明實施例提供了一種服務(wù)器配置信息的采集方法,如圖1所示,該方法應(yīng)用于批量獲取服務(wù)器配置信息的主控端中,該主控端(即執(zhí)行主體)可以是分布式服務(wù)器中的一臺服務(wù)器,也可以是具有信息處理能力的計算設(shè)備,該方法的具體步驟包括:
101、發(fā)送配置信息采集指令,以獲得與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息。
其中,服務(wù)器的配置信息可以包含:服務(wù)器ID、執(zhí)行系統(tǒng)標(biāo)識、IP地址、最大內(nèi)存容量、最大硬盤容量等。
本發(fā)明實施例在獲取服務(wù)器端配置信息的實現(xiàn)方式是基于批量管理服務(wù)器的自動化工具(Saltstack,以下簡稱salt)的C/S架構(gòu),可實現(xiàn)大批量、快速的獲取服務(wù)器端的配置信息。在salt的C/S架構(gòu)中,所用到的服務(wù)器端被稱為master,客戶端被稱為minion,由minion訂閱master的消息隊列,由master向minion發(fā)布指令值,指揮minion執(zhí)行任務(wù)。
在本發(fā)明實施例中,主控端可用master表示,而另一端服務(wù)器端(接收執(zhí)行主體發(fā)送信息采集指令的服務(wù)器)可用minion表示。主控端在獲取服務(wù)器端的配置信息時,需要向服務(wù)器端發(fā)送一個指令,以觸發(fā)安裝在服務(wù)器端的配置信息采集程序。
由于服務(wù)器端在實際應(yīng)用中往往是多臺,大批量的部署。因此,主控端在發(fā)送配置信息采集指令時,也是向所有可連接的服務(wù)器端同時發(fā)送該 指令,以獲取所有服務(wù)器的配置信息。
102、獲得與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的格式化配置信息。
主控端在發(fā)送過配置信息采集指令后,會收到由各個服務(wù)器端根據(jù)指令所獲取的服務(wù)器配置信息。而格式化配置信息是指將服務(wù)器的配置信息進(jìn)行格式化處理后所得到的配置信息,在本發(fā)明實施例中不限定于服務(wù)器的配置信息的格式化處理是在master一側(cè)執(zhí)行或是在minion一側(cè)執(zhí)行。
其中,格式化處理,可以是指對服務(wù)器的配置信息進(jìn)行整理、篩選等,以得到符合執(zhí)行主體對該配置信息進(jìn)行可識別或操作的信息資源(即格式化配置信息)。
在實際的應(yīng)用中,由于一臺服務(wù)器端的配置信息中可以包含有多組配置參數(shù)以及相對應(yīng)的參數(shù)信息,因此,為了便于配置信息的整體傳輸以及后續(xù)的處理,服務(wù)器端會先將所采集到的配置信息在本地進(jìn)行格式化處理,再將處理后的格式化配置信息發(fā)送至主控端。在該格式化配置信息中,包含有服務(wù)器端多組的配置參數(shù)以及對應(yīng)的參數(shù)信息。其中,所采用的格式化方式可以根據(jù)具體需求采用不同的格式化方式,本實施例對此不進(jìn)行具體限定。
103、根據(jù)該格式化配置信息,確定服務(wù)器的配置信息中的參數(shù)及對應(yīng)的參數(shù)信息。
主控端在獲取到服務(wù)器端的格式化配置信息后,為了能夠?qū)@取到的服務(wù)器端配置信息發(fā)送到CMDB系統(tǒng)數(shù)據(jù)庫中,可以通過解析該格式化配置信息,獲取該服務(wù)器端配置的參數(shù)以及該參數(shù)所對應(yīng)的參數(shù)信息,從而符合CMDB系統(tǒng)數(shù)據(jù)庫對信息錄入的格式要求。
需要指出的是,格式化配置信息的解析不僅包括對102中配置信息格式化的解析,還包括對解析后的格式進(jìn)行匹配,如果不符合CMDB系統(tǒng)數(shù)據(jù)庫對信息錄入的格式要求,還需要對解析后的服務(wù)器端配置信息進(jìn)行進(jìn)一步的格式轉(zhuǎn)換,得到可錄入CMDB系統(tǒng)數(shù)據(jù)庫的配置信息。
104、將服務(wù)器端配置的參數(shù)以及對應(yīng)的參數(shù)信息發(fā)送到CMDB系統(tǒng)數(shù)據(jù)庫。
主控端解析完所有服務(wù)器端的配置信息后,會將這些服務(wù)器端的配置 信息上傳到CMDB系統(tǒng)的數(shù)據(jù)庫中,由該數(shù)據(jù)庫查找服務(wù)器端配置的參數(shù),如果存在,就將新獲取到的該參數(shù)對應(yīng)的值覆蓋原有的值,如果不存在,就在該數(shù)據(jù)庫中增加該服務(wù)器端的配置參數(shù)以及對應(yīng)該參數(shù)的值。最終由CMDB系統(tǒng)調(diào)用該數(shù)據(jù)庫中的信息,向管理員展示處于該系統(tǒng)管理范圍內(nèi)的所有服務(wù)器的相關(guān)配置信息。
與在主控端中應(yīng)用的服務(wù)器配置信息的采集方法相對應(yīng)的,本實施例還提供了另一種服務(wù)器配置信息的采集方法,如圖2所示,該方法應(yīng)用于服務(wù)器端,具體的步驟為:
201、接收配置采集信息指令。
本發(fā)明實施例中的服務(wù)器端所采用的配置信息采集方式,是通過預(yù)置的信息采集程序?qū)崿F(xiàn)信息采集的,通過對預(yù)置程序的編寫,可以設(shè)定所采集的配置信息的內(nèi)容,種類。同時,也可以通過對該采集程序啟動條件的設(shè)置來實現(xiàn)對服務(wù)器端配置信息的自動獲取。
在本發(fā)明實施例中所使用的由主控端遠(yuǎn)程發(fā)送觸發(fā)指令來啟動本地的可執(zhí)行程序的方式是較為普遍的一種實現(xiàn)方式,對該方式的具體實現(xiàn)此處不做具體說明。
需要指出的是,除了接收遠(yuǎn)程的配置信息采集指令的方式外,也可以通過對服務(wù)器端的配置信息進(jìn)行定期檢測,在發(fā)現(xiàn)服務(wù)器配置信息存在變化時,啟動配置信息采集程序,再或者是定時啟動配置信息采集程序。對此,本發(fā)明實施例不做具體限定,可根據(jù)具體的應(yīng)用場景選擇不同的程序啟動方式。
202、向主控端發(fā)送配置信息。
根據(jù)接收的配置采集信息指令,服務(wù)器會將當(dāng)前的狀態(tài)的配置信息反饋給主控端。本發(fā)明實施例對于配置信息的格式不做限定,可以是將自動執(zhí)行預(yù)置的信息采集程序后獲取的本服務(wù)器的相關(guān)配置信息進(jìn)行發(fā)送,也可以是將在得到服務(wù)器的相關(guān)配置信息后,對該配置信息進(jìn)行格式化處理,將得到的格式化配置信息進(jìn)行發(fā)送。
其中,所獲取的配置信息可以是服務(wù)器端硬件的配置信息,如內(nèi)存的大小、硬盤的容量、中央處理器(cpu)的性能等,也可以為軟件的配置信 息,如服務(wù)器端安裝有什么軟件、有哪些軟件服務(wù)是處于運行狀態(tài)或者是開機自啟動的等。而對服務(wù)器所采集到的配置信息進(jìn)行格式化處理,主要是為了將配置信息轉(zhuǎn)化為主控端能夠識別或操作的信息。此外,也是為了便于將服務(wù)器端的配置信息進(jìn)行整合并整體發(fā)送給主控端。同時也有利與主控端批量地接收服務(wù)器端返回的格式化配置信息,以及后續(xù)的信息加工處理工作。
確定了配置信息后,服務(wù)器端將配置信息或是格式化配置信息發(fā)送至主控端。在本發(fā)明實施例中,其實現(xiàn)方式是基于salt的C/S架構(gòu)進(jìn)行的配置信息批量發(fā)送。向?qū)?yīng)地,主控端也進(jìn)行批量的接收服務(wù)器端的配置信息。
結(jié)合上述的實現(xiàn)方式可以看出,本發(fā)明實施例所采用的服務(wù)器配置信息的采集方法,在服務(wù)器端執(zhí)行的配置信息的采集工作,與現(xiàn)有技術(shù)相比,本實施例的服務(wù)器端在進(jìn)行配置信息采集時,是通過觸發(fā)預(yù)置在本地的配置信息采集程序來實現(xiàn)多參數(shù)配置信息的采集,并且通過對參數(shù)配置信息的格式化處理,實現(xiàn)將多參數(shù)配置信息的整合,以及一次性上傳主控端,提高了配置信息的整體采集效率和上傳效率。在主控端實現(xiàn)了快速采集大批量服務(wù)器端配置信息的工作,與現(xiàn)有技術(shù)相比,主控端通過對采集到的配置信息進(jìn)行解析處理,實現(xiàn)了將采集到的服務(wù)器端的配置信息上傳到CMDB系統(tǒng)數(shù)據(jù)庫中的目的,使得所有服務(wù)器端的配置信息可以再CMDB系統(tǒng)實時更新,并展示給管理員。本發(fā)明實施例在具有大批量的服務(wù)器端的系統(tǒng)中,更能體現(xiàn)配置信息采集的效率,并且在整個信息的采集、上傳過程中,無需人工干預(yù),管理員可以在CMDB系統(tǒng)中直接查看到當(dāng)前所有服務(wù)器端的配置信息。
為了更加詳細(xì)地說明上述本發(fā)明提出的服務(wù)器配置信息的采集方法,本實施例將通過舉例來說明上述方法在實際應(yīng)用中的實現(xiàn)方式,如圖3所示,在服務(wù)器端采集配置信息的具體方式為:
301、接收配置采集信息指令。
借助salt的C/S架構(gòu),主控端可以向服務(wù)器端遠(yuǎn)程發(fā)送指令,利用salt命令來控制服務(wù)器端進(jìn)行配置信息的采集工作。
302、根據(jù)配置信息采集指令,獲取本地服務(wù)器端的配置信息。
根據(jù)主控端下發(fā)的salt命令,服務(wù)器端可以啟動預(yù)置在該服務(wù)器中的信息采集程序,在salt中使用的程序設(shè)計語言為Python。所編寫的配置信息采集程序通過執(zhí)行shell命令來逐條獲取服務(wù)器端的配置信息。本發(fā)明實施例以獲取服務(wù)器端硬件配置信息為例,根據(jù)具體的程序設(shè)計,可以獲取到服務(wù)器的名稱、系統(tǒng)、IP地址、內(nèi)存、硬盤等信息。
303、向主控端發(fā)送配置信息。
在服務(wù)器端,可以將獲取的本地服務(wù)器端的配置信息不做任何處理直接發(fā)送給主控端。也可以對主控端發(fā)送進(jìn)行格式化處理后的格式化配置信息。
進(jìn)行格式化處理首先要確定所獲取的配置信息中的參數(shù)及對應(yīng)的參數(shù)信息,然后再將參數(shù)及對應(yīng)的參數(shù)信息進(jìn)行格式化處理。本實施例將以字典格式的配置信息格式化處理為例加以說明。在信息采集程序完成配置信息的采集后,提取配置信息中的參數(shù)和對應(yīng)的參數(shù)值,將配置信息中的參數(shù)定義為字典格式中的key,將對應(yīng)該配置參數(shù)的值定義為字典格式中valuel,格式化后生成一個字典信息,其具體的格式例如:{id:’server1’,system:’centos6’,ip:’10.1.1.1’,memory_size:’16G’,disk_size:’1024G’,cpu_num:’4’},所包含的內(nèi)容包括服務(wù)器名稱為server1、系統(tǒng)為centos6、IP地址為10.1.1.1、內(nèi)存為16G、硬盤為1024G、cpu核數(shù)為4。最后將獲取的字典信息上傳給主控端。至此,服務(wù)器端就完成了配置信息的采集以及格式化處理并反饋給主控端的工作。
接下來由主控端實現(xiàn)對配置信息的進(jìn)一步處理工作,如圖4所示,主控端的配置信息的采集方法包括:
401、發(fā)送配置信息采集指令。
由于主控端可以批量的發(fā)送指令,因此,主控端在選擇發(fā)送的服務(wù)器端對象時,就需要先獲取當(dāng)前在線的服務(wù)器列表(即與主控端相關(guān)聯(lián)的服務(wù)器列表),根據(jù)所獲取的列表,向所有在線的服務(wù)器發(fā)送配置信息采集指令。
需要說明的是由主控端一次性的批量下發(fā)配置信息采集指令到所有的服務(wù)器端,再由各個服務(wù)器端進(jìn)行響應(yīng)并返回服務(wù)器的配置信息給主控端, 基于salt自身的特性,主控端在采集服務(wù)器端的配置信息的時間非常迅速,不存在排隊等待的問題。
402、獲得與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的格式化配置信息。
本步驟針對服務(wù)器端發(fā)送配置信息的兩種方式,即303中所述的不進(jìn)行格式化處理的配置信息和進(jìn)行了格式化處理的格式化配置信息。當(dāng)主控端接收到的是沒有進(jìn)行格式化的配置信息時,主控端會對該配置信息進(jìn)行格式化處理,從而得到格式化配置信息,以便主控端能夠?qū)υ撔畔⒓右宰R別并進(jìn)行后續(xù)的上傳CMDB系統(tǒng)數(shù)據(jù)庫的操作。
其中,在主控端對配置信息進(jìn)行格式化操作的具體方式可以參考上述的在服務(wù)器端對配置信息進(jìn)行的格式化操作,對此部分內(nèi)容不再進(jìn)行贅述。
需要說明的是,主控端在接收由服務(wù)器端發(fā)送的配置信息時,由于服務(wù)器端的數(shù)量眾多,因此所返回的配置信息也不只一個,因此,主控端子在接收到一個服務(wù)器端的配置信息后,會先將該配置信息存儲在主控端的內(nèi)存中逐個的進(jìn)行處理。
403、將格式化配置信息轉(zhuǎn)化為字典格式的格式化配置信息。
在本發(fā)明實施例中,設(shè)定CMDB系統(tǒng)數(shù)據(jù)庫的錄入格式為字典格式,那么,主控端在獲取到格式化配置信息后,會先進(jìn)行判斷,對于非字典格式的格式化配置信息,將對該格式化配置信息的格式進(jìn)行轉(zhuǎn)換,得到字典格式的格式化配置信息。
404、確定服務(wù)器的配置信息的參數(shù)及對應(yīng)的參數(shù)信息。
要確定配置信息的參數(shù)及對應(yīng)的參數(shù)信息首先需要再在字典格式的格式化配置信息中,確定配置信息的關(guān)鍵字和對應(yīng)的關(guān)鍵信息。結(jié)合上述所給出的字典格式的格式化配置信息的例子,對主控端內(nèi)存中的字典{id:’server1’,system:’centos6’,ip:’10.1.1.1’,memory_size:’16G’,disk_size:’1024G’,cpu_num:’4’}進(jìn)行解析,將字典中的key(配置信息的關(guān)鍵字),即id、system、ip、memory_size等信息,轉(zhuǎn)換成配置信息的參數(shù),將字典中的valuel(配置信息的關(guān)鍵字對應(yīng)的關(guān)鍵信息),即server1、centos6、10.1.1.1、16G等信息,轉(zhuǎn)換成與配置信息參數(shù)對應(yīng)的參數(shù)值。經(jīng)過解析后,得出的配置信息的格式為:
Id=server1
System=centos6
Ip=10.1.1.1
memory_size=16G
disk_size=1024G
cpu_num=4
經(jīng)過上述的解析是對一個服務(wù)器端所發(fā)送的配置信息的處理,之后,主控端將根據(jù)具體的需要還可以對解析后的配置信息進(jìn)行進(jìn)一步的篩選,提取需要上傳到CMDB系統(tǒng)數(shù)據(jù)庫中的一組或多組配置信息進(jìn)行上傳操作。
405、將服務(wù)器端配置的參數(shù)以及對應(yīng)的參數(shù)信息發(fā)送到CMDB系統(tǒng)數(shù)據(jù)庫。
在主控端進(jìn)行配置信息上傳的操作前,還需要對先與CMDB系統(tǒng)數(shù)據(jù)庫建立數(shù)據(jù)連接,在現(xiàn)有技術(shù)中,都是由CMDB系統(tǒng)通過ssh端口主動與服務(wù)器端建立遠(yuǎn)程連接,從而獲取該服務(wù)器的配置信息,而本實施例則是由主控端主動發(fā)起與CMDB系統(tǒng)數(shù)據(jù)庫建立數(shù)據(jù)連接的請求,由CMDB系統(tǒng)進(jìn)行響應(yīng)。這樣設(shè)置可以使的CMDB系統(tǒng)省去與服務(wù)器端意義建立連接的步驟,進(jìn)而節(jié)省了CMDB系統(tǒng)對處理資源占用。
主控端在與CMDB系統(tǒng)數(shù)據(jù)庫建立起數(shù)據(jù)連接后,就可以將403中提取出的配置信息組發(fā)送到CMDB系統(tǒng)的數(shù)據(jù)庫中,再經(jīng)CMDB系統(tǒng)的終端對該配置信息進(jìn)行展示。
進(jìn)一步的,作為對上述方法的實現(xiàn),本發(fā)明實施例提供了一種服務(wù)器配置信息的采集裝置,該裝置設(shè)置在基于salt的C/S架構(gòu)中的主控端內(nèi),其中該主控端可以為服務(wù)器中的一臺,也可以是獨立設(shè)置的一臺計算設(shè)備,如圖5所示,該裝置具體包括:
發(fā)送單元51,用于發(fā)送配置信息采集指令,以獲得與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息;
格式化配置信息獲取單元52,用于對所述執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息進(jìn)行格式化處理,以得到格式化配置信息,其中,所述格式化配 置信息,是將與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息轉(zhuǎn)化為執(zhí)行主體能夠識別或操作的信息;
所述格式化配置信息獲取單元52還用于,接收由所述服務(wù)器進(jìn)行格式化處理后得到的格式化配置信息;
解析單元53,用于根據(jù)所述格式化配置信息獲取單元52獲取的格式化配置信息,確定服務(wù)器的配置信息中的參數(shù)及對應(yīng)的參數(shù)信息;
所述發(fā)送單元51還用于,將所述解析單元53確定的服務(wù)器端配置的參數(shù)以及對應(yīng)的參數(shù)信息發(fā)送到CMDB系統(tǒng)數(shù)據(jù)庫。
進(jìn)一步的,如圖6所示,該裝置的發(fā)送單元51包括:
獲取模塊511,用于獲取相關(guān)聯(lián)的服務(wù)器列表;
發(fā)送模塊512,用于根據(jù)所述獲取模塊511獲取的服務(wù)器列表,向相關(guān)聯(lián)的服務(wù)器發(fā)送配置信息采集指令。
進(jìn)一步的,如圖6所示,該裝置的解析單元53包括:
轉(zhuǎn)換模塊531,用于將格式化配置信息,轉(zhuǎn)化為字典格式的格式化配置信息;其中,所述字典格式為提取所述CMDB系統(tǒng)數(shù)據(jù)庫需要的配置信息的格式;
解析模塊532,用于在所述轉(zhuǎn)換模塊531轉(zhuǎn)換的字典格式的格式化配置信息中,確定所述服務(wù)器的配置信息的關(guān)鍵字和對應(yīng)的關(guān)鍵信息;
確定模塊533,用于將所述解析模塊532確定的服務(wù)器配置信息的關(guān)鍵字和對應(yīng)的關(guān)鍵信息,確定為服務(wù)器的配置信息中的參數(shù)及對應(yīng)的參數(shù)信息。
進(jìn)一步的,本發(fā)明實施例還提供一種服務(wù)器配置信息的采集裝置,如圖7所示,該裝置設(shè)置在基于salt的C/S架構(gòu)中的服務(wù)器端內(nèi),該裝置包括:
接收單元71,用于接收配置采集信息指令;
發(fā)送單元72,用于根據(jù)所述接收單元71接收的指令,向主控端發(fā)送配置信息,其中,所述配置信息,為執(zhí)行主體本身的配置信息或與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息;
所述發(fā)送單元72還用于,根據(jù)所述接收單元71接收的指令,向主控端發(fā)送格式化配置信息,其中,所述格式化配置信息,是將執(zhí)行主體本身 的配置信息或與執(zhí)行主體相關(guān)聯(lián)的服務(wù)器的配置信息,轉(zhuǎn)化為所述主控端能夠識別或操作的信息。
進(jìn)一步的,如圖8所示,該裝置的發(fā)送單元72包括:
確定模塊721,用于確定服務(wù)器配置信息中的參數(shù)及對應(yīng)的參數(shù)信息;
處理模塊722,用于對所述確定模塊721確定的參數(shù)及對應(yīng)的參數(shù)信息進(jìn)行格式化處理,以得到格式化配置信息;
發(fā)送模塊723,用于發(fā)送所述處理模塊722得到的格式化配置信息。
此外,本發(fā)明實施例在結(jié)合上述的裝置后,還提出了一種服務(wù)器配置信息的采集系統(tǒng),如圖9所示,該系統(tǒng)包括了應(yīng)用上述服務(wù)器配置信息的采集裝置的主控端91和服務(wù)器端92,以及CMDB系統(tǒng)93。
其中,服務(wù)器端92用于采集自身的配置信息,并將該配置信息經(jīng)過格式化處理后發(fā)送給主控端。主控端91用于批量接收服務(wù)器端92發(fā)送的格式化配置信息,并對所收集的配置信息進(jìn)行加工處理,并上傳至CMDB系統(tǒng)93的數(shù)據(jù)庫中。而CMDB系統(tǒng)93,用于將由主控端92發(fā)送至CMDB系統(tǒng)數(shù)據(jù)庫中的服務(wù)器端的配置信息進(jìn)行更新、展示。
綜上所述,本發(fā)明實施例所采用的一種服務(wù)器配置信息的采集方法、裝置及系統(tǒng),是在服務(wù)器端預(yù)設(shè)服務(wù)器配置信息采集裝置,通過主控端批量發(fā)送遠(yuǎn)程觸發(fā)指令,來實現(xiàn)服務(wù)器端配置信息的自動采集過程,并且在服務(wù)器端通過對配置信息的格式化處理使得主控端可以一次性獲取多個配置參數(shù)。同時,在主控端通過對格式化配置信息的解析,可以有選擇性的將所獲得的服務(wù)器端的配置信息錄入CMDB系統(tǒng)的數(shù)據(jù)庫中,并且可以實現(xiàn)將大批量的服務(wù)器端的配置信息進(jìn)行快速錄入。最終由CMDB系統(tǒng)對所接收到的服務(wù)器端的配置信息進(jìn)行更新、展示。相對于現(xiàn)有的具有資產(chǎn)管理功能的軟件,本發(fā)明不近可以對大批量的服務(wù)器進(jìn)行配置信息的自動、快速采集,同時還可以避免CMDB系統(tǒng)通過SSH協(xié)議進(jìn)行遠(yuǎn)程一對一式的獲取服務(wù)器配置信息的弊端,由主控端將所有的服務(wù)器的配置信息同時進(jìn)行上傳,從而提高了服務(wù)器系統(tǒng)中資產(chǎn)管理信息的獲取效率及自動化程度。
在上述實施例中,對各個實施例的描述都各有側(cè)重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關(guān)描述。
可以理解的是,上述方法及裝置中的相關(guān)特征可以相互參考。另外,上述實施例中的“第一”、“第二”等是用于區(qū)分各實施例,而并不代表各實施例的優(yōu)劣。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng),裝置和單元的具體工作過程,可以參考前述方法實施例中的對應(yīng)過程,在此不再贅述。
在此提供的算法和顯示不與任何特定計算機、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對任何特定編程語言。應(yīng)當(dāng)明白,可以利用各種編程語言實現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對特定語言所做的描述是為了披露本發(fā)明的最佳實施方式。
在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實施例可以在沒有這些具體細(xì)節(jié)的情況下實踐。在一些實例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對本說明書的理解。
類似地,應(yīng)當(dāng)理解,為了精簡本公開并幫助理解各個發(fā)明方面中的一個或多個,在上面對本發(fā)明的示例性實施例的描述中,本發(fā)明的各個特征有時被一起分組到單個實施例、圖、或者對其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖:即所要求保護(hù)的本發(fā)明要求比在每個權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個實施例的所有特征。因此,遵循具體實施方式的權(quán)利要求書由此明確地并入該具體實施方式,其中每個權(quán)利要求本身都作為本發(fā)明的單獨實施例。
本領(lǐng)域那些技術(shù)人員可以理解,可以對實施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們設(shè)置在與該實施例不同的一個或多個設(shè)備中??梢园褜嵤├械哪K或單元或組件組合成一個模塊或單元或組件,以及此外可以把它們分成多個子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開 的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個特征可以由提供相同、等同或相似目的的替代特征來代替。
此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實施例包括其它實施例中所包括的某些特征而不是其它特征,但是不同實施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實施例的任意之一都可以以任意的組合方式來使用。
本發(fā)明的各個部件實施例可以以硬件實現(xiàn),或者以在一個或者多個處理器上運行的軟件模塊實現(xiàn),或者以它們的組合實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實踐中使用微處理器或者數(shù)字信號處理器(DSP)來實現(xiàn)根據(jù)本發(fā)明實施例的發(fā)明名稱(如確定網(wǎng)站內(nèi)鏈接等級的裝置)中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計算機程序和計算機程序產(chǎn)品)。這樣的實現(xiàn)本發(fā)明的程序可以存儲在計算機可讀介質(zhì)上,或者可以具有一個或者多個信號的形式。這樣的信號可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號上提供,或者以任何其他形式提供。
應(yīng)該注意的是上述實施例對本發(fā)明進(jìn)行說明而不是對本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計出替換實施例。在權(quán)利要求中,不應(yīng)將位于括號之間的任何參考符號構(gòu)造成對權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個”不排除存在多個這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計算機來實現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個可以是通過同一個硬件項來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序??蓪⑦@些單詞解釋為名稱。