《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 多云平臺監控系統的設計與實現
多云平臺監控系統的設計與實現
2017年微型機與應用第10期
楊靖琦,胡勛
中國電子科學研究院,北京 100041
摘要: 近年來,隨著云計算的興起和逐步發展,云平臺已成為各類企業和機構提供服務的主要方式,為保證云平臺高效穩定運行,需要對云平臺進行實時監控。針對以上需求,基于開源監控工具Ganglia和Ceilometer,設計并實現了一個多云平臺監控系統,提供云平臺、物理機和虛擬機中內存、CPU和硬盤等資源使用情況的監控能力,同時,通過物理資源管理、監控策略管理、日志管理和用戶管理等功能,提升監控系統的可擴展水平和用戶友好程度。最終,實現對多云平臺全方位可視化的管理和控制。
Abstract:
Key words :

  楊靖琦,胡勛

  (中國電子科學研究院,北京 100041)

  摘要:近年來,隨著云計算的興起和逐步發展,云平臺已成為各類企業和機構提供服務的主要方式,為保證云平臺高效穩定運行,需要對云平臺進行實時監控。針對以上需求,基于開源監控工具Ganglia和Ceilometer,設計并實現了一個多云平臺監控系統,提供云平臺、物理機虛擬機中內存、CPU和硬盤等資源使用情況的監控能力,同時,通過物理資源管理、監控策略管理、日志管理和用戶管理等功能,提升監控系統的可擴展水平和用戶友好程度。最終,實現對多云平臺全方位可視化的管理和控制。

  關鍵詞:云平臺;監控系統;物理機;虛擬機

  中圖分類號:TP399文獻標識碼:ADOI: 10.19358/j.issn.1674-7720.2017.10.030

  引用格式:楊靖琦,胡勛.多云平臺監控系統的設計與實現[J].微型機與應用,2017,36(10):102-105.

0引言

  計算平臺的發展主要經歷了以主機為中心和以PC為中心兩個階段,目前正處于以網絡為中心的階段。在這一階段,隨著云計算技術的快速發展,以云平臺為代表的網絡計算平臺逐漸成為主要的資源提供方式。企業可以基于分散的計算、存儲等物理資源按照不同組織架構搭建云平臺,動態地為用戶提供所需的計算、存儲等資源,提高資源利用率,降低運營復雜度和成本[1]。隨著云平臺的不斷增多和規模的不斷擴大,平臺監控難度急劇增加,傳統的人工查詢方式已不適用于多個大規模云平臺的監控和管理,為實現更有效的云平臺管理,需提供云平臺資源的統一監控管理能力,從而直觀地了解平臺運行狀態,最大限度地使用系統的資源。

  目前,國內已開展了對云平臺監控的研究,其中一些研究[2]實現了OpenStack云平臺中虛擬資源的監控,另外一些研究[3]實現了OpenStack云平臺中物理資源的監控,但現有云平臺監控研究成果大多針對單個云平臺的單一資源類型,無法提供多個平臺中物理資源和虛擬資源的多功能、一體化監控系統。為解決現有問題,本文設計并實現了面向多個云平臺、覆蓋物理資源和虛擬資源的監控系統。

  本文的多云平臺監控系統面向OpenStack云平臺設計和實現,具有可移植性,其中物理資源監控是平臺無關的,無需修改即可適用于其他平臺,虛擬資源監控可通過修改訪問接口的方式應用于對其他云平臺的監控,由于文章篇幅限制,在此不做贅述。

1云平臺及監控方法

  1.1OpenStack

  OpenStack是美國國家航天局和Rackspace公司共同開發的開源云計算平臺,可支撐公有云或私有云的建設和管理,為用戶提供IaaS(基礎設施即服務)層的云服務。OpenStack包括Nova、Swift、Glance和Keystone等主要模塊,分別提供計算、存儲、鏡像和安全認證等能力,由于其具備模塊松耦合、組件配置靈活、易于二次開發等優點,已成為應用最廣的開源云平臺[4]。

  1.2Ceilometer

  2012年10月,隨著OpenStack Folsom的發布,Ceilometer項目發布了第一個版本,從2013年開始,Ceilometer作為OpenStack發行版的一部分發布,提供OpenStack平臺的虛擬機監控功能。為適應云計算環境節點大規模動態調整的特點,Ceilometer通過插件機制,提供了可靈活擴展的架構。

Ceilometer通過輪詢計算節點上的虛擬機實例獲取監控信息,并在數據庫中將監控信息進行持久化存儲,為計費和監控提供支撐。

