本發明涉及分布式監控領域,特別涉及一種數據中心監控方法及系統。
背景技術:
隨著互聯網的飛速發展,大規模的數據中心成為現代社會發展的需要。這就為數據中心的監控管理帶來巨大挑戰,一個擁有幾萬資源的數據中心的監控難度已非常大,更何況目前的發展趨勢下幾十萬資源、甚至幾百萬資源的數據中心正在逐步產生。例如,一個具有十萬資源的數據中心的監控,用傳統的分布式監控方式已經無法滿足,即使傳統的分布式監控方式能夠滿足的幾千資源規模的監控,也無法實現對監控所耗費資源的充分高效利用,往往造成某些分布式受控端資源空閑、而另一些分布式受控端資源耗費貽盡,也進一步影響監控數據的實時性,即監控的性能受到影響,使整個分布式監控數據采集系統無法真正達到最理想的效果。
以上挑戰為大規模數據中心的監控數據采集、監控數據采集時的性能壓力均帶了極大的局限性,嚴重影響大規模數據中心監控的發展,因此,如何使各分布服務器的監控采集壓力合理均衡,有效解決監控數據相互分離、各分布服務器各自運維等問題,是本領域技術人員需要解決的技術問題。
技術實現要素:
本發明的目的是提供一種數據中心監控系統及方法,大大提升大規模數據中心監控時的可監控容量,保證各分布服務器的統一調配和管理,避免各分布服務器各自為政、監控壓力分配不均、監控數據相互分離不能統一分析的問題。
為解決上述技術問題,本發明提供一種數據中心監控系統,包括:主控端服務器、各分布服務器及數據庫服務器;其中,
所述主控端服務器包括:
監控任務分發管理模塊,用于根據選擇的監控任務分發策略將監控任務的分發到對應的分布服務器;
調度管理模塊,用于將分發的監控任務調配到對應的分布服務器的監控采集器,并對接收到監控數據進行處理;
分布服務器管理模塊,用于通過心跳連接的方式對各分布服務器進行監管;
所述分布服務器包括:
監控采集器,用于將接收到的監控任務加入輪詢隊列,按照所述輪詢隊列的順序依次啟動對應監控任務的監測進程進行數據采集,并將采集到的數據進行分析處理和告警狀態判斷后得到監控數據,將所述監控數據發送到所述數據庫服務器及所述調度管理模塊;
所述數據庫服務器,用于接收監控采集器發送的數據。
其中,所述監控任務分發管理模塊包括:
分發策略單元,用于選擇監控任務分發策略;
可監控數量配置表單元,用于根據所述監控任務分發策略配置可監控數量配置表,根據所述可監控數量配置表將監控任務的分發到對應的分布服務器。
其中,所述監控任務分發策略包括按照機房位置區域分發、自適應智能分發、按照被監控資源類型分發、按照被監控資源的關鍵性分發。
其中,所述可監控數量配置表單元具體為根據所述監控任務分發策略及各分布服務器的配置進行可監控數量配置表的配置,并根據所述可監控數量配置表將監控任務的分發到對應的分布服務器。
其中,所述分布服務器管理模塊包括:
連接單元,用于將所述主控端服務器與各所述分布服務器建立心跳連接,通過心跳連接確認各所述分布服務器是否正常運行,并根據確認結果對分布服務器執行對應操作;
管理單元,用于根據可監控數量配置表控制各分布服務器的增加、刪除、可監控數量修改、及對分布服務器進行開啟、關閉和重新啟動操作。
其中,所述調度管理模塊具體用于將分發的監控任務調配到對應的分布服務器的監控采集器,并對接收到監控數據進行分析,根據分析結果進行對應的通知發送和故障處理。
本發明還提供一種數據中心監控方法,包括:
主控端服務器根據選擇的監控任務分發策略將分發的監控任務調配到對應的分布服務器的監控采集器;其中,所述主控端服務器與各分布服務器通過心跳連接的方式進行連接;
各分布服務器將接收到的監控任務加入輪詢隊列,按照所述輪詢隊列的順序依次啟動對應監控任務的監測進程進行數據采集,并將采集到的數據進行分析處理和告警狀態判斷后得到監控數據,將所述監控數據發送到數據庫服務器及所述主控端服務器;
所述主控端服務器對接收到監控數據進行處理。
其中,根據選擇的監控任務分發策略將分發的監控任務調配到對應的分布服務器的監控采集器,包括:
根據選擇的所述監控任務分發策略配置可監控數量配置表,根據所述可監控數量配置表將監控任務的分發到對應的分布服務器。
其中,該方法還包括:
主控端服務器根據可監控數量配置表控制各分布服務器的增加、刪除、可監控數量修改、及對分布服務器進行開啟、關閉和重新啟動操作。
本發明所提供的數據中心監控系統,考慮分布式監控數據采集可降低主控端性能壓力的特點,采用一個主控端服務器加多個分布服務器,以及各分布服務器端監控采集器的可伸縮性,結合單數據源的監控數據庫設計,實現主控端服務器中的監控任務分發管理模塊根據不同分發策略進行監控任務的分發,分布服務器管理模塊通過心跳連接的方式進行各分布服務器的監管,調度管理模塊將分發的監控任務調配到各分布服務器端的監測采集器,監控采集器依據下發和監控任務規模自動進行動態伸縮,在接收到監控任務后將其加入輪詢隊列,排到隊時啟動監測進程進行數據采集,采集到的數據經過分析處理和告警狀態判斷后的監控數據儲存到數據庫服務器中,并同時反饋到調度管理模塊,供其處理,從而大大提升了大規模數據中心監控時的可監控容量,保證了各分布服務器的統一調配和管理,避免了各分布服務器各自為政、監控壓力分配不均、監控數據相互分離不能統一分析的問題;本發明還提供數據中心監控方法,具有上述有益效果,在此不再贅述。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據提供的附圖獲得其他的附圖。
圖1為本發明實施例所提供的數據中心監控系統的結構框圖;
圖2為本發明實施例所提供的監控任務分發管理模塊的分發過程示意圖;
圖3為本發明實施例所提供的監控采集器工作過程的示意圖;
圖4為本發明實施例所提供的數據中心監控系統的監控原理示意圖。
具體實施方式
本發明的核心是提供一種數據中心監控系統及方法,大大提升大規模數據中心監控時的可監控容量,保證各分布服務器的統一調配和管理,避免各分布服務器各自為政、監控壓力分配不均、監控數據相互分離不能統一分析的問題。
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
請參考圖1,圖1為本發明實施例所提供的數據中心監控系統的結構框圖;該系統可以包括:主控端服務器100、各分布服務器200及數據庫服務器300;其中,
所述主控端服務器100包括:
監控任務分發管理模塊110,用于根據選擇的監控任務分發策略將監控任務的分發到對應的分布服務器;
具體的,監控任務分發管理模塊110采用基于策略分發的思路,設計豐富的監控任務分發策略,這里的監控任務分發策略可以按照機房位置區域分發、自適應智能分發、按照被監控資源類型分發、按照被監控資源的關鍵性分發。這里并不對具體的策略內容進行限定,只要用戶有適合其分布式系統的分發策略即可。請參考圖2以5000各被監控資源為例說明上述分發過程。具體的,監控任務分發管理模塊包括:
分發策略單元,用于選擇監控任務分發策略;
可監控數量配置表單元,用于根據所述監控任務分發策略配置可監控數量配置表,根據所述可監控數量配置表將監控任務的分發到對應的分布服務器。
具體的可監控數量配置表單元在進行配置可監控數量配置表時還需要考慮各分布服務器的配置例如cpu、內存、硬盤等。
即監控任務分發管理模塊110的工作過程為通過維護分布服務器的可監控數量配置表,實現監控任務的靈活按需分發。其中,各分布服務器的可監控數量是結合各分布服務器的配置(如cpu、內存、硬盤等)和實際監控需求經過分析后確定;監控任務分發策略可以按所在機房位置分發、自適應智能分發、按被監控資源類型分發、按被監控資源的關鍵性分發等,通過不同的策略分發達到各分布服務器上的監控任務、監測壓力合理分布的目的。
這里的監控任務分發管理模塊110可以將可監控數量配置表分別發送到調度管理模塊120、分布服務器管理模塊130及數據庫服務器300;分別使它們完成監控任務的調配,對分布服務器的管理,使接收到數據按照可監控數量配置表存儲到對應位置。
調度管理模塊120,用于將分發的監控任務調配到對應的分布服務器的監控采集器,并對接收到監控數據進行處理;處理過程即對接收到監控數據進行分析,根據分析結果進行對應的通知發送和故障處理。
具體的,調度管理模塊120統一對各分布服務器端監測采集器進行調配,將各自分發的監控任務下發到監測采集器,并完成各分布服務器端監測采集器反饋的監控數據統一接收和統一處理,繼續完成后續的通知發送或故障處理等。
分布服務器管理模塊130,用于通過心跳連接的方式對各分布服務器及所述數據庫服務器進行監管;
具體的,所述分布服務器管理模塊包括:
連接單元,用于將所述主控端服務器與各所述分布服務器建立心跳連接,通過心跳連接確認各所述分布服務器是否正常運行,并根據確認結果對分布服務器執行對應操作;
管理單元,用于根據可監控數量配置表控制各分布服務器的增加、刪除、可監控數量修改、及對分布服務器進行開啟、關閉和重新啟動操作。
即完成全方位的分布服務器管理,使主控端服務器與各分布服務器在某種意義上融為一體,共同完成大規模數據中心監控的統一調度和分布采集。
所述分布服務器200包括:
監控采集器210,用于將接收到的監控任務加入輪詢隊列,按照所述輪詢隊列的順序依次啟動對應監控任務的監測進程進行數據采集,并將采集到的數據進行分析處理和告警狀態判斷后得到監控數據,將所述監控數據發送到所述數據庫服務器及所述調度管理模塊;
具體的,將監控任務加入輪詢隊列,當排隊完成時啟動監測進程進行數據采集,并將收集到的數據進行分析處理和告警狀態判斷后得到監控數據,最后,在將監控數據推送到監控數據庫儲存的同時,也反饋到調度管理模塊。為了更加完整的了解分布式系統的狀態,還可以將采集到的數據一起發送到數據庫服務器中的監控數據庫。請參考圖3,
所述數據庫服務器300,用于接收監控采集器發送的數據,可以將接收到的數據存儲于數據庫服務器中的監控數據庫中。
下面以具體例子說明上述過程,請參考圖4,以5000個各類資源的大規模數據中心監控為例,采用1臺主控端服務器、3臺分布服務器和1臺數據庫服務器的方式來描述這一設計方法的實現過程。
監控任務分發管理模塊根據自適應智能分發策略,將5000個資源的監控任務通過調度管理模塊分配到3個分布服務器上運行的共7個監測采集器上,分別為分布服務器1啟用2個監測采集器負責1500個、分布服務器2啟用2個監測采集器負責1500個、分布服務器3啟用3個監測采集器承擔2000個,這些監控任務首先由調度管理模塊統一對各分布服務器端監測采集器進行調配,將各自分發的監控任務下發到監測采集器;分布服務器的監控采集器將監控任務加入輪詢隊列,當排隊完成時啟動監測進程進行數據采集,并將收集到的數據進行分析處理和告警狀態判斷后得到監控數據,再將監控數據推送到監控數據庫儲存的同時,也反饋到調度管理模塊,繼續完成后續的通知發送或故障處理等。分布服務器管理模塊將主控端服務器與各分布服務器建立心跳連接,以及對分布服務器的控制,完成全方位的分布服務器管理,使主控端服務器與各分布服務器在某種意義上融為一體,共同完成大規模數據中心監控的統一調度和分布采集。
基于上述技術方案,本發明實施例提的數據中心監控系統,該系統大大提升大規模數據中心監控時的可監控容量,保證各分布服務器的統一調配和管理,避免各分布服務器各自為政、監控壓力分配不均、監控數據相互分離不能統一分析的問題。
下面對本發明實施例提供的數據中心監控方法進行介紹,下文描述的數據中心監控方法與上文描述的數據中心監控系統可相互對應參照。
本發明還提供一種數據中心監控方法,包括:
主控端服務器根據選擇的監控任務分發策略將分發的監控任務調配到對應的分布服務器的監控采集器;其中,所述主控端服務器與各分布服務器通過心跳連接的方式進行連接;
各分布服務器將接收到的監控任務加入輪詢隊列,按照所述輪詢隊列的順序依次啟動對應監控任務的監測進程進行數據采集,并將采集到的數據進行分析處理和告警狀態判斷后得到監控數據,將所述監控數據發送到數據庫服務器及所述主控端服務器;
所述主控端服務器對接收到監控數據進行處理。
基于上述實施例,根據選擇的監控任務分發策略將分發的監控任務調配到對應的分布服務器的監控采集器,包括:
根據選擇的所述監控任務分發策略配置可監控數量配置表,根據所述可監控數量配置表將監控任務的分發到對應的分布服務器。
基于上述實施例,該方法還包括:
主控端服務器根據可監控數量配置表控制各分布服務器的增加、刪除、可監控數量修改、及對分布服務器進行開啟、關閉和重新啟動操作。
說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。
以上對本發明所提供的數據中心監控系統及方法進行了詳細介紹。本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發明的方法及其核心思想。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以對本發明進行若干改進和修飾,這些改進和修飾也落入本發明權利要求的保護范圍內。