ganglia的核心包含gmond、gmetad以及乙個web前端。主要是用來監控系統效能,如:cpu 、mem、硬碟利用率, i/o負載、網路流量情況等,通過曲線很容易見到每個節點的工作狀態,對合理調整、分配系統資源,提高系統整體效能起到重要作用。
ganglia是一種分布式監控系統。ganglia的設計便是基於大型集群進行設計的。主要體現在資料的獲取方式以及分層設計。主要有以下三個優點:
部署的方便性:ganglia類似與nagios的部署方式會更簡單,更方便。有利於後期的大規模擴張;
資料獲取方式:ganglia本身就是為集群監控進行設計的,這體現在其資料的獲取方式(客戶端主動推送)以及分層設計(node cluster grid);
通訊方式以及冗餘:ganglia通過組播進行資料互動,配置得當,可以實現冗餘避免單點故障。另外,同樣由於組播,資料可以在客戶機本地進行存放的(安裝rrdtool)。
ganglia體系結構
ganglia底層使用rrdtool獲得資料,ganglia主要分為兩個程序元件:
gmond(ganglia monitor deamon):組播包的傳送和接受。傳送本地資訊,接受其他節點資訊
gmetad(ganglia metadata deamon):從監聽節點輪詢出資料,並對資料進行聚合、儲存
除這兩個daemon程序外,ganglia還依賴其他三個元件提供視覺化和資料持久化的服務:
ganglia網頁:提供ganglia的訪問頁面
rrdtool: 資料儲存以及提供畫圖功能
apache與php:**功能,對ganglia提供的網頁進行解析
其中,gmond執行在集群每個節點上,收集rrdtool產生的資料;gmetad執行在監控伺服器上,收集每個gmond的資料。ganglia還提供了乙個php實現的web front end,一般使用apache2作為其執行環境,通過web front可以看到直觀的各種集群資料圖表。
ganglia的層次化結構做的非常好,由小到大可以分為node -> cluster -> grid,這三個層次:
乙個node就是乙個需要監控的節點,一般是個主機,用ip表示。每個node上執行乙個gmond程序用來採集資料,並提交給gmetad;
乙個cluster由多個node組成,就是乙個集群,我們可以給集群定義名字。乙個集群可以選乙個node執行gmetad程序,彙總/拉取gmond提交的資料,並部署web front,將gmetad採集的資料用圖表展示出來;
乙個grid由多個cluster組成,是乙個更高層面的概念,我們可以給grid定義名字。grid中可以定義乙個頂級的gmetad程序,彙總/拉取多個gmond、子gmetad提交的資料,部署web front,將頂級gmetad採集的資料用圖表展示出來。
顯然,這種方式非常靈活,可以實現多種結構的資料監控。
集群環境
gmond:3臺(192.168.1.101、192.168.1.102、192.168.1.103)
gmetad + ganglia web:1臺(192.168.1.103)
作業系統:centos6.5(阿里雲)
首先安裝客戶端,客戶端起到收集傳送資料。centos上安裝命令 yum install
ganglia-gmond
客戶端安裝後重啟服務 service gmond restart;
服務端重啟服務 service gmetad restart service httpd restart
分布式監控ganglia
1,簡介 ganglia是一款為hpc 高效能計算 集群而設計的可擴充套件性的分布式監控系統 監視和顯示集群中節點的個各種狀態資訊 由執行在各個節點上的gmond守護程序採集cpu 記憶體 硬碟利用率 i o負載 網路流量情況,然後彙總到gmetad守護程序 使用rrdtool儲存資料 將歷史資料以...
lnmp監控 ganglia分布式監控
這裡我們要先把乙個原始碼包製作成rpm包,方便以後的批量部署 所以需要rpmbuild yum install rpm build 4.8.0 27.el6.x86 64 y 將ganglia製作成rpm包 rpmbuild tb ganglia 3.4.0.tar.gz 在製作過程中可能需要的包 ...
分布式監控部署之Ganglia
ganglia分布式監控部署 1 ganglia介紹 2 ganglia安裝和配置 3 修改相應的配置檔案 4 結果展示 5 許可權問題解決方法 一 介紹 ganglia是由uc berkeley發起的乙個開源監控專案,設計用於監控數以千幾的節點。每台伺服器都執行乙個收集和傳送監控資料名為gmond...