千家信息网

如何分析Ganglia本质及SparkOnGanglia的配置

发表于:2025-01-28 作者:千家信息网编辑
千家信息网最后更新 2025年01月28日,今天就跟大家聊聊有关如何分析Ganglia本质及SparkOnGanglia的配置,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。前言Gangl
千家信息网最后更新 2025年01月28日如何分析Ganglia本质及SparkOnGanglia的配置

今天就跟大家聊聊有关如何分析Ganglia本质及SparkOnGanglia的配置,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

前言

Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点。每台计算机都运行一个收集和发送度量数据(如处理器速度、内存使用量等)的名为 gmond 的守护进程。它将从操作系统和指定主机中收集。接收所有度量数据的主机可以显示这些数据并且可以将这些数据的精简表单传递到层次结构中。正因为有这种层次结构模式,才使得 Ganglia 可以实现良好的扩展。gmond 带来的系统负载非常少,这使得它成为在集群中各台计算机上运行的一段代码,而不会影响用户性能。

一 Ganglia组件

Ganglia 监控套件包括三个主要部分:gmond,gmetad,和网页接口,通常被称为ganglia-web。

Gmond :是一个守护进程,他运行在每一个需要监测的节点上,收集监测统计,发送和接受在同一个组播或单播通道上的统计信息 如果他是一个发送者(mute=no)他会收集基本指标,比如系统负载(load_one),CPU利用率。他同时也会发送用户通过添加C/Python模块来自定义的指标。 如果他是一个接收者(deaf=no)他会聚合所有从别的主机上发来的指标,并把它们都保存在内存缓冲区中。

Gmetad:也是一个守护进程,他定期检查gmonds,从那里拉取数据,并将他们的指标存储在RRD存储引擎中。他可以查询多个集群并聚合指标。他也被用于生成用户界面的web前端。

Ganglia-web :顾名思义,他应该安装在有gmetad运行的机器上,以便读取RRD文件。 集群是主机和度量数据的逻辑分组,比如数据库服务器,网页服务器,生产,测试,QA等,他们都是完全分开的,你需要为每个集群运行单独的gmond实例。

一般来说集群中每个节点需要一个接收的gmond,每个网站需要一个gmetad。

二 安装依赖

注:建议全程使用超级用户安装,本例安装环境centos6.6

1.#yum install -y gcc gcc-c++ libpng freetype zlib libdbi apr* libxml2-devel pkg-config glib pixman pango pango-devel freetye-devel fontconfig cairo cairo-devel libart_lgpl libart_lgpl-devel pcre* rrdtool*

三 安装expat依赖

1. #cd ~

2.#wget http://jaist.dl.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz

3.#tar -xf expat-2.1.0.tar.gz && cd expat-2.1.0 && ./configure --prefix=/usr/local/expat && make && make install && cd ..

对于64位操作系统,需要手动的拷贝下动态链接库到lib64下

1.#mkdir /usr/local/expat/lib64 && cp -a /usr/local/expat/lib/* /usr/local/expat/lib64/

四 安装confuse

1.#wget http://ftp.twaren.net/Unix/NonGNU//confuse/confuse-2.7.tar.gz

2.#tar -xf confuse-2.7.tar.gz && cd confuse-2.7 && ./configure CFLAGS=-fPIC --disable-nls --prefix=/usr/local/confuse && make && make install && cd ..

64bit机器需要拷贝动态链接库:

1.#mkdir -p /usr/local/confuse/lib64 && cp -a -f /usr/local/confuse/lib/* /usr/local/confuse/lib64/

五 安装ganglia

1.#wget http://jaist.dl.sourceforge.net/project/ganglia/ganglia%20monitoring%20core/3.6.0/ganglia-3.6.0.tar.gz

2.#tar -xf ganglia-3.6.0.tar.gz && cd ganglia-3.6.0 && ./configure --with-gmetad --enable-gexec --with-libconfuse=/usr/local/confuse --with-libexpat=/usr/local/expat --prefix=/usr/local/ganglia --sysconfdir=/etc/ganglia && make && make install && cd ..

六 服务端配置。

1.#mkdir -p /var/lib/ganglia/rrds && mkdir -p /var/lib/ganglia/dwoo && chown -R root:root /var/lib/ganglia

修改/etc/ganglia/gmetad.conf文件

1.data_source "glo" master(master映射要监控的主机Ip,在本例中只监控一台机器即master。如非必要不用填端口,默认8649,

这里的 " glo" 表示的是集群的名称,后面的内容是这个集群中所包含的主机信息,也就是要监控的主机。)

2.setuid_username "root"

添加自启动脚本

