Ganglia是UC Berkeley發起的一個開源集群監視項目,設計用於測量數以千計的節點。Ganglia的核心包含gmond、gmetad以及一個Web前端。主要是用來監控系統性能,如:cpu 、mem、硬碟利用率, I/O負載、網路流量情況等,通過曲線很容易見到每個節點的工作狀態,對合理調整、分配系統資源,提高系統整體性能起到重要作用。
基本介紹
- 外文名:Ganglia
- 授權協定:GPL
- 開發語言:C
- 運行平台:Linux/Unix
- 軟體分類:集群監控
基本信息,Ganglia工作原理,
基本信息
Ganglia是UC Berkeley發起的一個開源集群監視項目,設計用於測量數以千計的節點。Ganglia的核心包含gmond、gmetad以及一個Web前端。主要是用來監控系統性能,如:cpu 、mem、硬碟利用率, I/O負載、網路流量情況等,通過曲線很容易見到每個節點的工作狀態,對合理調整、分配系統資源,提高系統整體性能起到重要作用。
每台計算機都運行一個收集和傳送度量數據的名為 gmond 的守護進程。接收所有度量數據的主機可以顯示這些數據並且可以將這些數據的精簡表單傳遞到層次結構中。正因為有這種層次結構模式,才使得 Ganglia 可以實現良好的擴展。gmond 帶來的系統負載非常少,這使得它成為在集群中各台計算機上運行的一段代碼,而不會影響用戶性能。所有這些數據多次收集會影響節點性能。網路中的 “抖動”發生在大量小訊息同時出現時,可以通過將節點時鐘保持一致,來避免這個問題。
gmetad可以部署在集群內任一台節點或者通過網路連線到集群的獨立主機,它通過單播路由的方式與gmond通信,收集區域內節點的狀態信息,並以XML數據的形式,保存在資料庫中。
由RRDTool工具處理數據,並生成相應的的圖形顯示,以Web方式直觀的提供給客戶端。
Ganglia工作原理
Ganglia包括如下幾個程式,他們之間通過XDR(xml的壓縮格式)或者XML格式傳遞監控數據,達到監控效果。集群內的節點,通過運行gmond收集發布節點狀態信息,然後gmetad周期性的輪詢gmond收集到的信息,然後存入rrd資料庫,通過web伺服器可以對其進行查詢展示。