Gmetad及web节点:bihdp05(主节点)Gmond节点:bihdp05 bihdp06 bihdp07 bihdp08 |
rpm -q gcc glibc glibc-common rrdtool rrdtool-devel apr apr-devel expat expat-devel pcre pcre-devel dejavu-lgc-sans-mono-fonts dejavu-sans-mono-fonts |
该命令会列出这些依赖软件的安装信息,如果未安装,则需要安装,命令如下
yuminstall xxx
tar –xzvf confuse-2.7.tar.gz cd ./confuse-2.7 ./configure CFLAGS=-fPIC –disable-nls make make install |
安装rrdtool
tar –xzvf rrdtool-1.4.9.tar.gz cd ./ rrdtool-1.4.9 ./configure --prefix=/usr/local/rrdtool make make install |
安装cairo-devel和pango-devel包 pcre-devel
yum installcairo-devel pango-devel pcre-devel
tar –xzvf
|
当安装完成后,访问http://ip (我的ip为10.215.80.54,访问的就是http://10.215.80.54),测试是否正常工作,该命令访问的是/usr/local/apache2/htdocs/index.html,如果正常,则可正常访问到该页面,否则会出访问错误信息。
tar –xavf php-5.4.10.tar.gz cd php-5..4.10 ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=mysqlnd make make test make install |
安装完成后,要测试apache是否对php支持。
创建 /usr/local/apache2/htdocs/index.php
编辑并添加如下内如到文件
///////////////// index.php中添加的内容///////////
<?
Phpinfo()
?>
///////////////// 保存退出///////////
访问http://10.215.80.54/index/php,如果访问成功,则网页会显示有关php的信息,否则访问失败。
访问失败表示apache对php不支持,需要做如下修改:
1:find到libphp5.so,将其拷贝到 /usr/local/apache2/modules/ 目录下
2:打开 /usr/local/apache2/conf/httpd.conf文件,并添如下信息到其中
///////////////////httpd.conf文件添加内容///////////////////
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.ph(p[2-6]?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
LoadModule php5_module modules/libphp5.so
<ifModule dir_module>
DirectoryIndex index.html index.php
</ifModule>
///////////////////保存退出///////////////////
重启apache :/usr/local/apache2/bin/apachectl restart
重新访问并测试是否成功
注意:
软件全部安装完后,需要修改共享库配置信息
vim /etc/ld.so.conf
增加如下内容
/usr/local/lib
启动:ldconfig
tar –xzvf ganglia-3.6.0.tar.gz
cd ganglia-3.60
./configure --prefix=/usr/local/ganglia --with-gmetad(其余节点可省) --enable-gexec --with-python=/usr/local–with-librrd=/usr/bin
Make
make install
tar -zvxf ganglia-web-3.5.10.tar.gz
cp ganglia-web-3.5.10 /data/installFile/ganglia/ –rf
cd/gangliaInstall/ganglia/ganglia-web-3.5.10
cp conf_default.php conf.php
vim conf.php
///////////////////////////修改conf.php的信息/////////////
#$conf['gweb_confdir'] ="/var/lib/ganglia-web"; //注释掉
$conf['gweb_confdir'] = "/data/installFile/ganglia/"; (web文件夹少了)
#$conf['gmetad_root'] ="/var/lib/ganglia"; //注释掉
$conf['gmetad_root'] = "/data/installFile";
////////////////////////保存退出//////////////////////////////////
vimheader.php
//////////////////////修改header.php信息/////////////////
<?php
session_start();
ini_set('date.timezone', 'PRC'); //添加,-修改时区为本地时区
if (isset($_GET['date_only'])) {
$d = date("r");
echo $d;
exit(0);
}
//////////////////////////保存退出//////////////////
cd /home /gangliaInstall/ganglia/ ganglia-web-3.5.10/dwoo
mkdir cache
chmod 777 cache
mkdir compiled
chmod 777 compiled
编辑httpd.conf文件
Vim /usr/local/apache2/conf/httpd.conf
在文件中有<Directory XXX> </Directory>标签后添加如下内容
////////////////////////添加内容////////////////////////////
Alias /ganglia"/data/installFile/ganglia/"
<Directory"/data/installFile/ganglia/">
AuthType Basic
#Options None
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
////////////////////////保存退出////////////////////////////
重启apache
/usr/local/apache2/bin/apachectl restart
进入ganglia安装文件
cd ganglia-3.6.0
cp ./gmetad/gmetad.init /etc/init.d/gmetad
cp ./gmetad/gmetad.conf /usr/local/ganglia/etc
修改gmetad
vim /etc/init.d/gmetad
///////////////////////////////////////////////
GMETAD=/usr/local/ganglia/sbin/gmetad
//////////////////////////////////////////////////
修改gmetad.conf配置文件
vim /usr/local/ganglia/etc/gmetad.conf
///////////////////////////////////////////////
data_source "Spark" bihdp05:8649
gridname"MyGrid"
setuid_username"root"(和gmond中一致)
xml_port 8651
interactive_port 8652
rrd_rootdir "/data/installFile/ganglia/rrds"(如果没有次文件夹,新建,所属用户root:root与上一致)
case_sensitive_hostnames 1
//////////////////////////////////////////////
service gmetad restart (重启gmetad)
八、配置gmond(全部节点)
进入ganglia源目录
cd ganglia-3.6.0
cp ./gmond/gmond.init /etc/init.d/gmond
./gmond/gmond –t >/usr/local/ganglia/etc/gmond.conf(没有新建文件)
修改gmond配置
vim /etc/init.d/gmond
////////////////////////////
GMOND=/usr/local/ganglia/sbin/gmond
//////////////////////////////
修改gmond.conf配置
vim /usr/local/ganglia/etc/gmond.conf
/////////////////////////////////
globals {
daemonize = yes
setuid = yes
user =root
debug_level = 0
max_udp_msg_len = 1472
mute = no
deaf = no
allow_extra_data = yes
host_dmax = 86400 /*secs. Expires(removes from web interface) hosts in 1 day */
host_tmax = 20 /*secs */
cleanup_threshold = 300 /*secs */
gexec = no
send_metadata_interval =30 /*secs */
}
cluster {
name = "Spark"
owner = "root"
latlong = "unspecified"
url = "unspecified"
}
host {
location = "bihdp05"
}
(单播)
udp_send_channel {
# mcast_join = 239.2.11.71
host=bihdp05 (主节点)
port = 8649(主节点端口)
ttl = 1
}
udp_recv_channel {
# mcast_join = 239.2.11.71
port = 8649
#bind = 239.2.11.71
retry_bind = true
# buffer = 10485760
}
tcp_accept_channel {
port = 8649
# If you want to gzip XML output
gzip_output = no
}
/////////////////////////////////////////
拷贝python脚本
mkdir /usr/local/ganglia/lib64/ganglia/python_modules
cp ./gmond/python_modules/*/*.py /usr/local/ganglia/python_modules
重启gmond service gmond restart
当完成上面安装后,访问http://ip/ganglia (该处是你本人的IP地址),将会看到展示的监控信息
九.监控spark配置
由于Licene的限制,没有放到默认的build里面,如果需要使用,需要自己编译。在使用Maven编译Spark的时候,我们可以加上-Pspark-ganglia-lgpl选项来将Ganglia相关的类打包进spark-assembly-x.x.x-hadoopx.x.x.jar中,命令如下:
[iteblog@iteblogspark]$ ./make-distribution.sh --tgz -Phadoop-2.4 -Pyarn -DskipTests -Dhadoop.version=2.4.0-Pspark-ganglia-lgpl
复制metrics.properties.template 改名metrics.properties,添加如下(每个spark文件):
*.sink.ganglia.class=org.apache.spark.metrics.sink.GangliaSink
*.sink.ganglia.host=bihdp05
*.sink.ganglia.port=8649
*.sink.ganglia.period=10
*.sink.ganglia.unit=seconds
*.sink.ganglia.ttl=1
*.sink.ganglia.mode=unicast
master.source.jvm.class=org.apache.spark.metrics.source.JvmSource
worker.source.jvm.class=org.apache.spark.metrics.source.JvmSource
driver.source.jvm.class=org.apache.spark.metrics.source.JvmSource
executor.source.jvm.class=org.apache.spark.metrics.source.JvmSource