• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Ganglia和Nagios的云計算平臺智能監(jiān)控系統(tǒng)

      2016-12-14 22:29:55張小銀陳國勝
      關鍵詞:監(jiān)控系統(tǒng)性能指標云計算

      張小銀+陳國勝

      摘要:隨著現(xiàn)代數(shù)據(jù)中心云計算規(guī)模日益增長,云計算平臺的智能運維管理面臨較大挑戰(zhàn),尤其在實時監(jiān)控領域方面。本文首先對云計算監(jiān)控技術進行了深入分析和研究,然后在開源云計算平臺Hadoop環(huán)境下,將Ganglia和Nagois兩種開源監(jiān)控軟件進行整合,并利用移動飛信來實現(xiàn)對云計算平臺的實時監(jiān)控。實驗結果表明,該系統(tǒng)可對云計算平臺內(nèi)主機和服務以及運行環(huán)境的各項性能指標進行全方位監(jiān)控,實現(xiàn)對故障的實時預警和報警,使得管理人員能準確定位、實時處理云平臺異常情況,從而提高了云平臺的服務質(zhì)量,有較好的應用價值。

      關鍵詞:云計算;Hadoop;性能指標;監(jiān)控系統(tǒng)

      中圖分類號:TP3 文獻標志碼:A文章編號:1672-1098(2015)02-0000-00

      Abstract:With the growing scale of cloud computing in modern data centers, the intelligent operation and maintenance management faces a great challenge, especially in real-time monitoring. After a thorough analysis and research of cloud computing monitoring technologies, this paper integrates two open-source monitoring software Ganglia and Nagois in a Hadoop open-source cloud computing platform, and use a mobile message software FeiXin to achieve real-time monitoring of the cloud computing platform. Experimental results shows that the proposed system realizes an all-round monitoring of performance indicators for hosts and service of operating environment in cloud computing platform and a real-time warning of faults, which help management personnel accurately locate and real-timely process abnormal situations. Therefore the system improves the quality of service of cloud computing platform and has a good practical value.

      Key words:Cloud computing; Hadoop; Performance indicators; Monitoring system

      隨著云計算技術的不斷成熟發(fā)展,云計算平臺的規(guī)模以及資源也不斷增加。現(xiàn)代數(shù)據(jù)中心的運維管理面臨著重大挑戰(zhàn),傳統(tǒng)的管理方法和管理模式已經(jīng)無法滿足要求。

      為提高云計算平臺的可靠性,保證服務質(zhì)量,有必要在云計算平臺中引入監(jiān)控機制[1-3] [10],以便能準確定位性能異?;蚬收系墓?jié)點,及時做出恢復和調(diào)整;掌握整個系統(tǒng)的運行狀況,分析系統(tǒng)瓶頸,為整個系統(tǒng)負載均衡提供數(shù)據(jù)支持,在系統(tǒng)出現(xiàn)異常時能起到預警的作用。

      Ganglia是加州大學伯克利分校發(fā)起的一個開源監(jiān)控項目,主要用來監(jiān)控大規(guī)模分布式系統(tǒng)的性能[1] [2] [4] [10]。Nagios也是功能強大的開源監(jiān)控系統(tǒng),能監(jiān)控所指定(本地和遠程)的主機以及服務,可利用故障狀態(tài)實現(xiàn)故障報警[1] [2] [3] [5] [10]。Ganglia側重于數(shù)據(jù)采集,沒有內(nèi)置網(wǎng)絡服務的監(jiān)控和故障狀態(tài)級別,Nagios更側重于告警功能,配置文件較多,配置步驟繁瑣[1-2]。因此,本文采用兩款軟件結合,協(xié)同工作。

      經(jīng)過幾年的迅速發(fā)展,Hadoop已經(jīng)成為開源云計算平臺的佼佼者,目前具有廣泛的用戶群體[2] [6]。因此,研究利用Ganglia和Nagios整合來監(jiān)控Hadoop系統(tǒng)具有廣闊的應用前景。

      1相關技術原理

      11Hadoop技術

      云計算是并行計算、分布式計算和網(wǎng)格計算的發(fā)展。具有超大規(guī)模、虛擬化、按需服務、高可靠性和高擴展性等特點。

      Hadoop是一個開源的分布式計算平臺,由Apache軟件基金會支持發(fā)布。整個Hadoop的體系結構主要是通過HDFS來實現(xiàn)對分布式存儲的底層支持,通過MapReduce來實現(xiàn)對分布式并行任務處理的程序支持的。

      Hadoop分布式文件系統(tǒng)(HDFS)采用了主/從(Master/Slave)結構模型,一個HDFS集群由一個名稱節(jié)點(Namenode)和若干個數(shù)據(jù)節(jié)點(Datanode)組成。Namenode作為主控服務器,負責管理文件系統(tǒng)的元數(shù)據(jù),Datanode存儲實際的數(shù)據(jù)。Namenode執(zhí)行文件系統(tǒng)的命名空間操作,如打開、關閉、重命名文件或目錄,Datanode負責處理客戶的讀寫請求,執(zhí)行數(shù)據(jù)塊的創(chuàng)建、刪除和復制工作。Namenode使用事務日志來記錄HDFS元數(shù)據(jù)的變化,使用映射文件存儲文件系統(tǒng)的命名空間。采用冗余備份、副本存放、心跳檢測、安全模式等策略使HDFS可靠性得到保證[2] [6]。

      MapReduce是一種并行編程框架,它將分布式運算任務分解成多份細粒度的子任務,發(fā)到由上千臺機器組成的集群上,這些子任務在各處理節(jié)點之上并行處理,最終通過某些特定的規(guī)則進行合并生成最終的結果。MapReduce任務是由一個JobTracker和多個TaskTracker節(jié)點控制完成,JobTracker單獨運行在主節(jié)點上,負責調(diào)度管理TaskTracker,調(diào)度一個作業(yè)分解的所有子任務。主節(jié)點監(jiān)控子任務的執(zhí)行情況,從節(jié)點僅負責完成由主節(jié)點指派的子任務。MapReduce將分布式運算抽象成Map和Reduce兩個步驟,最終完成Hadoop的并行處理任務[2] [6]。

      12云計算監(jiān)控技術

      1) Ganglia監(jiān)控技術

      Ganglia在結構上由gmond 、gmetad和gweb三個守護進程組成,三者相互協(xié)調(diào)[1] [2] [4] [10]。具體如圖1所示。

      gmond是數(shù)據(jù)采集器,運行在所有被監(jiān)控主機上的一個守護進程。用于收集被監(jiān)控主機上的基本指標,或者收集用戶自定義的指標,在同一個組播或單播通道上的傳遞。gmond 所產(chǎn)生的系統(tǒng)負載非常小,這使得在各被監(jiān)控主機上運行gmond時,不會影響到各主機的性能。Ganglia的收集數(shù)據(jù)可以分為單播和組播兩種工作模式。

      gmetad是數(shù)據(jù)混合收集器,運行在監(jiān)控主機上的一個守護進程,gmetad通過輪詢收集各主機上gmond 的數(shù)據(jù), 并聚合集群的各類信息,然后保存在本地RRD存儲引擎中。

      gweb是Web可視化工具,采用PHP腳本語言實現(xiàn),運行在Ganglia的監(jiān)控主機上??梢酝ㄟ^瀏覽器從RRDTool數(shù)據(jù)庫中抓取信息,將數(shù)據(jù)可視化,動態(tài)的生成各類圖表。

      Ganglia集群是主機和度量數(shù)據(jù)的邏輯分組,一般每個集群運行一個gmetad,可以構成層次結構,正因為有這種層次結構模式,才使得Ganglia可以實現(xiàn)良好的擴展。

      2) Nagios監(jiān)控技術

      Nagios監(jiān)控系統(tǒng)分為核心和插件兩大部分。Nagios的核心部分只提供了很少的監(jiān)控功能,其它大部分監(jiān)控功能需要安裝相應的Nagios插件完成 [1-3] [5]。

      Nagios可實現(xiàn)如下功能:監(jiān)視本地或者遠程主機資源;監(jiān)視網(wǎng)絡服務資源;允許自定義插件來監(jiān)控特定的服務;出現(xiàn)異常時,可以通過郵件、短信等方式通知管理人員;可以事先定義事件處理程序,當主機或者服務出現(xiàn)故障時自動調(diào)用指定的處理程序;可以通過Web界面來監(jiān)控各個主機或服務的運行狀態(tài)。

      Nagios必須運行在Linux/Unix服務器上,這臺服務器稱為監(jiān)控中心,每一臺需要監(jiān)視的主機或者服務都運行一個與監(jiān)控中心服務器進行通信的Nagios軟件后臺程序。監(jiān)控中心服務器根據(jù)讀取配置文件中的指令與遠程的守護程序進行通信,并且指示遠程的守護程序進行必要的檢查。

      遠程被監(jiān)控的機器可以是任何能夠與其進行通信的主機。根據(jù)遠程主機返回的應答,Nagios將根據(jù)配置以合適的行動進行回應,通過一種或者多種方式報警。

      NRPE是Nagios的一個功能擴展,它可在遠程Linux/Unix主機上執(zhí)行插件程序,通過在遠程主機上安裝NRPE構件以及Nagios插件程序,向監(jiān)控中心提供該主機的一些本地的情況。

      2云計算平臺智能監(jiān)控體系

      本文在開源云計算平臺Hadoop環(huán)境下,將Ganglia和Nagois兩種開源監(jiān)控軟件進行整合,配合移動飛信來實現(xiàn)對云計算平臺的實時監(jiān)控。形成了如圖2所示的一整套云計算平臺的智能監(jiān)控體系。

      該模塊通過整合Ganglia和Hadoop平臺來采集監(jiān)控主機的基本指標或者用戶自定義的指標。然后進行數(shù)據(jù)處理,包括信息聚合,分類,可視化,生成報表等。具體過程如下:

      Ganglia的監(jiān)控進程(gmond)發(fā)送的指標格式是有明確定義的。用戶可配置Hadoop指標子系統(tǒng),按照Ganglia的要求,直接向Ganglia發(fā)送指標數(shù)據(jù)。用戶可以根據(jù)需要,用Ganglia對Hadoop的一個或全部上下文進行監(jiān)控,需要監(jiān)控的Hadoop上下文包括Java虛擬機(JVM)上下文,遠程調(diào)用(RPC)上下文,分布式文件系統(tǒng)(DFS)上下文,Mapreduce(mapred)上下文等配置項。每個上下文對應一個Hadoop指標子系統(tǒng),每個子系統(tǒng)包括多項Hadoop指標。

      Hadoop的配置見文件hadoop-metrics2.properties,配置項的前綴是上下文名稱,每個上下文配置項都有如下三個屬性。

      在本系統(tǒng)中,由于只有少數(shù)主機需要處理,為簡化啟用和配置,Ganglia只使用單個集群。

      在組播模式下,當節(jié)點規(guī)模過大,組播會對系統(tǒng)性能會產(chǎn)生一定的影響。在本系統(tǒng)中,盡管只有三個節(jié)點,仍采用單播傳輸模式。

      22監(jiān)控模塊

      該模塊通過整合Nagios與Ganglia來完成相關資源的監(jiān)控,包括主機資源,網(wǎng)絡資源等。

      在后臺,Nagios實際上只是單一進行調(diào)度和通告的引擎。Nagios本身并不能監(jiān)控任何內(nèi)容,只能調(diào)度插件程序的執(zhí)行,并處理輸出結果。

      本系統(tǒng)采用Nagios來監(jiān)控Ganglia指標。Ganglia項目在gweb模塊中包含了一系列官方Nagios插件。這些插件使得Nagios用戶可以創(chuàng)建一些服務,將存儲在Ganglia中的指標和Nagios中定義的告警閾值進行比較。

      在實際應用中,使用Ganglia插件來監(jiān)控系統(tǒng),如:Ganglia內(nèi)部使用心跳計數(shù)器來確定某臺主機是否在運轉;將給定主機的單個指標與預定義的Nagios的門限值進行比較來檢查特定主機的某種指標;檢查特定主機上多種指標;檢查使用正則表達式所定義范圍內(nèi)主機的多種指標;驗證一套主機上的一個和多個指標值是否相同。

      在圖3中,這些插件和一系列專門為此創(chuàng)建的gweb PHP腳本進行交互。毎個PHP腳本從插件接收參數(shù),解析從gmetad獲取的有關狀態(tài)緩存,提取被監(jiān)控實體當前的指標值,并返回。Nagios插件和PHP腳本成對出現(xiàn)。

      實際應用中,在hosts.cfg中定義hostgroup,格式如下:

      其中,check-heartbeat.sh是Nagios插件。

      此外,可以使用Nagios監(jiān)控Ganglia主機的運行情況,如使用check-nrpe守護進程,監(jiān)控Ganglia的所有故障,如監(jiān)控匯聚主機上的gmetad和rrdcached以及所有主機上的gmond,監(jiān)控TCP端口(如gmetad和gmond的監(jiān)聽端口)的連通性等。

      23報警模塊

      為了減輕工作負擔,使管理人員能實時獲取云計算平臺運行異?;蚬收闲畔?,本文使用整合了Nagios與移動飛信的報警模塊將報警信息直接送到管理人員手中。

      Nagios利用插件使用Ganglia采集的信息,在運行指標超過閾值的情況下通知管理人員,通知方式采用移動飛信。

      Nagios下飛信的配置主要包括:

      飛信命令定義

      配置commands.cfg文件,定義一個服務故障時發(fā)送報警短信的指令,如下

      3云計算平臺智能監(jiān)控系統(tǒng)的實現(xiàn)

      31系統(tǒng)總體架構及實現(xiàn)環(huán)境

      本系統(tǒng)使用三臺VMware虛擬機,根據(jù)需要組建Hadoop集群,Hadoop集群各主機參數(shù)列表如表1所示。

      表1Hadoop集群各主機參數(shù)列表

      主機名IP地址CPU(個)內(nèi)存(G)硬盤(G) host110100981281010200 host6101009812488100 host7101009812688100

      在三臺主機中安裝CentOS 65系統(tǒng),開發(fā)環(huán)境安裝JDK17,安裝Hadoop 112[7],配置host1作為NameNode、SecondaryNameNode, 三臺主機均配置為DataNode, 在host1上運行JobTracker,在三臺主機上均運行TaskTracker。

      在host1上安裝Ganglia-gmetad 317,Ganglia-gweb 342[8],Web服務器Apache22,腳本語言php-533,在三臺主機均安裝Ganglia-gmond 317。

      在host6主機上安裝Nagios Core 344[9], nagios-plugins-15, nrpe-214,Web服務器Apache22,腳本語言php-533,安裝移動飛信fetion。系統(tǒng)總體架構如圖4所示。

      Ganglia和Nagios均具有豐富的Web展示功能。實現(xiàn)環(huán)境中,Ganglia能監(jiān)控hadoop集群及各主機性能指標眾多,大約有幾百個,下面只展示其中的幾個,圖5至

      圖5host6節(jié)點一月內(nèi)平均負荷圖6host1節(jié)點一天內(nèi)jobtracker.heartbeats指標圖7host1節(jié)點一天內(nèi)namenode.blockReport_num_ops指標

      Nagios監(jiān)控效果只選取一張圖,Nagios所有主機服務狀態(tài)詳述(局部)如圖8所示,上面十五項是hadoop集群中host1、host6、host7三臺主機上五個服務項的狀態(tài)信息,這五個服務項分別是:GMOND、check-ganglia-heartbeat、check-ganglia-metric disk-free、check-ganglia-metric load-one、check-value-same-everywhere,下面八項是Nagois主機上服務的狀態(tài)信息,本系統(tǒng)中Nagois主機即為host6。從這些效果圖可以看出,Ganglia和Nagios協(xié)調(diào)工作,實現(xiàn)了對Hadoop系統(tǒng)性能的監(jiān)控。圖8Nagios所有主機服務狀態(tài)詳述(局部)本系統(tǒng)一般只需設定Nagios插件返回Critical和Unknown二種狀態(tài)發(fā)出報警,且一小時間隔循環(huán)發(fā)送即可。在系統(tǒng)主機和服務出現(xiàn)異常情況時,管理員接收飛信的手機會收到報警短信,格式如下:發(fā)信人為“12520139xxxxxxx”,短信內(nèi)容為“XXX:1010098126host7/GMOND is CRITICAL”,最后是接收短信日期時間,“XXX”為接收飛信手機機主的姓名。此時,管理員可在本地或遠程實時維護host7主機上的GMOND服務。

      在實際應用中,可以根據(jù)具體需求調(diào)整要監(jiān)控的服務項。利用Hadoop、Ganglia和Nagios良好的可擴展性,動態(tài)增加節(jié)點,以便加入更多的Hadoop應用。通過改變Hadoop集群的負載,或通過調(diào)整VMware虛擬主機的部分參數(shù),使系統(tǒng)負載達到均衡。由于系統(tǒng)中使用的端口眾多,因此應特別注意iptables防火墻的設置。

      4結 語

      在開源云計算平臺Hadoop環(huán)境下,利用Hadoop系統(tǒng)提供的監(jiān)控接口,將Ganglia和Nagios整合,通過Web可視化工具,強大的圖表展示功能,直觀地了解每個節(jié)點以及整個Hadoop系統(tǒng)的工作狀態(tài),并利用移動飛信進行故障報警,對調(diào)整Hadoop系統(tǒng)的運行參數(shù)、提高系統(tǒng)整體資源效率起到重要作用。

      參考文獻:

      [1]袁凱.云計算環(huán)境下的監(jiān)控系統(tǒng)設計與實現(xiàn)[D].武漢:華中科技大學,2012.

      [2]張仲妹.云計算環(huán)境下的資源監(jiān)控應用研究[D].北京:北方工業(yè)大學,2013.

      [3]沈青,董波,肖德寶.基于服務器集群的云監(jiān)控系統(tǒng)設計與實現(xiàn)[J].計算機工程與科學,2012,34(10):73-77.

      [4]Matt M.,Bernard L.,Brad N..陳學鑫,張誠誠譯.Ganglia系統(tǒng)監(jiān)控[M].北京:機械工業(yè)出版社,2013:12-15,133-135.

      [5]陶利軍.掌控:構建Linux系統(tǒng)Nagios監(jiān)控服務器[M].北京:清華大學出版社,2013.

      [6]劉鵬,黃宜華,陳衛(wèi)衛(wèi).實戰(zhàn)Hadoop:開啟通向云計算的捷徑[M].北京:電子工業(yè)出版社,2011:37-38,60,62.

      [7]Apache Software Foundation. Hadoop官方網(wǎng)站[EB/OL]. .

      [8]http://ganglia.info/. Ganglia發(fā)布網(wǎng)站[EB/OL]. .

      [9]http://www.nagios.org/. Nagios官方網(wǎng)站[EB/OL]. .

      [10]李超,梁阿磊,管海兵.海量存儲系統(tǒng)的性能管理與監(jiān)測方法研究[J].計算機應用與軟件,2012,29(7):78-80.

      猜你喜歡
      監(jiān)控系統(tǒng)性能指標云計算
      瀝青膠結料基本高溫性能指標相關性研究
      石油瀝青(2021年1期)2021-04-13 01:31:08
      無線廣播電視安全優(yōu)質(zhì)播出的技術分析
      中央電視臺高端島3后期制作網(wǎng)絡監(jiān)控系統(tǒng)的實現(xiàn)
      演藝科技(2016年4期)2016-11-16 08:18:32
      縣級區(qū)域雨量站觀測設備監(jiān)控系統(tǒng)的研究與設計
      科技視界(2016年18期)2016-11-03 23:18:30
      基于云計算的移動學習平臺的設計
      實驗云:理論教學與實驗教學深度融合的助推器
      大學教育(2016年9期)2016-10-09 08:54:03
      云計算中的存儲虛擬化技術應用
      科技視界(2016年20期)2016-09-29 13:34:06
      基于Zigbee技術的煤礦井下通風機監(jiān)控系統(tǒng)設計
      科技視界(2016年20期)2016-09-29 11:41:51
      儲熱水箱分層性能指標的研究進展
      制冷技術(2016年4期)2016-08-21 12:40:30
      WebGIS關鍵性能指標測試技術研究
      买车| 巨鹿县| 伊宁市| 阿克苏市| 石台县| 冕宁县| 花莲县| 会理县| 彰化市| 且末县| 孝义市| 高碑店市| 文安县| 峨眉山市| 阿巴嘎旗| 繁峙县| 维西| 泾川县| 江达县| 信丰县| 伊春市| 班玛县| 通江县| 彭州市| 青阳县| 朝阳区| 白朗县| 郸城县| 信宜市| 太和县| 南岸区| 普洱| 大连市| 团风县| 电白县| 金华市| 临高县| 阿拉善左旗| 奉化市| 乐都县| 湟中县|