本發(fā)明涉及云計算技術領域,特別是涉及一種云系統(tǒng)中監(jiān)控閾值設定方法及裝置。
背景技術:
隨著云計算技術的快速發(fā)展,資源監(jiān)控逐漸從傳統(tǒng)的單主機資源監(jiān)控過渡到云系統(tǒng)中虛擬機、集群、云數據中心級別的復雜資源監(jiān)控,監(jiān)控閾值不斷增加,使得對監(jiān)控閾值的設定越來越復雜。
目前多是通過技術人員手動對各個監(jiān)控對象的監(jiān)控閾值進行設定,需要耗費較多的時間和精力,管理成本較高,而且出錯率較高,容易影響云系統(tǒng)的正常運行。
技術實現要素:
本發(fā)明的目的是提供一種云系統(tǒng)中監(jiān)控閾值設定方法及裝置,以高效率地在云系統(tǒng)中對各監(jiān)控對象的監(jiān)控閾值進行集中設定,提高云系統(tǒng)中監(jiān)控閾值的可管理性,降低管理成本,保障云系統(tǒng)的正常運行。
為解決上述技術問題,本發(fā)明提供如下技術方案:
一種云系統(tǒng)中監(jiān)控閾值設定方法,包括:
接收監(jiān)控閾值設定指令;
根據所述監(jiān)控閾值設定指令,獲得預先建立的監(jiān)控閾值配置文件,所述監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成;
根據所述監(jiān)控閾值配置文件中的每個配置項,為監(jiān)控對象設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,所述根據所述監(jiān)控閾值配置文件中每個配置項,為監(jiān)控對象設定相應的監(jiān)控閾值,包括:
確定所述監(jiān)控閾值配置文件中每個配置項對應的定義范圍的級別;
根據每個配置項對應的定義范圍的級別,為監(jiān)控對象逐級設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,所述定義范圍的級別包括虛擬機級別、集群級別、數據中心級別和默認級別。
在本發(fā)明的一種具體實施方式中,所述根據每個配置項對應的定義范圍的級別,為監(jiān)控對象逐級設定相應的監(jiān)控閾值,包括:
查找所述監(jiān)控閾值配置文件中是否存在定義范圍為虛擬機級別的配置項;
如果是,則根據定義范圍為虛擬機級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,查找所述監(jiān)控閾值配置文件中是否存在定義范圍為集群級別的配置項;
如果是,則根據定義范圍為集群級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,查找所述監(jiān)控閾值配置文件中是否存在定義范圍為數據中心級別的配置項;
如果是,則根據定義范圍為數據中心級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,根據定義范圍為默認級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,所述監(jiān)控閾值配置文件中的配置項的信息格式為INI格式。
一種云系統(tǒng)中監(jiān)控閾值設定裝置,包括:
設定指令接收模塊,用于接收監(jiān)控閾值設定指令;
配置文件獲得模塊,用于根據所述監(jiān)控閾值設定指令,獲得預先建立的監(jiān)控閾值配置文件,所述監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成;
監(jiān)控閾值設定模塊,用于根據所述監(jiān)控閾值配置文件中的每個配置項,為監(jiān)控對象設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,所述監(jiān)控閾值設定模塊,具體用于:
確定所述監(jiān)控閾值配置文件中每個配置項對應的定義范圍的級別;
根據每個配置項對應的定義范圍的級別,為監(jiān)控對象逐級設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,所述定義范圍的級別包括虛擬機級別、集群級別、數據中心級別和默認級別。
在本發(fā)明的一種具體實施方式中,所述監(jiān)控閾值設定模塊,具體用于:
查找所述監(jiān)控閾值配置文件中是否存在定義范圍為虛擬機級別的配置項;
如果是,則根據定義范圍為虛擬機級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,查找所述監(jiān)控閾值配置文件中是否存在定義范圍為集群級別的配置項;
如果是,則根據定義范圍為集群級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,查找所述監(jiān)控閾值配置文件中是否存在定義范圍為數據中心級別的配置項;
如果是,則根據定義范圍為數據中心級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,根據定義范圍為默認級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,所述監(jiān)控閾值配置文件中的配置項的信息格式為INI格式。
應用本發(fā)明實施例所提供的技術方案,在接收到監(jiān)控閾值設定指令時,獲得預先建立的監(jiān)控閾值配置文件,監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成,根據監(jiān)控閾值配置文件中的每個配置項,可以為監(jiān)控對象設定相應的監(jiān)控閾值。這樣,可以高效率地在云系統(tǒng)中對各監(jiān)控對象的監(jiān)控閾值進行集中設定,提高云系統(tǒng)中監(jiān)控閾值的可管理性,降低管理成本,保障云系統(tǒng)的正常運行。
附圖說明
為了更清楚地說明本發(fā)明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例中一種云系統(tǒng)中監(jiān)控閾值設定方法的實施流程圖;
圖2為本發(fā)明實施例中一種云系統(tǒng)中監(jiān)控閾值設定裝置的結構示意圖。
具體實施方式
為了使本技術領域的人員更好地理解本發(fā)明方案,下面結合附圖和具體實施方式對本發(fā)明作進一步的詳細說明。顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
參見圖1所示,為本發(fā)明實施例所提供的一種云系統(tǒng)中監(jiān)控閾值設定方法的實施流程圖,該方法可以包括以下步驟:
S110:接收監(jiān)控閾值設定指令。
在云環(huán)境下,資源供應是以虛擬機形式實現的,通過虛擬化技術可以將原本分散的物理計算機資源整合成巨大的資源池,為用戶提供“取之不盡用之不竭”的計算資源。對于外部用戶來說,虛擬機是無差別的,用戶只要通過網絡接口申請并使用相應的虛擬機即可,不必關心這些虛擬機的具體來源。
在云系統(tǒng)中,可以包含若干個虛擬機,多個虛擬機可以構建成一個集群,多個集群可以構建成數據中心。每個虛擬機分別具有內存、CPU、接口等資源,保障內存、CPU、接口等資源處于健康狀態(tài)是保障虛擬機正常工作的重要條件之一。所以需要對內存、CPU、接口等資源進行監(jiān)控,這些即為監(jiān)控項,可以為這些監(jiān)控項設定監(jiān)控閾值,以在對云系統(tǒng)進行監(jiān)控過程中,如果有監(jiān)控項達到監(jiān)控閾值時,及時輸出告警信息。
在云系統(tǒng)的結構發(fā)生一定變化,如有虛擬機加入,或者有虛擬機退出時,云系統(tǒng)中相應的監(jiān)控對象也將發(fā)生變化,需要對云系統(tǒng)中相應的監(jiān)控對象的監(jiān)控閾值進行設定,運維人員可以發(fā)出監(jiān)控閾值設定指令。
接收到監(jiān)控閾值設定指令后,可以繼續(xù)執(zhí)行步驟S120的操作。
S120:根據監(jiān)控閾值設定指令,獲得預先建立的監(jiān)控閾值配置文件。
監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成。
在本發(fā)明實施例中,監(jiān)控設備可以提供監(jiān)控閾值管理接口,由技術人員根據實際需求通過命令行創(chuàng)建或修改監(jiān)控閾值配置文件。
監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成。監(jiān)控閾值配置文件類型可以為INI類型,監(jiān)控閾值配置文件中的配置項的信息格式可以為INI格式。
具體的,定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識通過冒號(:)連接構成節(jié)(section),監(jiān)控項和監(jiān)控閾值構成選項(option)。
比如,某個配置項描述如下:
[CLUSTER:VM:{CLUSTER.id}]
CPU=80
上述描述表明在集群定義范圍下配置的歸屬于CLUSTER.id的虛擬機的CPU的監(jiān)控閾值。定義范圍為集群(CLUSTER),監(jiān)控對象范圍為虛擬機(VM),監(jiān)控對象標識為CLUSTER.id,監(jiān)控對象即為歸屬于CLUSTER.id的虛擬機,監(jiān)控項為CPU,監(jiān)控閾值為80。
監(jiān)控閾值配置文件的具體實例如下:
[VM:default]
cpu=80,300:90,300
mem=80,300:90,300
storage_read=102400,300:153600,300
storage_write=102400,300:153600,300
interface_read=1024000,300:1228800,300
interface_write=1024000,300:1228800,300
[CLUSTER:VM:6f5ad260-4102-41df-a7f0-f0186307dab0]
cpu=60,300:70,300
監(jiān)控閾值配置文件為預先建立的,可以存儲于云系統(tǒng)的設定位置處。在接收到監(jiān)控閾值設定指令時,可以在該設定位置處讀取到監(jiān)控閾值配置文件。在實際應用中,監(jiān)控閾值配置文件可以以版本號命名,在監(jiān)控閾值設定指令中攜帶版本號信息,每次對監(jiān)控閾值的設定需獲取相應版本的監(jiān)控閾值配置文件。
S130:根據監(jiān)控閾值配置文件中的每個配置項,為監(jiān)控對象設定相應的監(jiān)控閾值。
在步驟S120,獲得監(jiān)控閾值配置文件后,即獲得了監(jiān)控閾值配置文件中的每個配置項,從配置項的節(jié)中容易得到該配置項所對應的監(jiān)控對象,從配置項的選項中容易得到該配置項所對應的監(jiān)控項及監(jiān)控閾值。
根據監(jiān)控閾值配置文件中的每個配置項,可以為監(jiān)控對象設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,步驟S130可以包括以下步驟:
步驟一:確定監(jiān)控閾值配置文件中每個配置項對應的定義范圍的級別;
步驟二:根據每個配置項對應的定義范圍的級別,為監(jiān)控對象逐級設定相應的監(jiān)控閾值。
為便于描述,將上述兩個步驟集合起來進行說明。
獲得監(jiān)控閾值配置文件后,通過配置項包含的節(jié)可以確定配置項對應的定義范圍的級別。在本發(fā)明實施例中,定義范圍的級別包括虛擬機級別、集群級別、數據中心級別和默認級別。
根據每個配置項對應的定義范圍的級別,可以為監(jiān)控對象逐級設定相應的監(jiān)控閾值,使得監(jiān)控閾值逐級生效。比如按照級別的小大順序逐級設定監(jiān)控閾值。
具體的,可以先查找監(jiān)控閾值配置文件中是否存在定義范圍為虛擬機級別的配置項,即查詢[VM:VM:{VM.id}]節(jié)和其中的選項;
如果是,則根據定義范圍為虛擬機級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值,即為歸屬于VM.id的虛擬機的各監(jiān)控項設定相應的監(jiān)控閾值,使相應監(jiān)控閾值生效;
否則,查找監(jiān)控閾值配置文件中是否存在定義范圍為集群級別的配置項,即查詢[CLUSTER:VM:{CULUSTER.id}]節(jié)和其中的選項;
如果是,則根據定義范圍為集群級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值,即為歸屬于CLUSTER.id的虛擬機的各監(jiān)控項設定相應的監(jiān)控閾值,使相應監(jiān)控閾值生效;
否則,查找監(jiān)控閾值配置文件中是否存在定義范圍為數據中心級別的配置項,即查詢[DATACENTER:VM:{DATACENTER.id}]節(jié)和選項;
如果是,則根據定義范圍為數據中心級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值,即為歸屬于DATACENTER.id的虛擬機的各監(jiān)控項設定相應的監(jiān)控閾值,使相應監(jiān)控閾值生效;
否則,根據定義范圍為默認級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值,即查詢[VM:default]節(jié)和選項,完成相應監(jiān)控閾值的生效。
應用本發(fā)明實施例所提供的方法,在接收到監(jiān)控閾值設定指令時,獲得預先建立的監(jiān)控閾值配置文件,監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成,根據監(jiān)控閾值配置文件中的每個配置項,可以為監(jiān)控對象設定相應的監(jiān)控閾值。這樣,可以高效率地在云系統(tǒng)中對各監(jiān)控對象的監(jiān)控閾值進行集中設定,提高云系統(tǒng)中監(jiān)控閾值的可管理性,降低管理成本,保障云系統(tǒng)的正常運行。
相應于上面的方法實施例,本發(fā)明實施例還提供了一種云系統(tǒng)中監(jiān)控閾值設定裝置,下文描述的一種云系統(tǒng)中監(jiān)控閾值設定裝置與上文描述的一種云系統(tǒng)中監(jiān)控閾值設定方法可相互對應參照。
參見圖2所示,該裝置包括以下模塊:
設定指令接收模塊210,用于接收監(jiān)控閾值設定指令;
配置文件獲得模塊220,用于根據監(jiān)控閾值設定指令,獲得預先建立的監(jiān)控閾值配置文件,監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成;
監(jiān)控閾值設定模塊230,用于根據監(jiān)控閾值配置文件中的每個配置項,為監(jiān)控對象設定相應的監(jiān)控閾值。
應用本發(fā)明實施例所提供的裝置,在接收到監(jiān)控閾值設定指令時,獲得預先建立的監(jiān)控閾值配置文件,監(jiān)控閾值配置文件中包含一個或多個配置項,每個配置項包含相應的節(jié)和選項,每個節(jié)由定義范圍、監(jiān)控對象范圍和監(jiān)控對象標識構成,每個選項由監(jiān)控項和監(jiān)控閾值構成,根據監(jiān)控閾值配置文件中的每個配置項,可以為監(jiān)控對象設定相應的監(jiān)控閾值。這樣,可以高效率地在云系統(tǒng)中對各監(jiān)控對象的監(jiān)控閾值進行集中設定,提高云系統(tǒng)中監(jiān)控閾值的可管理性,降低管理成本,保障云系統(tǒng)的正常運行。
在本發(fā)明的一種具體實施方式中,監(jiān)控閾值設定模塊230,具體用于:
確定監(jiān)控閾值配置文件中每個配置項對應的定義范圍的級別;
根據每個配置項對應的定義范圍的級別,為監(jiān)控對象逐級設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,定義范圍的級別包括虛擬機級別、集群級別、數據中心級別和默認級別。
在本發(fā)明的一種具體實施方式中,監(jiān)控閾值設定模塊230,具體用于:
查找監(jiān)控閾值配置文件中是否存在定義范圍為虛擬機級別的配置項;
如果是,則根據定義范圍為虛擬機級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,查找監(jiān)控閾值配置文件中是否存在定義范圍為集群級別的配置項;
如果是,則根據定義范圍為集群級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,查找監(jiān)控閾值配置文件中是否存在定義范圍為數據中心級別的配置項;
如果是,則根據定義范圍為數據中心級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值;
否則,根據定義范圍為默認級別的配置項,為相應監(jiān)控對象設定相應的監(jiān)控閾值。
在本發(fā)明的一種具體實施方式中,監(jiān)控閾值配置文件中的配置項的信息格式為INI格式。
本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其它實施例的不同之處,各個實施例之間相同或相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。
專業(yè)人員還可以進一步意識到,結合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機軟件或者二者的結合來實現,為了清楚地說明硬件和軟件的可互換性,在上述說明中已經按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術方案的特定應用和設計約束條件。專業(yè)技術人員可以對每個特定的應用來使用不同方法來實現所描述的功能,但是這種實現不應認為超出本發(fā)明的范圍。
結合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結合來實施。軟件模塊可以置于隨機存儲器(RAM)、內存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術領域內所公知的任意其它形式的存儲介質中。
本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的技術方案及其核心思想。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權利要求的保護范圍內。