Image 001.jpg

  1.3Ganglia

  目前,在集群計算機監控領域主要有Cacti、Parmon、Nagios、Ganglia等軟件系統。通過對此類軟件的比較分析可知,Ganglia具備功能模塊豐富、監控功能強、可擴展性高等優點,同時具有良好的移植性,支撐在Linux、Solaris、Mac OS和Windows等主流操作系統上運行,可滿足復雜環境下的集群監控需求[5]。

  Ganglia是加州學校伯克利分校發起的計算機集群監視項目[6],用于監控大規模集群的運行狀態,如:CPU、內存、網絡負載、硬盤利用率等。Ganglia采用分布式的監控結構,通過安裝gmond和gmetad軟件實現集群的監控,其中,被監控的節點安裝gmond實現節點運行狀態的收集和上報;監控節點安裝gmetad實現與gmond通信,通過輪詢的方式收集區域內節點上報的狀態信息。Ganglia使用RRDTool工具實現采集數據的存儲和處理,并可通過個性化配置實現基于Web的圖形化顯示。

2系統設計

  2.1系統架構設計

  多云平臺監控系統提供云平臺、服務器和虛擬機監控數據的獲取、處理和展現功能,其系統架構如圖1所示。

  資源層:依托分布式服務器設備,基于OpenStack開源軟件,搭建異構云計算平臺,可為用戶按需提供物理資源和虛擬資源,是監控系統監控主體。

  監控層:基于Ganglia軟件實現服務器資源狀態監控,基于Ceilometer組件實現虛擬機資源狀態監控,通過對服務器和虛擬機監控信息的獲取和融合處理,為展示層提供所需狀態數據,同時根據資源監控策略,實現資源狀態告警和利用率告警信息生成。

  展示層:以Web頁面方式進行信息展示,提供異構云監控和異構云管理兩類功能,實現異構云平臺資源信息和狀態的統一監視和控制。其中:

  多云平臺監控主要展現云平臺總體狀態、云平臺監控、服務器監控、虛擬機監控等相關信息。

  (1)云平臺總體狀態:實時監控數據中心所包含的服務器、虛擬機的數量和相關信息;

  (2)云平臺監控:對數據中心進行監控,提供數據中心列表、地理位置、概述、運行狀態等信息的展示;

  (3)服務器監控:對服務器進行監控,提供服務器實時監控信息,并展示服務器所包含的虛擬機信息;

  (4)虛擬機監控:對虛擬機進行監控,提供虛擬機實時監控信息,并展示虛擬機配置。

  多云平臺管理主要提供物理資源管理、監控策略管理、日志查詢和用戶管理等功能。

  (1)物理資源管理:提供數據中心、服務器等物理區域和物理設備信息添加修改功能;

  (2)監控策略管理:對服務器和虛擬機等計算資源需要監控的指標和閾值進行查看和設置;

  (3)日志查看:記錄計算資源監控軟件產生的用戶操作日志和告警日志,提供分時段查看功能;

  (4)用戶管理:提供監控系統用戶的增加、刪除、修改和查詢功能。

  2.2系統類圖與接口設計

  使用基于開放源碼的Web應用框架Django開發異構云平臺監控系統,構建支持監控信息處理和顯示的MTV架構,即Model、Template、View,多云平臺監控系統類圖如圖2所示。

  

Image 002.jpg

  其中,Model(Cloud、Server、VM、Log)定義資源信息和監控數據的存儲格式,并且提供了數據庫訪問的API;View(IndexView、CloudView、ServerView、VmView、ManagerView)定義應該顯示哪些數據,是業務邏輯處理模塊;Template定義View的數據應該如何被顯示。MonitorVM、GraphForServer、UpdateStatus三個類分別提供虛擬機狀態監控、服務器狀態繪圖和狀態信息更新功能。

  按照系統類設計,異構云平臺監控系統內部接口示意圖如圖3所示,接口標識見表1。

 

Image 003.jpg

  Image 004.jpg

  監控狀態獲取VMStatus監控虛擬機資源使用情況

3系統實現與部署

  基于OpenStack搭建多個云計算平臺[7],用來模擬四個數據中心,每個云平臺由1個控制節點和網絡節點及若干個計算節點組成,基于KVM的虛擬化技術實現計算資源的虛擬化,構建彈性計算環境。其中環境配置及功能如表2所示。

