安裝ganglia是一套系統監控軟體,可以用web的方式來呈現各端點的狀況,還有執行程式時的負載狀態,不過因為硬體的使用量比較大,所以後來用了一小段時間就放棄在樹莓上使用了,改成用桌機加上VM的方式去監控系統
- 在監控的server端先安裝gmetad及ganglia web端app
apt-get install gmetad ganglia-webfrondend
- Apache2的服務,兩次都要按yes
- 複製Ganglia conf檔案到Apache的資料夾內
/usr/bin/install –c –m 644 /etc/ganglia-webfrontend/apache.conf /etc/apache2/site-available/ganglia.conf
cd /etc/apache2/site-enabled
ln –s ../site-available/ganglia.conf .
service apache2 reload
- 編輯gmetad.conf檔案
sudo nano /etc/ganglia/gmetad.conf
- 修改以下這行:
data_source “hadoop” 60 192.168.1.111
- 在所有的node上安裝gmond服務
sudo apt-get install ganglis-monitor
- 編輯各node的gmond.conf
sudo nano /etc/ganglia/gmond.conf
- 找到以下內文:
cluster {
name = "hadoop"
owner = "Mirage"
latlong = "unspecified"
url = "unspecified"
}
udp_send_channel {
# mcast_join = 239.2.11.71
host = 192.168.1.111
port = 8649
ttl = 1
}
udp_recv_channel {
# mcast_join = 239.2.11.71
port = 8649
# bind = 239.2.11.71
}
- 編輯各node的metrics2檔
sudo nano /usr/local/hadoop/etc/hadoop/hadoop-metrics2.properties
移除以下幾行的註解:
*.sink.file.class=org.apache.hadoop.metrics2.sink.FileSink
*.sink.ganglia.class=org.apache.hadoop.metrics2.sink.ganglia.GangliaSink31
*.sink.ganglia.period=10
*.sink.ganglia.supportsparse=true
*.sink.ganglia.slope=jvm.metrics.gcCount=zero,jvm.metrics.memHeapUsedM=both
*.sink.ganglia.dmax=jvm.metrics.threadsBlocked=70,jvm.metrics.memHeapUsedM=40
namenode.sink.ganglia.servers=192.168.1.111:8649
datanode.sink.ganglia.servers=192.168.1.111:8649
resourcemanager.sink.ganglia.servers=192.168.1.111:8649
nodemanager.sink.ganglia.servers=192.168.1.111:8649
mrappmaster.sink.ganglia.servers=192.168.1.111:8649
jobhistoryserver.sink.ganglia.servers=192.168.1.111:8649
- 重新啟動ganglia服務
On node: sudo service ganglia-monitor restart
On server: sudo service gmetad restart
- 連結伺服器網站
連結192.168.1.117/ganglia就可以進入服務了
- 因為每分鐘都會蒐集各節點的系統資料,所以相對的也會儲存很多資料到Server上,如果硬體空間有限的話可能很快就會被資料塞滿了
留言列表