Ubuntu14.04安裝配置Ganglia

Ganglia簡介

Ganglia是UC Berkeley發(fā)起的一個開源集群監(jiān)視項(xiàng)目,設(shè)計(jì)用于測量數(shù)以千計(jì)的節(jié)點(diǎn)终畅。Ganglia的核心包含gmond籍胯、gmetad以及一個Web前端。主要是用來監(jiān)控系統(tǒng)性能离福,如:cpu 杖狼、mem、硬盤利用率术徊, I/O負(fù)載、網(wǎng)絡(luò)流量情況等鲸湃,通過曲線很容易見到每個節(jié)點(diǎn)的工作狀態(tài)赠涮,對合理調(diào)整、分配系統(tǒng)資源暗挑,提高系統(tǒng)整體性能起到重要作用笋除。

Ganlia結(jié)構(gòu)

Ganglia在結(jié)構(gòu)上由三種守護(hù)進(jìn)程組成gmond 、gmetad和gweb炸裆。在操作上垃它,每種守護(hù)進(jìn)程都是獨(dú)立的,運(yùn)行時只需要自己的配置文件來操作即可烹看,任意守護(hù)進(jìn)程在缺少其他兩種守護(hù)進(jìn)程的情況下也可以正常啟動和運(yùn)行国拇。然而,三者在結(jié)構(gòu)上又是相互協(xié)作的惯殊,需要同時使用才能發(fā)揮功效酱吝。

gmond

gmond和普通代理一樣,安裝在每一臺需要監(jiān)控的主機(jī)上土思,負(fù)責(zé)與操作系統(tǒng)交互以獲得需要關(guān)注的指標(biāo)數(shù)據(jù)务热,例如CPU負(fù)載和硬盤容量。

gmond在內(nèi)部采用模塊化設(shè)計(jì)己儒,采用基于C語言編寫的崎岂、根據(jù)操作系統(tǒng)定制的插件進(jìn)行監(jiān)控。和其他監(jiān)控系統(tǒng)采用的客戶端代理軟件不同闪湾,gmond不需要等待外部輪詢引擎的數(shù)據(jù)監(jiān)測請求冲甘,也不將監(jiān)控數(shù)據(jù)直接上傳至集中式輪詢器,而是根據(jù)自己本地配置文件定義的調(diào)度方案進(jìn)行輪詢途样。監(jiān)測數(shù)據(jù)時使用簡單的監(jiān)聽/通告協(xié)議损合,通過 XDR (External Data Representation)在集群內(nèi)的主機(jī)之間共享。因此娘纷,Ganglia集群內(nèi)的每個節(jié)點(diǎn)都知道同一集群內(nèi)所有主機(jī)的當(dāng)前指標(biāo)數(shù)據(jù)嫁审。遠(yuǎn)程輪詢器可以通過端口8649向集群內(nèi)任意節(jié)點(diǎn)請求獲得該集群XML格式的所有數(shù)據(jù)。

gmond并不是消極等待被監(jiān)控系統(tǒng)服務(wù)器喚醒赖晶,而總是處于激活態(tài)律适,以便進(jìn)行測量辐烂、傳輸和共享。輪詢器不再需要知道從哪些主機(jī)獲取哪些服務(wù)捂贿,而只需要一個包含每個集群內(nèi)至少一臺主機(jī)名稱的列表即可纠修。

gmetad

gmetad的作用是整合所有信息。

gmeted是一個簡單的輪詢器厂僧,對網(wǎng)絡(luò)中每個集群進(jìn)行輪詢扣草,并將每臺主機(jī)上返回的所有指標(biāo)數(shù)據(jù)寫入各個集群對應(yīng)的輪詢數(shù)據(jù)庫RRD。
作為數(shù)據(jù)存儲的一種流行的解決方案颜屠,RRDtool是很好的選擇辰妙。指標(biāo)數(shù)據(jù)存儲于輪詢數(shù)據(jù)庫(Round Robin Database),這種數(shù)據(jù)庫包含了多個時間塊內(nèi)靜態(tài)分配的數(shù)值甫窟。如果每10秒進(jìn)行一次輪詢密浑,每次數(shù)據(jù)都進(jìn)行存儲,一天將需要8640次存儲粗井《疲考慮到數(shù)據(jù)保留需求, RRDtool內(nèi)部以“循環(huán)覆蓋”的方式管理數(shù)據(jù)浇衬,將新數(shù)據(jù)的值疊加到原來的數(shù)值上來覆蓋原有數(shù)據(jù)懒构。