Image 005.jpg

  所有節點通過2臺48口交換機相連,一臺負責控制流信息的交互,另一臺用于數據流信息的交互。環境中計算資源與外部網絡是隔離的,網絡節點單獨有一個網卡與外部網絡相連,通過GRE隧道協議,使得外部網絡環境中的用戶能夠登錄訪問虛擬機。

  通過安裝OpenStack的Ceilometer模塊和Ganglia軟件(Python版),多云平臺監控系統可對多個云平臺節點進行監控,并能夠動態適應集群規模調整,以適應混合云伸縮的需要,其安裝示意圖如圖4所示。

  多云平臺監控服務器端:運行基于Django Web框架的多云平臺監控軟件,通過獲取并處理Ceilometer和Ganglia的監控數據,實現對云平臺中虛擬資源和物理資源的監控,為用戶提供基于瀏覽器的可視化交互界面,系統后臺數據存儲在MySQL數據庫中。

  Ceilometer:云平臺各節點安裝compute agent收集節點的狀態信息,實現虛擬機的監控,Ceilometer監控信息可存儲于MangoDB、MySQL、PostgreSQL和HBase等數據庫中,其中對MongoDB是支持最好的,本文系統使用MangoDB存儲虛擬機監控信息。

  Ganglia:云平臺控制節點安裝gmetad和gmond,網絡節點和計算節點安裝gmond,通過修改源代碼,選取并配置所需監控指標,實現集群整體和各物理節點CPU、內存、硬盤和網絡負載等運行狀態監控,Ganglia監控數據默認存儲在RRD數據庫中。

  多云平臺監控系統可實現對各個云平臺、服務器、虛擬機相關配置信息和運行狀態的監控與管理。

4結論

  本文提出了基于Ganglia與Ceilometer的多云平臺監控系統設計與實現方法,實現了多個云平臺服務器和虛擬機的一體化監控,為云平臺資源運行情況提供統一的可視化監控管理能力,提升平臺管理水平。在此基礎上,監控系統的實現可為云平臺資源的組織、調度和分配提供決策依據,提高資源使用的合理性。

Image 006.jpg

  參考文獻

  [1] 張建勛,古志民,鄭超. 云計算研究進展綜述[J]. 計算機應用研究, 2010,27(2):429-433.

  [2] 劉智超. 基于OpenStack的虛擬機集群監控系統的設計與實現[D]. 北京:北京郵電大學,2014.

  [3] 尤海鵬. 基于Ganglia的數據中心監控平臺設計[D]. 濟南:山東大學, 2014.

  [4] 李志軍,孔朋朋,雷振伍. 基于OpenStack的私有云平臺設計[J]. 微型機與應用, 2016,35(9):24-26.

  [5] 吳怡鳳,歸強,羅明宇,等. 集群計算機監控技術研究[J].計算機與現代化, 2013(11):218-222.

  [6] MASSIE M, LI B, NICHOLES B, et al.Monitoring with Ganglia[M].O’Reilly Media,2012.

  [7] 王霄飛. 基于OpenStack構建私有云計算平臺[D]. 廣州:華南理工大學, 2013.


此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 激情综合色五月六月婷婷| 亚洲xxxx18| 日本tvvivodes人妖| 亚洲日韩欧美一区二区三区 | 亚洲武侠欧美自拍校园| 女生张开腿给男生捅| 久久午夜无码鲁丝片| 欧美牲交VIDEOSSEXESO欧美| 又硬又粗又长又爽免费看| 黑冰女王踩踏视频免费专区| 在线观看亚洲精品专区| 中文字幕人妻无码一夲道| 果冻传媒麻豆电影| 亚洲视频在线观看免费| 美国式禁忌矿桥| 国产国产在线播放你懂的| 1024在线播放| 够够了太深了h1v3| 中文字幕在线高清| 日韩日韩日韩日韩日韩| 亚洲成a人无码| 狠狠色噜噜狠狠狠狠97| 四虎影视www| 韩国精品欧美一区二区三区| 国产精品国产亚洲精品看不卡| jizz中国jizz欧洲/日韩在线| 无码中文人妻在线一区二区三区| 亚州三级久久电影| 欧美日韩精品一区二区三区高清视频 | 全彩acg本子| 蜜臀精品国产高清在线观看| 国产精品一区二区无线| 97久久精品人人澡人人爽| 好男人好影视在线播放| 中文字幕国产视频| 日本成人福利视频| 久草免费手机视频| 欧美不卡视频在线观看| 亚洲激情中文字幕| 狠色狠色狠狠色综合久久| 午夜在线视频一区二区三区|