本發(fā)明涉及計算機技術(shù)領(lǐng)域,特別涉及一種服務(wù)器性能信息獲取方法、系統(tǒng)和基板控制管理器。
背景技術(shù):
近年來,隨著服務(wù)器網(wǎng)絡(luò)管理技術(shù)的飛速發(fā)展,服務(wù)器管理已經(jīng)分化為帶外管理(out-of-band)和帶內(nèi)管理(in-band)兩種管理模式。帶內(nèi)管理,是指網(wǎng)絡(luò)的管理控制信息與用戶網(wǎng)絡(luò)的承載業(yè)務(wù)信息通過同一個邏輯信道傳送,當(dāng)管理數(shù)據(jù)較多時,將會影響到整個網(wǎng)絡(luò)的性能;而在帶外管理模式中,網(wǎng)絡(luò)的管理控制信息與用戶網(wǎng)絡(luò)的承載業(yè)務(wù)信息在不同的邏輯信道傳送,網(wǎng)絡(luò)的管理控制信息與用戶網(wǎng)絡(luò)的承載業(yè)務(wù)信息分離,有利于提高網(wǎng)絡(luò)的管理控制信息的安全性。目前絕大多數(shù)的數(shù)據(jù)中心要求管理網(wǎng)和業(yè)務(wù)網(wǎng)分離,這是一種保證數(shù)據(jù)中心信息安全的有效手段。
目前帶外管理的主要方式是通過服務(wù)器主板上的bmc(baseboardmanagementcontroller,基板管理控制器)實現(xiàn)網(wǎng)絡(luò)的管理控制信息與用戶網(wǎng)絡(luò)的承載業(yè)務(wù)信息在不同的邏輯信道傳送,但是bmc是主板上的一塊獨立的芯片,與操作系統(tǒng)之間無數(shù)據(jù)通路,從而導(dǎo)致無法直接獲取服務(wù)器的性能信息。
通過上述描述可見,由于bmc無法直接獲取服務(wù)器的性能數(shù)據(jù),從而無法通過bmc帶外獲取服務(wù)器的性能信息。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供了一種服務(wù)器性能信息獲取方法、系統(tǒng)和基板控制管理器,能夠通過bmc帶外獲取服務(wù)器的性能信息。
第一方面,本發(fā)明實施例提供了一種服務(wù)器性能信息獲取方法,應(yīng)用于基板管理控制器bmc,包括:
通過擴展智能平臺管理接口ipmi協(xié)議創(chuàng)建至少一個性能傳感器,還包括:
通過所述ipmi協(xié)議接收服務(wù)器的性能信息,其中,所述性能信息由外部的性能信息采集模塊從所述服務(wù)器上采集獲得;
將所述性能信息定義為所述至少一個性能傳感器的當(dāng)前值;
接收外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取請求;
根據(jù)所述獲取請求,讀取所述至少一個性能傳感器的當(dāng)前值,并通過所述帶外網(wǎng)絡(luò)將讀取到的所述當(dāng)前值發(fā)送給所述客戶端。
進一步地,在所述通過擴展ipmi協(xié)議創(chuàng)建至少一個性能傳感器之后,進一步包括:
為每一個所述性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值;
在所述接收外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取請求之后,進一步包括:
分別判斷每一個所述傳感器的當(dāng)前值是否超過相對應(yīng)的閾值,如果是,向所述客戶端發(fā)送提示信息。
進一步地,所述性能信息包括:所述服務(wù)器的cpu使用信息、內(nèi)存使用信息、存儲使用信息和網(wǎng)絡(luò)使用信息中的任意一個或多個。
進一步地,所述將所述性能信息定義為所述至少一個性能傳感器的當(dāng)前值,包括:
當(dāng)所述性能信息包括所述cpu使用信息時,將所述cpu使用信息定義為所述至少一個性能傳感器中的cpu性能傳感器的當(dāng)前值;
當(dāng)所述性能信息包括所述內(nèi)存使用信息時,將所述內(nèi)存使用信息定義為所述至少一個性能傳感器中的內(nèi)存性能傳感器的當(dāng)前值;
當(dāng)所述性能信息包括所述存儲使用信息時,將所述存儲使用信息定義為所述至少一個性能傳感器中的存儲性能傳感器的當(dāng)前值;
當(dāng)所述性能信息包括所述網(wǎng)絡(luò)使用信息時,將所述網(wǎng)絡(luò)使用信息定義為所述至少一個性能傳感器中的網(wǎng)絡(luò)性能傳感器的當(dāng)前值。
第二方面,本發(fā)明實施例提供了一種基板管理控制器,包括:
傳感器創(chuàng)建模塊、性能信息接收模塊、定義模塊、獲取請求接收模塊和響應(yīng)模塊;其中,
所述傳感器創(chuàng)建模塊,用于通過擴展智能平臺管理接口ipmi協(xié)議創(chuàng)建至少一個性能傳感器;
所述性能信息接收模塊,用于通過所述ipmi協(xié)議接收服務(wù)器的性能信息,其中,所述性能信息由外部的性能信息采集模塊從所述服務(wù)器上采集獲得;
所述定義模塊,用于將所述性能信息接收模塊接收到的所述性能信息定義為所述傳感器創(chuàng)建模塊創(chuàng)建的所述至少一個性能傳感器的當(dāng)前值;
所述獲取請求接收模塊,用于接收外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取請求;
所述響應(yīng)模塊,用于根據(jù)所述獲取請求接收模塊接收到的所述獲取請求,讀取所述定義模塊定義的所述至少一個性能傳感器的當(dāng)前值,并通過所述帶外網(wǎng)絡(luò)將讀取到的所述當(dāng)前值發(fā)送給所述客戶端。
進一步地,該控制器進一步包括:閾值設(shè)置模塊和處理模塊;
所述閾值設(shè)置模塊,用于為所述傳感器創(chuàng)建模塊創(chuàng)建的每一個性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值;
所述處理模塊,用于分別判斷每一個所述傳感器的當(dāng)前值是否超過由所述閾值設(shè)置模塊設(shè)置的相對應(yīng)的閾值,如果是,向所述客戶端發(fā)送提示信息。
進一步地,所述定義模塊包括:cpu定義子模塊、內(nèi)存定義子模塊、存儲定義子模塊和網(wǎng)絡(luò)定義子模塊;其中,
所述cpu定義子模塊,用于當(dāng)所述性能信息包括所述cpu使用信息時,將所述cpu使用信息定義為所述至少一個性能傳感器中的cpu性能傳感器的當(dāng)前值;
所述內(nèi)存定義子模塊,用于當(dāng)所述性能信息包括所述內(nèi)存使用信息時,將所述內(nèi)存使用信息定義為所述至少一個性能傳感器中的內(nèi)存性能傳感器的當(dāng)前值;
所述存儲定義子模塊,用于當(dāng)所述性能信息包括所述存儲使用信息時,將所述存儲使用信息定義為所述至少一個性能傳感器中的存儲性能傳感器的當(dāng)前值;
所述網(wǎng)絡(luò)定義子模塊,用于當(dāng)所述性能信息包括所述網(wǎng)絡(luò)使用信息時,將所述網(wǎng)絡(luò)使用信息定義為所述至少一個性能傳感器中的網(wǎng)絡(luò)性能傳感器的當(dāng)前值。
第三方面,本發(fā)明實施例提供了一種服務(wù)器性能信息獲取系統(tǒng),包括:
服務(wù)器、性能信息采集模塊、客戶端和第二方面中任一所述的基板管理控制器;
所述性能信息采集模塊,用于采集所述服務(wù)器的性能信息,并將采集到的所述性能信息發(fā)送給所述基板管理控制器;
所述客戶端,用于通過帶外網(wǎng)絡(luò)向所述基板管理控制器發(fā)送獲取請求,并通過所述帶外網(wǎng)絡(luò)接收所述基板管理控制器發(fā)送的所述基板管理控制器中至少一個性能傳感器的當(dāng)前值。
進一步地,該系統(tǒng)進一步包括:監(jiān)控模塊;
所述監(jiān)控模塊,用于實時監(jiān)控所述性能信息采集模塊,當(dāng)監(jiān)測到性能信息采集模塊意外終止時,重新啟動所述性能信息采集模塊。
進一步地,所述性能信息采集模塊,用于根據(jù)預(yù)先設(shè)定的采集周期,每經(jīng)過一個所述采集周期,對所述服務(wù)器的性能信息進行一次采集,并將采集到的性能信息發(fā)送給所述基板管理控制器。
在本發(fā)明實施例中,通過擴展ipmi協(xié)議創(chuàng)建至少一個性能傳感器,通過ipmi協(xié)議接收的服務(wù)器的性能信息并定義為至少一個性能傳感器的當(dāng)前值,接收外部的客戶端發(fā)送的獲取請求,并將讀取到的至少一個性能傳感器的當(dāng)前值發(fā)送給客戶端;由于在bmc的擴展ipmi協(xié)議中創(chuàng)建了至少一個性能傳感器,解決了bmc無法直接獲取服務(wù)器性能信息的問題,從而實現(xiàn)通過bmc帶外獲取服務(wù)器的性能信息。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明一實施例提供的一種服務(wù)器性能信息獲取方法的流程圖;
圖2是本發(fā)明一實施例提供的另一種服務(wù)器性能信息獲取方法的流程圖;
圖3是本發(fā)明一實施例提供的一種基板管理控制器的示意圖;
圖4是本發(fā)明一實施例提供的另一種基板管理控制器的示意圖;
圖5是本發(fā)明一實施例提供的再一種基板管理控制器的示意圖;
圖6是本發(fā)明一實施例提供的一種服務(wù)器性能信息獲取系統(tǒng)的分布圖;
圖7是本發(fā)明一實施例提供的另一種一種服務(wù)器性能信息獲取系統(tǒng)的分布圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例,基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
如圖1所示,本發(fā)明實施例提供了一種服務(wù)器性能信息獲取方法,應(yīng)用于基板管理控制器bmc,包括:
步驟101:通過擴展智能平臺管理接口ipmi協(xié)議創(chuàng)建至少一個性能傳感器;
步驟102:通過所述ipmi協(xié)議接收服務(wù)器的性能信息,其中,所述性能信息由外部的性能信息采集模塊從所述服務(wù)器上采集獲得;
步驟103:將所述性能信息定義為所述至少一個性能傳感器的當(dāng)前值;
步驟104:接收外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取請求;
步驟105:根據(jù)所述獲取請求,讀取所述至少一個性能傳感器的當(dāng)前值,并通過所述帶外網(wǎng)絡(luò)將讀取到的所述當(dāng)前值發(fā)送給所述客戶端。
在本發(fā)明實施例中,通過擴展ipmi協(xié)議創(chuàng)建至少一個性能傳感器,通過ipmi協(xié)議接收的服務(wù)器的性能信息并定義為至少一個性能傳感器的當(dāng)前值,接收外部的客戶端發(fā)送的獲取請求,并將讀取到的至少一個性能傳感器的當(dāng)前值發(fā)送給客戶端;由于在bmc的擴展ipmi協(xié)議中創(chuàng)建了至少一個性能傳感器,解決了bmc無法直接獲取服務(wù)器性能信息的問題,從而實現(xiàn)通過bmc帶外獲取服務(wù)器的性能信息。
為了對將服務(wù)器的性能信息進行及時有效的監(jiān)控,在本發(fā)明一實施例中,在所述通過擴展ipmi協(xié)議創(chuàng)建至少一個性能傳感器之后,進一步包括:
為每一個所述性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值;
在所述接收外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取請求之后,進一步包括:
分別判斷每一個所述傳感器的當(dāng)前值是否超過相對應(yīng)的閾值,如果是,向所述客戶端發(fā)送提示信息。
本發(fā)明實施例中,為每一個性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值,并分別判斷每一個傳感器的當(dāng)前值是否超過相對應(yīng)的閾值,如果性能傳感器的當(dāng)前值超過所設(shè)置的閾值,立即向客戶端發(fā)送該傳感器處于超負(fù)荷運行狀態(tài)的提示信息,便于客戶端即使采取相對應(yīng)的應(yīng)對措施。
舉例來說,在創(chuàng)建cpu性能傳感器之后,為cpu性能傳感器設(shè)置的閾值為95%的cpu使用率,而cpu性能傳感器的當(dāng)前值為96%的cpu使用率、在接收外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取cpu性能傳感器的當(dāng)前值的請求之后,根據(jù)將cpu性能傳感器96%的cpu使用率的當(dāng)前值與設(shè)置的95%的cpu使用率對比,判斷cpu性能傳感器的當(dāng)前值為96%的cpu使用率超過設(shè)置的95%的內(nèi)存占用率的閾值,并向客戶端發(fā)送cpu性能使用率高的提醒。
為了使用戶對服務(wù)器的性能信息進行全面或有針對性的了解,在本發(fā)明一實施例中,所述性能信息包括:所述服務(wù)器的cpu使用信息、內(nèi)存使用信息、存儲使用信息和網(wǎng)絡(luò)使用信息中的任意一個或多個。
本發(fā)明實施例中,根據(jù)客戶端的需求,確定性能信息具體包括的內(nèi)容,其中,cpu使用信息能夠表征服務(wù)器中cpu的占用率,內(nèi)存使用信息能表征服務(wù)器中內(nèi)存的占用率,存儲使用信息能表征服務(wù)器中存儲空間的使用率,網(wǎng)絡(luò)使用信息能表征服務(wù)器中網(wǎng)絡(luò)的占用率,客戶端可以根據(jù)不同的需求,向服務(wù)器請求相對應(yīng)的服務(wù)器性能信息。
舉例來說,性能信息包括:96%的cpu使用率、30%的內(nèi)存占用率、40%的存儲空間占用率、30%的網(wǎng)絡(luò)占用率。
為了將服務(wù)器的各個性能信息反饋給用戶,在本發(fā)明一實施例中,所述將所述性能信息定義為所述至少一個性能傳感器的當(dāng)前值,包括:
當(dāng)所述性能信息包括所述cpu使用信息時,將所述cpu使用信息定義為所述至少一個性能傳感器中的cpu性能傳感器的當(dāng)前值;
當(dāng)所述性能信息包括所述內(nèi)存使用信息時,將所述內(nèi)存使用信息定義為所述至少一個性能傳感器中的內(nèi)存性能傳感器的當(dāng)前值;
當(dāng)所述性能信息包括所述存儲使用信息時,將所述存儲使用信息定義為所述至少一個性能傳感器中的存儲性能傳感器的當(dāng)前值;
當(dāng)所述性能信息包括所述網(wǎng)絡(luò)使用信息時,將所述網(wǎng)絡(luò)使用信息定義為所述至少一個性能傳感器中的網(wǎng)絡(luò)性能傳感器的當(dāng)前值。
本發(fā)明實施例中,如果性能信息包括cpu使用信息,將cpu使用信息定義為cpu性能傳感器的當(dāng)前值,如果性能信息包括內(nèi)存使用信息,將內(nèi)存使用信息定義為內(nèi)存性能傳感器的當(dāng)前值,如果性能信息包括存儲實用信息,將存儲使用信息定義為存儲性能傳感器的當(dāng)前值,如果性能信息包括網(wǎng)絡(luò)使用信息,將網(wǎng)絡(luò)使用信息定義為網(wǎng)絡(luò)性能傳感器的當(dāng)前值,便于當(dāng)客戶端發(fā)送請求信息時,能夠及時將相應(yīng)的性能信息反饋給客戶端。
舉例來說,當(dāng)性能信息包括:96%的cpu使用率、30%的內(nèi)存占用率、40%的存儲空間占用率、30%的網(wǎng)絡(luò)占用率時,將96%的cpu使用率定義為cpu性能傳感器的當(dāng)前值、30%的內(nèi)存占用率定義為內(nèi)存性能傳感器的當(dāng)前值、40%的存儲空間占用率定義為存儲性能傳感器的當(dāng)前值、40%的存儲空間占用率定義為網(wǎng)絡(luò)性能傳感器的當(dāng)前值。
如圖2所示,對本發(fā)明實施例提供了一種服務(wù)器性能信息獲取方法進行詳細(xì)說明:
步驟201:通過擴展智能平臺管理接口ipmi協(xié)議創(chuàng)建至少一個性能傳感器。
在本發(fā)明實施例中,通過擴展ipmi協(xié)議,在bmc上創(chuàng)建cpu性能傳感器、內(nèi)存性能傳感器、網(wǎng)絡(luò)性能傳感器和存儲性能傳感器中的任意一個或多個。
舉例來說,通過擴展ipmi協(xié)議創(chuàng)建cpu性能傳感器、內(nèi)存性能傳感器、網(wǎng)絡(luò)性能傳感器、存儲性能傳感器。
步驟202:為每一個性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值。
在本發(fā)明實施例中,為cpu性能傳感器、內(nèi)存性能傳感器、網(wǎng)絡(luò)性能傳感器、存儲性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值。
舉例來說,為cpu性能傳感器設(shè)置的閾值為95%的cpu使用率,為內(nèi)存性能傳感器設(shè)置的閾值為95%的內(nèi)存占用率,為存儲性能傳感器設(shè)置的閾值為95%的存儲空間占用率,為網(wǎng)絡(luò)性能傳感器設(shè)置的閾值為95%的網(wǎng)絡(luò)占用率。
步驟203:通過ipmi協(xié)議接收服務(wù)器的性能信息。
在本發(fā)明實施例中,外部的性能信息采集模塊從服務(wù)器上采集cpu使用信息、內(nèi)存使用信息、存儲使用信息和網(wǎng)絡(luò)使用信息中的至少一個作為服務(wù)器的性能信息,通過ipmi協(xié)議將采集到的性能信息發(fā)送給bmc。bmc通過ipmi協(xié)議接收性能信息采集模塊發(fā)送的性能信息。
舉例來說,通過ipmi協(xié)議接收由外部的采集模塊從服務(wù)器上采集的性能信息為96%的cpu使用率、30%的內(nèi)存占用率、40%的存儲空間占用率、30%的網(wǎng)絡(luò)占用率。
步驟204:將性能信息定義至少一個性能傳感器的當(dāng)前值。
在本發(fā)明實施例中,在接收到服務(wù)器的性能信息之后,如果性能信息包括cpu使用信息,將cpu使用信息定義為步驟201中所創(chuàng)建的cpu性能傳感器的當(dāng)前值;如果性能信息包括內(nèi)存使用信息,將內(nèi)存使用信息定義為步驟201中所創(chuàng)建的內(nèi)存性能傳感器的當(dāng)前值;如果性能信息包括存儲使用信息,將存儲使用信息定義為步驟201中所創(chuàng)建的存儲性能傳感器的當(dāng)前值;如果性能信息包括網(wǎng)絡(luò)使用信息,將網(wǎng)絡(luò)使用信息定義為步驟201中所創(chuàng)建的網(wǎng)絡(luò)性能傳感器的當(dāng)前值。
舉例來說,當(dāng)性能信息包括:96%的cpu使用率、30%的內(nèi)存占用率、40%的存儲空間占用率、30%的網(wǎng)絡(luò)占用率時,將96%的cpu使用率定義為cpu性能傳感器的當(dāng)前值、30%的內(nèi)存占用率定義為內(nèi)存性能傳感器的當(dāng)前值、40%的存儲空間占用率定義為存儲性能傳感器的當(dāng)前值、40%的存儲空間占用率定義為網(wǎng)絡(luò)性能傳感器的當(dāng)前值。
步驟205:接收由外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取請求。
在本發(fā)明實施例中,接收客戶端發(fā)送的獲取服務(wù)器性能信息的請求,便于將服務(wù)器信息及時發(fā)送給客戶端。
舉例來說,接收由外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取cpu使用率、內(nèi)存占用率、存儲空間占用率和網(wǎng)絡(luò)占用率的請求。
步驟206:分別判斷每一個傳感器的當(dāng)前值是否超過相對應(yīng)的閾值,如果是,執(zhí)行步驟207,否則執(zhí)行步驟208。
在本發(fā)明實施例中,針對每一個傳感器,將該傳感器的當(dāng)前值與所對應(yīng)的閾值進行比較,如果該傳感器的當(dāng)前值超過對應(yīng)的閾值,相對應(yīng)地執(zhí)行步驟207,如果該傳感器的當(dāng)前值沒有超過對應(yīng)的閾值,相對應(yīng)的執(zhí)行步驟208。
舉例來說,cpu性能傳感器設(shè)置的閾值為95%的cpu使用率,當(dāng)前值為96%的cpu使用率,當(dāng)前值超過設(shè)置的閾值,針對cpu性能傳感器執(zhí)行步驟207。內(nèi)存性能傳感器設(shè)置的閾值為95%的內(nèi)存占用率,當(dāng)前值為30%的內(nèi)存占用率,當(dāng)前值未超過設(shè)置的閾值,針對內(nèi)存性能傳感器執(zhí)行步驟208。
步驟207:向客戶端發(fā)送提示信息。
在本發(fā)明實施例中,針對每一個性能傳感器,在該性能傳感器的當(dāng)前值超過所設(shè)置的閾值后,通過帶外網(wǎng)絡(luò)向客戶端發(fā)送提示信息,以及時通知用戶服務(wù)器上相對應(yīng)元件已處于超負(fù)荷運行狀態(tài),使得用戶能過及時采取相對應(yīng)的應(yīng)對措施,防止服務(wù)器由于部分元件超負(fù)荷運行導(dǎo)致服務(wù)器宕機。
舉例來說,判斷cpu性能傳感器的當(dāng)前值超過所設(shè)置的閾值后,通過帶外網(wǎng)絡(luò)想客戶端發(fā)送cpu性能傳感器超負(fù)荷運行狀態(tài)。
步驟208:根據(jù)獲取請求,讀取至少一個性能傳感器的當(dāng)前值,并通過帶外網(wǎng)絡(luò)將讀取到的當(dāng)前值發(fā)送給客戶端。
在本發(fā)明實施例中,根據(jù)客戶端的獲取服務(wù)器性能信息的請求,將讀取的傳感器的當(dāng)前值通過帶外網(wǎng)絡(luò)發(fā)送給客戶端,便于客戶端及時得知請求的信息。
舉例來說,外部的客戶端請求獲取內(nèi)存占用率,信息響應(yīng)模塊讀取到內(nèi)存性能傳感器的當(dāng)前值為30%的內(nèi)存占用率,通過帶外網(wǎng)絡(luò)將30%的內(nèi)存占用率發(fā)送給客戶端。
如圖3所示,本發(fā)明實施例提供了一種基板管理控制器,包括:
傳感器創(chuàng)建模塊301、性能信息接收模塊302、定義模塊303、獲取請求接收模塊304和響應(yīng)模塊305,其中,
傳感器創(chuàng)建模塊301,用于通過擴展智能平臺管理接口ipmi協(xié)議創(chuàng)建至少一個性能傳感器;
性能信息接收模塊302,用于通過所述ipmi協(xié)議接收服務(wù)器的性能信息,其中,所述性能信息由外部的性能信息采集模塊從所述服務(wù)器上采集獲得;
定義模塊303,用于將所述性能信息接收模塊302接收到的所述性能信息定義為所述傳感器創(chuàng)建模塊301創(chuàng)建的所述至少一個性能傳感器的當(dāng)前值;
獲取請求接收模塊304,用于接收外部的客戶端通過帶外網(wǎng)絡(luò)發(fā)送的獲取請求;
響應(yīng)模塊305,用于根據(jù)所述獲取請求接收模塊304接收到的所述獲取請求,讀取所述定義模塊303定義的所述至少一個性能傳感器的當(dāng)前值,并通過所述帶外網(wǎng)絡(luò)將讀取到的所述當(dāng)前值發(fā)送給所述客戶端。
在本發(fā)明實施例中,通過傳感器創(chuàng)建模塊擴展ipmi協(xié)議創(chuàng)建至少一個性能傳感器,利用性能信息接收模塊通過ipmi協(xié)議接收的服務(wù)器的性能信息并通過定義模塊定義為至少一個性能傳感器的當(dāng)前值,通過獲取請求接收模塊接收外部的客戶端發(fā)送的獲取請求,并將響應(yīng)模塊讀取到的至少一個性能傳感器的當(dāng)前值發(fā)送給客戶端;由于在bmc的擴展ipmi協(xié)議中創(chuàng)建了至少一個性能傳感器,解決了bmc無法直接獲取服務(wù)器性能數(shù)據(jù)的問題,從而實現(xiàn)通過bmc帶外獲取服務(wù)器的性能信息。
基于圖3所示的一種基板管理控制器,本發(fā)明一實施例中,如圖4所示,該控制器進一步包括:
閾值設(shè)置模塊401和處理模塊402,其中,
閾值設(shè)置模塊401,用于為所述傳感器創(chuàng)建模塊301創(chuàng)建的每一個性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值;
處理模塊402,用于分別判斷每一個所述傳感器的當(dāng)前值是否超過由所述閾值設(shè)置模塊401設(shè)置的相對應(yīng)的閾值,如果是,向所述客戶端發(fā)送提示信息。
基于圖4所示的一種基板管理控制器,本發(fā)明一實施例中,如圖5所示,該控制器中的定義模塊303包括:
cpu定義子模塊3031、內(nèi)存定義子模塊3032、存儲定義子模塊3033、網(wǎng)絡(luò)定義子模塊3034;其中,
cpu定義子模塊3031,用于當(dāng)所述性能信息包括所述cpu使用信息時,將所述cpu使用信息定義為所述至少一個性能傳感器中的cpu性能傳感器的當(dāng)前值;
內(nèi)存定義子模塊3032,用于當(dāng)所述性能信息包括所述內(nèi)存使用信息時,將所述內(nèi)存使用信息定義為所述至少一個性能傳感器中的內(nèi)存性能傳感器的當(dāng)前值;
存儲定義子模塊3033,用于當(dāng)所述性能信息包括所述存儲使用信息時,將所述存儲使用信息定義為所述至少一個性能傳感器中的存儲性能傳感器的當(dāng)前值;
網(wǎng)絡(luò)定義子模塊3034,用于當(dāng)所述性能信息包括所述存儲使用信息時,將所述存儲使用信息定義為所述至少一個性能傳感器中的存儲性能傳感器的當(dāng)前值;
如圖6所示,本發(fā)明實施例提供了一種服務(wù)器性能信息獲取系統(tǒng),包括:
服務(wù)器601、性能信息采集模塊602、客戶端603和任一所述的基板管理控制器604;
性能信息采集模塊602,用于采集所述服務(wù)器601的性能信息,并將采集到的所述性能信息發(fā)送給所述基板管理控制器604;
所述客戶端603,用于通過帶外網(wǎng)絡(luò)向所述基板管理控制器604發(fā)送獲取請求,并通過所述帶外網(wǎng)絡(luò)接收所述基板管理控制器604發(fā)送的所述基板管理控制器604中至少一個性能傳感器的當(dāng)前值。
基于圖6所示的一種服務(wù)器性能信息獲取系統(tǒng),本發(fā)明一實施例中,如圖7所示,該系統(tǒng)進一步包括:監(jiān)控模塊701;
所述監(jiān)控模塊701,用于實時監(jiān)控所述性能信息采集模塊602,當(dāng)監(jiān)測到性能信息采集模塊602意外終止時,重新啟動所述性能信息采集模塊602。
本發(fā)明一實施例中,所述性能信息采集模塊602,用于根據(jù)預(yù)先設(shè)定的采集周期,每經(jīng)過一個所述采集周期,對所述服務(wù)器的性能信息進行一次采集,并將采集到的性能信息發(fā)送給所述基板管理控制器604。
本發(fā)明各個實施例至少具有如下有益效果:
1、在本發(fā)明實施例中,通過擴展ipmi協(xié)議創(chuàng)建至少一個性能傳感器,通過ipmi協(xié)議接收的服務(wù)器的性能信息并定義為至少一個性能傳感器的當(dāng)前值,接收外部的客戶端發(fā)送的獲取請求,并將讀取到的至少一個性能傳感器的當(dāng)前值發(fā)送給客戶端;由于在bmc的擴展ipmi協(xié)議中創(chuàng)建了至少一個性能傳感器,解決了bmc無法直接獲取服務(wù)器性能信息的問題,從而實現(xiàn)通過bmc帶外獲取服務(wù)器的性能信息。
2、本發(fā)明實施例中,為每一個性能傳感器的當(dāng)前值設(shè)置相對應(yīng)的閾值,并分別判斷每一個傳感器的當(dāng)前值是否超過相對應(yīng)的閾值,如果性能傳感器的當(dāng)前值超過所設(shè)置的閾值,立即向客戶端發(fā)送該傳感器處于超負(fù)荷運行狀態(tài)的提示信息,便于客戶端即使采取相對應(yīng)的應(yīng)對措施。
3、本發(fā)明實施例中,由外部的性能信息采集模塊從服務(wù)器上采集的cpu使用信息、內(nèi)存使用信息、存儲使用信息和網(wǎng)絡(luò)使用信息中的任意一個或多個,便于為至少一個傳感器定義當(dāng)前值。
4、本發(fā)明實施例中,根據(jù)客戶端的需求,確定性能信息具體包括的內(nèi)容,其中,cpu使用信息能夠表征服務(wù)器中cpu的占用率,內(nèi)存使用信息能表征服務(wù)器中內(nèi)存的占用率,存儲使用信息能表征服務(wù)器中存儲空間的使用率,網(wǎng)絡(luò)使用信息能表征服務(wù)器中網(wǎng)絡(luò)的占用率,客戶端可以根據(jù)不同的需求,向服務(wù)器請求相對應(yīng)的服務(wù)器性能信息。
5、本發(fā)明實施例中,如果性能信息包括cpu使用信息,將cpu使用信息定義為cpu性能傳感器的當(dāng)前值,如果性能信息包括內(nèi)存使用信息,將內(nèi)存使用信息定義為內(nèi)存性能傳感器的當(dāng)前值,如果性能信息包括存儲實用信息,將存儲使用信息定義為存儲性能傳感器的當(dāng)前值,如果性能信息包括網(wǎng)絡(luò)使用信息,將網(wǎng)絡(luò)使用信息定義為網(wǎng)絡(luò)性能傳感器的當(dāng)前值,便于當(dāng)客戶端發(fā)送請求信息時,能夠及時將相應(yīng)的性能信息反饋給客戶端。
需要說明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個〃·····”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同因素。
本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲在計算機可讀取的存儲介質(zhì)中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質(zhì)包括:rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)中。
最后需要說明的是:以上所述僅為本發(fā)明的較佳實施例,僅用于說明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。