gweb

Ganglia可視化工具——gweb無需用戶進(jìn)行任何自定義設(shè)置即可便捷、及時地訪問網(wǎng)絡(luò)中任意一臺主機(jī)的任意一種指標(biāo)數(shù)據(jù)耘擂。

主節(jié)點(diǎn)安裝配置

ganglia是一個集群監(jiān)控項(xiàng)目痴脾,要分主節(jié)點(diǎn)和從節(jié)點(diǎn)。首先梳星,我們來完成主節(jié)點(diǎn)的安裝配置赞赖。

1、更新軟件源中的軟件列表
sudo apt-get update

2冤灾、安裝gmond前域、gmetad和gweb
sudo apt-get install ganglia-monitor rrdtool gmetad ganglia-webfrontend

3、配置gmond
sudo vi /etc/ganglia/gmond.conf
分別找到:

cluster {
  name = "unspecified"
  owner = "unspecified"
  latlong = "unspecified"
  url = "unspecified"
}

udp_send_channel {
  mcast_join = 239.2.11.71
  port = 8649
  ttl = 1
}

udp_recv_channel {
  mcast_join = 239.2.11.71
  port = 8649
  bind = 239.2.11.71
}

修改為:

cluster {
  name = "my cluster" 
  owner = "unspecified"
  latlong = "unspecified"
  url = "unspecified"
}

udp_send_channel {
  # mcast_join = 239.2.11.71
  host = 192.168.56.103
  port = 8649
  ttl = 1
}

udp_recv_channel {
  # mcast_join = 239.2.11.71
  port = 8649
  # bind = 239.2.11.71
}

4韵吨、配置gmetad
sudo vi /etc/ganglia/gmetad.conf

查找cluster匿垄,注釋掉該行,修改為:

# data_source "my cluster" localhost
data_source "my cluster" 10 192.168.56.103:8649

data_source后面有三個參數(shù)归粉,第一個參數(shù)"my cluster"是集群名稱椿疗;第二個參數(shù)10是輪詢時間(單位:秒);第三個參數(shù)192.168.56.103:8649是要監(jiān)聽的機(jī)器的IP和端口(可寫多個糠悼,用空格隔開)届榄。

5、配置gweb
sudo cp /etc/ganglia-webfrontend/apache.conf /etc/apache2/sites-enabled/ganglia.conf

6倔喂、重啟服務(wù)

sudo /etc/init.d/ganglia-monitor restart
sudo /etc/init.d/gmetad restart
sudo /etc/init.d/apache2 restart

7铝条、測試訪問
ubuntu測試:curl http://192.168.56.103/ganglia/
瀏覽器訪問測試:http://192.168.56.103/ganglia/

從節(jié)點(diǎn)安裝配置

以上靖苇,已經(jīng)完成了ganglia主節(jié)點(diǎn)的安裝配置,但是往往我們要監(jiān)控的是一個集群班缰。接下里贤壁,我們就來研究一下從節(jié)點(diǎn)的配置。

Ganglia結(jié)構(gòu)一節(jié)中埠忘,我們了解到脾拆,gmond要安裝在每一個節(jié)點(diǎn),負(fù)責(zé)監(jiān)控主機(jī)情況莹妒;gmetad(包括rrdtool)只要安裝在主節(jié)點(diǎn)就可以名船,負(fù)責(zé)收集各個節(jié)點(diǎn)的數(shù)據(jù);gweb只要安裝在主節(jié)點(diǎn)包帚,負(fù)責(zé)顯示gmetad收集的數(shù)據(jù)运吓。

綜上拘哨,從節(jié)點(diǎn)只要安裝gmond就可以了倦青。

從節(jié)點(diǎn)