1.#cp -f ganglia-3.6.0/gmetad/gmetad.init /etc/init.d/gmetad && cp -f /usr/local/ganglia/sbin/gmetad /usr/sbin/gmetad && chkconfig --add gmetad

启动gmetad服务

1.#service gmetad start

看见Starting GANGLIA gmetad: [ OK ]就代表运行正常了。 通过telnet localhost 8651验证gmetad是否正常

七 客户端配置(gmond节点)

本机安装如下:

1.#cp -f ganglia-3.6.0/gmond/gmond.init /etc/init.d/gmond && cp -f /usr/local/ganglia/sbin/gmond /usr/sbin/gmond && chkconfig --add gmond && gmond --default_config > /etc/ganglia/gmond.conf

对于生成的默认配置文件/etc/ganglia/gmond.conf需要做适当的修改

globals {

user = root /*运行Ganglia的用户*/

host_dmax = 120 /*secs */

send_metadata_interval = 15 /*发送数据的时间间隔*/

}

cluster {

name = "glo" /*集群名称*/

owner = "root" /*运行Ganglia的用户*/

}

udp_send_channel {

# mcast_join = 239.2.11.71 /*注释掉组播*/

host = 192.168.1.108/*发送给安装gmetad的机器*/

}

udp_recv_channel { #接受UDP包配置

# mcast_join = 239.2.11.71

# bind = 239.2.11.71

}

其中name是将要在服务端进行的分组,是服务端的数据源。接下来开启服务

1.#service gmond start

看见Starting GANGLIA gmetad: [ OK ]代表启动成功。如果有失败,可以讲gmond.conf中的debug从0改为100,看更多的日志,然后进行排查。

八 服务端的WEB配置

PHP程序需要依赖Apache来运行,因此需要安装如下依赖

1.# yum -y install php httpd

2.# service httpd start //启动httpd 服务

九 安装ganglia web

1.#cd /root

2.#wget http://jaist.dl.sourceforge.net/project/ganglia/ganglia-web/3.5.10/ganglia-web-3.5.10.tar.gz

3.#tar -xf ganglia-web-3.5.10.tar.gz && cd ganglia-web-3.5.10 && make install && cd ..

这样 在/var/www/html/下 生成了 ganglia 目录

注:

Ganglia访问失败:

There was an error collecting ganglia data (127.0.0.1:8652): fsockopen error: Permission denied

解决:

需要关闭selinux:vi /etc/selinux/config,把SELINUX=enforcing改成SELINUX=disable;需要重启机器。

可以使用命令setenforce 0来关闭selinux而不需要重启,刷新页面,即可访问。但此方法只是一权宜之计。要想永久修改selinux设置,还是要使用第一种方法。

重启httpd服务器即可看到效果

1.#service httpd restart

使用http://master/ganglia查看对应的ganglia信息。(注:master为运行gmetad的主机的hostname)

十 SparkOnGanglia中配置(前提为编译好带有ganglia组件的SPARK)

(本例spark版本1.5.1)

在$SPARK_HOME/conf/metrics.properties添加

*.sink.ganglia.class=org.apache.spark.metrics.sink.GangliaSink

*.sink.ganglia.host=master

*.sink.ganglia.port=8649

*.sink.ganglia.period=2

*.sink.ganglia.unit=seconds

*.sink.ganglia.ttl=1

*.sink.ganglia.mode=unicast

然后在ganglia web中查看Metric项

看完上述内容,你们对如何分析Ganglia本质及SparkOnGanglia的配置有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。

服务 运行 数据 配置 主机 集群 用户 指标 机器 内容 系统 节点 监控 信息 文件 服务器 进程 生成 本质 分析 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 山东省网络安全中心主任 网络安全与执法专业开课 大学生软件开发找资金 云南信息化土地资产管理软件开发 软件开发工程流程 ogg数据库技术的优缺点 软件开发群聊名 天津服务器应用线束加工 河北专业网络技术服务 centos 服务器安装 网络安全专业和技术 昌平区网络技术哪家好 刘向东网络安全讲座 腾讯云服务器如何临时调整带宽 吉林专业网络技术资费 局域网服务器密码忘了 软件开发企业销售软件的税率 寻乌软件开发专业 数据库中有哪些关系是什么 一二图是数据库设计的工具之一 服务器水冷液体生产企业 pa4原神显示无法登录服务器 成绩上传至数据库asp 密码在保障网络安全中的核心作用 斑马智能网络技术有限公司 网络安全标准化研究 39岁的网络技术员入住养老院 漏洞数据库包含什么信息 两台服务器远程备份同步 网络安全技术支撑服务单位
0