假設(shè)我們有一個從節(jié)點(diǎn)产镐,IP為192.168.56.104癣亚,那么它的安裝配置步驟如下:

1述雾、更新軟件源中的軟件列表
sudo apt-get update

2玻孟、安裝gmond
sudo apt-get install ganglia-monitor

3、配置gmond
sudo vi /etc/ganglia/gmond.conf
分別找到:

cluster {
  name = "unspecified"
  owner = "unspecified"
  latlong = "unspecified"
  url = "unspecified"
}

udp_send_channel {
  mcast_join = 239.2.11.71
  port = 8649
  ttl = 1
}

udp_recv_channel {
  mcast_join = 239.2.11.71
  port = 8649
  bind = 239.2.11.71
}

修改為:

cluster {
  name = "my cluster" 
  owner = "unspecified"
  latlong = "unspecified"
  url = "unspecified"
}

udp_send_channel {
  # mcast_join = 239.2.11.71
  host = 192.168.56.103
  port = 8649
  ttl = 1
}

udp_recv_channel {
  # mcast_join = 239.2.11.71
  port = 8649
  # bind = 239.2.11.71
}

沒錯,從節(jié)點(diǎn)的gmond配置和主節(jié)點(diǎn)完全相同艳丛。

4、重啟服務(wù)
sudo /etc/init.d/ganglia-monitor restart

主節(jié)點(diǎn)

配置完從節(jié)點(diǎn)就好了嗎织阳?并沒有唧躲,主節(jié)點(diǎn)也要做相應(yīng)修改碱璃,主要是修改下gmetad配置嵌器。

1爽航、sudo vi /etc/ganglia/gmetad.conf

查找cluster,修改為:

# data_source "my cluster" localhost
data_source "my cluster" 10 192.168.56.103:8649 192.168.56.104:8649

這樣,就添加好了192.168.56.104這個從節(jié)點(diǎn)衷佃。

注意:gmetad會依次檢測指定主機(jī)氏义,并從第一臺響應(yīng)主機(jī)開始收集狀態(tài)數(shù)據(jù)邻邮,而每一臺主機(jī)上的gmond都知道所在集群的所有狀態(tài)數(shù)據(jù)吮螺,所以無需在data_source定義里指定集群內(nèi)的所有主機(jī)萝风。假若有節(jié)點(diǎn)失效规惰,通常指定兩三個主機(jī)也就足夠保證數(shù)據(jù)的收集揩晴。

2硫兰、重啟gmetad
sudo /etc/init.d/gmetad restart

3劫映、測試訪問
等待10秒泳赋,再次訪問 http://192.168.56.103/ganglia/ ,就能看到新加入的從節(jié)點(diǎn)祖今。

刪除數(shù)據(jù)

由于重設(shè)了管理機(jī)的系統(tǒng)時間,發(fā)現(xiàn)所有的機(jī)器狀態(tài)都變成了Hosts down大渤,這時我們需要刪除數(shù)據(jù)重新開始統(tǒng)計(jì)。

1耕捞、管理機(jī)刪除rrds目錄下所有文件
cd /var/lib/ganglia/rrds && sudo rm -rf ./*

2、管理機(jī)重啟gmond和gmetad
sudo /etc/init.d/ganglia-monitor restart
sudo /etc/init.d/gmetad restart

3、客戶機(jī)重啟gmond
sudo /etc/init.d/ganglia-monitor restart

刪除機(jī)器

ganglia默認(rèn)服務(wù)器down機(jī)也不會在web前端清除該設(shè)備磷斧,官方文檔介紹的辦法如下:

1、登錄管理機(jī)

2档桃、編輯gmond.conf憔晒,sudo vim /etc/ganglia/gmond.conf
在globals中找到host_dmax藻肄,它的默認(rèn)值為0蔑舞,意思是不清除節(jié)點(diǎn)。host_dmax的單位為秒嘹屯,我們把host_dmax的值修改為7天攻询,就是60x60x24x7=604800,即超過7天未匯報數(shù)據(jù)的節(jié)點(diǎn)會從前端清除州弟。

書簽

Ganglia_簡述

ubuntu14.04系統(tǒng)中安裝Ganglia

Ganglia 監(jiān)控實(shí)戰(zhàn)蜕窿!

gmetad.conf:gmetad配置文件(1)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市呆馁,隨后出現(xiàn)的幾起案子桐经,更是在濱河造成了極大的恐慌,老刑警劉巖浙滤,帶你破解...
    沈念sama閱讀 211,348評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件阴挣,死亡現(xiàn)場離奇詭異,居然都是意外死亡纺腊,警方通過查閱死者的電腦和手機(jī)畔咧,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來揖膜,“玉大人誓沸,你說我怎么就攤上這事∫妓冢” “怎么了拜隧?”我有些...
    開封第一講書人閱讀 156,936評論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀的道長趁仙。 經(jīng)常有香客問我洪添,道長,這世上最難降的妖魔是什么雀费? 我笑而不...
    開封第一講書人閱讀 56,427評論 1 283
  • 正文 為了忘掉前任干奢,我火速辦了婚禮,結(jié)果婚禮上盏袄,老公的妹妹穿的比我還像新娘忿峻。我一直安慰自己,他們只是感情好辕羽,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,467評論 6 385
  • 文/花漫 我一把揭開白布逛尚。 她就那樣靜靜地躺著,像睡著了一般逛漫。 火紅的嫁衣襯著肌膚如雪黑低。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,785評論 1 290
  • 那天,我揣著相機(jī)與錄音克握,去河邊找鬼蕾管。 笑死,一個胖子當(dāng)著我的面吹牛菩暗,可吹牛的內(nèi)容都是我干的掰曾。 我是一名探鬼主播,決...
    沈念sama閱讀 38,931評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼停团,長吁一口氣:“原來是場噩夢啊……” “哼旷坦!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起佑稠,我...
    開封第一講書人閱讀 37,696評論 0 266
  • 序言:老撾萬榮一對情侶失蹤秒梅,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后舌胶,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體捆蜀,經(jīng)...
    沈念sama閱讀 44,141評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,483評論 2 327
  • 正文 我和宋清朗相戀三年幔嫂,在試婚紗的時候發(fā)現(xiàn)自己被綠了辆它。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,625評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡履恩,死狀恐怖锰茉,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情切心,我是刑警寧澤飒筑,帶...
    沈念sama閱讀 34,291評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站昙衅,受9級特大地震影響扬霜,放射性物質(zhì)發(fā)生泄漏定鸟。R本人自食惡果不足惜而涉,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,892評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望联予。 院中可真熱鬧啼县,春花似錦、人聲如沸沸久。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽卷胯。三九已至子刮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背挺峡。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工葵孤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人橱赠。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓尤仍,卻偏偏與公主長得像,于是被迫代替她去往敵國和親狭姨。 傳聞我的和親對象是個殘疾皇子宰啦,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,492評論 2 348

推薦閱讀更多精彩內(nèi)容

  • feisky云計(jì)算、虛擬化與Linux技術(shù)筆記posts - 1014, comments - 298, trac...
    不排版閱讀 3,827評論 0 5
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理饼拍,服務(wù)發(fā)現(xiàn)赡模,斷路器,智...
    卡卡羅2017閱讀 134,629評論 18 139
  • 關(guān)于 Ganglia 軟件师抄,Ganglia是一個跨平臺可擴(kuò)展的纺裁,高性能計(jì)算系統(tǒng)下的分布式監(jiān)控系統(tǒng),如集群和網(wǎng)格司澎。它...
    ZyZhu閱讀 998評論 1 6
  • 前面的話 ganglia是一個用于監(jiān)控Linux系統(tǒng)集群環(huán)境的主機(jī)各項(xiàng)性能的開源軟件欺缘,使用廣泛。裝這個東西竟然花了...
    syncwt閱讀 2,200評論 3 6
  • 有點(diǎn)空挤安,根據(jù)之前內(nèi)部分享的wiki 做了脫敏谚殊,重新畫了下圖。 整體大概分為四層:應(yīng)用層蛤铜,業(yè)務(wù)模塊層嫩絮,基礎(chǔ)模塊層,底...
    進(jìn)擊的杰爺閱讀 436評論 0 0