Ganglia:分布式监控系统

标签: ganglia 分布 监控 | 发表时间:2013-12-16 02:40 | 作者:beijing20120926
出处:http://blog.csdn.net

1         环境安装配置
1.1      依赖软件下载

Ganglia是伯克利开发的一个集群监控软件。可以监视和显示集群中的节点的各种状态信息,比如如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,同时可以将历史数据以曲线方式通过php页面呈现。

而ganglia又依赖于一个web服务器用来显示集群状态,用rrdtool来存储数据和生成曲线图,需要xml解析因此需要expat,配置文件解析需要libconfuse。安装apche的httpd还需要支持php4以上,同时还有一些依赖软件。

在redhat可以通过如下命令安装这些依赖软件:

yum -y install apr-devel apr-util check-devel cairo-devel pango-devel libxml2-devel rpmbuild glib2-devel dbus-devel freetype-devel fontconfig-devel gcc-c++ expat-devel python-devel libXrender-devel

libconfuse可以通过如下命令得到:

wget http://download.fedora.redhat.com/pub/epel/5/x86_64/libconfuse-2.5-4.el5.x86_64.rpm
       wget http://download.fedora.redhat.com/pub/epel/5/x86_64/libconfuse-devel-2.5-4.el5.x86_64.rpm

1.2      安装配置步骤
1.2.1     安装

这里采用下载源码编译安装,到http://ganglia.info网站下载最新版的ganglia,下载后解压。

./configure --with-librrd=/rrd/path  --with-gmetad  --prefix=/usr/local/ganglia

make

make install

如果中间出现依赖软件问题,则需要安装缺少的那个软件包。安装完毕后,需要进行配置,其配置文件一般放在/etc/ganglia目录下,名称为gmetad.conf。当然对于路径并没有严格要求,因为gmetad可以在启动时指定所用的配置文件。

 安装ganglia后,还需要安装apache服务器,同时需要有php模块支持,否则最终的显示页面无法正常显示。推荐采用yum install httpd php

否则如果没有配置正确,则有可能apache不能和php正确关联。

安装完毕后可以输入 http://localhost/test.php,编一个php页面测试下是否成功安装。


1.2.2     配置

如果采用源码安装,根据前面的—prefix,ganglia会被安装到/usr/local/ganglia目录下。

 首先建一个目录,该目录用来存放ganglia的web页面

mkdir -p /var/www/html/ganglia/

该目录用来存放后面用来显示数据的web页面。 

由于采用源码编译的,并没有将gmetad和gmond加为服务,执行以下命令。

cp gmetad/gmetad.Init /etc/rc.d/Init.d/gmetad     //拷贝gmetad服务启动脚本
cp gmond/gmond.Init /etc/rc.d/Init.d/gmond        //拷贝gmond服务启动脚本
mkdir /etc/ganglia                                             //创建配置文件主目录
gmond -t | tee /etc/ganglia/gmond.conf              //生成gmond服务配置文件
cp gmetad/gmetad.conf /etc/ganglia/                  //拷贝gmetad服务配置文件
mkdir -p /var/lib/ganglia/rrds                                //创建rrd文件存放目录
chown nobody:nobody /var/lib/ganglia/rrds           //属主和属组都为nobody
chkconfig --add gmetad                                     //将服务交给chkconfig管理
chkconfig --add gmond                                      //同上

修改配置文件/etc/gmetad.conf通常只需要修改如下的参数:

data_source "Clustername" host1 host2

将集群名称改为你自己的,host1 host2是gmetad用来得到集群信息的xml文件的数据源,如果没有写端口,则采用默认的8649端口,gmetad默认每隔15秒通过tcp连接去该主机下载xml文件。所以他们可以是gmond的8649端口,也可以是gmetad的8651端口,它们都可以提供集群信息的xml格式的数据下载。

host1 host2是or的关系,如果host1无法下载,则才会尝试去host2下载,所以它们应该都是同一个集群的节点,保存着同样的数据。采用multicast模式时,每台gmond节点都有本cluster内节点机器的所有监控数据,因此不需要把所有节点写入data_source中。建议写入不低于2个,在host1节点死机的时候,会自动找host2节点取数据。

此外gmetad还有如下的属性设置:

RRD database storage defInition

RRAs "RRA:AVERAGE:0.5:1:244" "RRA:AVERAGE:0.5:24:244" "RRA:AVERAGE:0.5:168:244" "RRA:AVERAGE:0.5:672:244" "RRA:AVERAGE:0.5:5760:374"

RRD files location

访问控制Access control

trusted_hosts address1 address2 … DN1 DN2 …

all_trusted OFF/on 

rrd保存数据的目录

rrd_rootdir "/var/lib/ganglia/rrds"

Network

xml_port 8651 #可以telnet到该端口,得到gmetad的xml文件

interactive_port 8652 #php页面数据交互使用的端口

 

1.2.3     php页面的配置

需要到/var/www/html/ganglia/目录下查找

php.conf

$gmetad_root = "/var/lib/ganglia";    #gmetad写入的rrd数据库的路径

$rrds = "$gmetad_root/rrds";

$ganglia_ip = "localhost";            #gmetad服务器的地址

$ganglia_port = 8652;       #gmetad服务器的交互式提供监控数据端口

默认情况下,web前端每300秒(5分钟)刷新一次,可以修改刷新间隔时间,通过修改config.php文件实现,它里面包括有所有的Ganglia Web参数。


1.2.4     ganglia客户端配置

vi /etc/ganglia/gmond.conf

主要是三个地方需要修改,cluster name,udp_send_channel,udp_recv_channel。注意单播与多播模式的区别,在多播模式下,加入该多播组的节点都会收到组内所有其他节点的数据,所以每个相当于一个备份。单播模式下,只是点到点的发送数据,数据只会发向特定的那个host,这种模式下通常具有一个中央收集节点。

 

cluster {

  name = "Cluster1"     #本节点属于哪个cluster

  owner = "chifeng"     #谁是该节点的所有者

  latlong = "unspecified"   #在地球上的坐标,经度、纬度?

  url = "unspecified"

}

udp_send_channel {       #udp包的发送通道

  mcast_join = 239.2.11.71   #多播,工作在239.2.11.71通道下。如果使用单播模式,则要写host = host1(接受数据的目标主机),单播模式下也可以配置多个udp_send_channel

  port = 8649            #监听端口

  ttl = 1

}

udp_recv_channel {           #接收udp包配置

  mcast_join = 239.2.11.71   #同样工作在239.2.11.71通道下,如果使用单播模式,则要写host = localip,就是必须是本机的ip

  port = 8649                #监听端口

  bind = 239.2.11.71         #绑定

}

tcp_accept_channel {

  port = 8649   #通过tcp协议监听的端口,远端可以通过链接8649端口得到监控数据,gmetad就是通过该端口得到xml数据

}

 

还有其他的一些配置项,通常情况下不需要修改,其含义如下:

Collection_group section:

collect_once – Specifies that the group of static metrics

collect_every – Collection interval (only valid for non-static)

time_threshold – Max data send interval

Metric section:

Name – Metric name (see “gmond –m”)

Value_threshold – Metric variance threshold (send if exceeded)

 

实例如下:

collection_group {

  collect_every = 80

  time_threshold = 950

  metric {

    name = "proc_run"

    value_threshold = "1.0"

  }

  metric {

    name = "proc_total"

    value_threshold = "1.0"

  }

}


1.3      命令集合

说明:命令集合,是指我在安装配置时所使用的那些命令行命令,这些可以作为自动化部署脚步的一个基础。后面可以考虑编写自动化部署的脚步。

 

服务端:

1)安装expat-2.0.1.tar.gz

 tar xvzf expat-2.0.1.tar.gz

 cd expat*;./configure --prefix=/usr/local/apr;make;make install

2)安装confuse-2.6

./configure --prefix=/usr/local/confuse-2.6 CFLAGS=-fPIC --disable-nls;make;make install

3)安装apr

tar xvjf apr-1.3.2.tar.bz2

 cd apr-1.3.2;./configure --prefix=/usr/local/apr;make;make install

安装apr-util-1.3.2.tar.bz2

 tar xvjf apr-util-1.3.2.tar.bz2

 cd apr-util-1.3.2;./configure --with-apr=/usr/local/apr --with-expat=/usr/local/expat

 make;make install

 cp /usr/local/apr-1.3.2/include/apr-1/* /usr/local/apr-1.3.2/include/目录,因为ganglia安装时默认会去/usr/local/apr/include下寻找apr的库文件。

4)安装rrdtool-1.2.27.tar.gz

 tar xvzf rrdtool-1.2.27.tar.gz

 cd rrdtool-1.2.27;./configure --prefix=/usr/local/rrdtool

 make;make install

5)cp /usr/local/apr/bin/apr-1* /usr/local/bin/拷过这个后 OK否则会编译出问题

报错如下:

Checking for apr

checking for apr-1-config... no

configure: error: apr-1-config binary not found in pat

6)安装ganglia

./configure --with-librrd=/opt/rrdtool-1.4.4 --with-gmetad --prefix=/usr/local/ganglia --with-libconfuse=/usr/local/confuse-2.6

7)make;make install

8)安装apache服务器和php支持

yum -y install httpd mysqld php-mysql php

 

客户端:

wget http://download.fedora.redhat.com/pub/epel/5/x86_64/libconfuse-2.5-4.el5.x86_64.rpm

wget http://download.fedora.redhat.com/pub/epel/5/x86_64/libconfuse-devel-2.5-4.el5.x86_64.rpm

 

scp apr-*.* 10.250.13.45:~/

scp libconfuse-*.* 10.250.13.45:~/

scp ganglia-*.gz 10.250.13.45:~/

scp ganglia-devel-*.rpm 10.250.13.45:~/

scp *.conf 10.250.13.45:~/

 

ssh 10.250.13.45

sudo su -

yum install expat

 

cd /home/admin

tar -xvf apr-1.4.*.gz

cd apr*

./configure --prefix=/usr/local/apr

make

make install

 

cd ..

tar -xvf apr-util-1.3.9.*

cd apr-util*

./configure --with-apr=/usr/local/apr

make

make install

 

 cd ..

rpm -ivh  libconfuse-2.5-4.el5.x86_64.rpm

rpm -ivh libconfuse-devel-2.5-4.el5.x86_64.rpm

 

tar -xvf ganglia-3.1.*.gz

cd ganglia*

cp /usr/local/apr/bin/apr-1* /usr/local/bin/

./configure --with-apr=/usr/local/apr

find / -name "libpython2.5*"

cp /usr/local/lib/libpython2.5.so /usr/lib/libpython2.5.so

make

make install

 

cd ..

rpm -ivh ganglia-devel-3.1.1-1.x86_64.rpm --nodeps

cd /etc

mkdir ganglia

cp /home/admin/*.conf /etc/ganglia/

cd /etc/ganglia

vi gmond.conf ;edit udp send and recv host.

vi /usr/local/etc/gmond.conf

 

gmond --debug=10

ps -e|grep gmond

kill -9 id

gmond

如果必要需要重新修改gmond.conf

scp test 10.250.13.42:~/

scp test 10.250.13.43:~/

scp test 10.250.13.44:~/

scp test 10.250.13.45:~/

vi /etc/profile

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"/usr/local/lib64/"

source /etc/profile

 

1.4      问题及解决
1.4.1     安装问题

◎缺少库文件,通常在make过程中出现该错误,ld找不到对应的库比如libpython2.5.so

解决方法:find命令查找这两个文件,并ln –s 创建指向这两个文件的软链接引用。find / -name libpython*

 ◎如果安装过程中出现依赖错误,通常在configure时出现

解决方法:首先利用find查找,如果找到可以阅读readme,查看是否有参数支持指明该路径。不行考虑拷贝到默认目录,还是不行则可以加入参数—nodeps,然后download该lib,通常包含在其devel包里,需要去网上查找包含该lib的文件,然后安装。

  1.4.2     配置及运行问题
        ◎测试gmond和gmetad是否运行成功

Telent localhost 8649

Telent localhost 8651

如果没有反应

解决方法:很可能是因为服务没有启动,或者使用的不是默认端口,ps –e|grep gmond,查找服务是否启动。查看gmond.conf看所使用的tcp recv端口。

还找不到原因,就可以用调试模式启动查看原因

gmond –debug=10

如果出现udp之类的端口绑定错误,比如是已被bind,则查看是否有端口已被利用 lsof –i:port。

还可能是配置文件配置不正确,比如我曾经将udp_recv_channel的host修改成与udp_send_channel相同的值,就发生了端口错误,udp_recv_channel的host必须是本机的ip(一个机子可能有多个ip)。如果是权限禁止,则考虑当前用户身份,或者换成root试下。

测试php前端支持是否成功

http://localhost/ganglia

◎php页面显示为文件或者提示下载文件

解决方法:说明apache的php模块没有安装配置好。使用yum install 或者重新下载安装php模块,并在apache的conf文件里配置好。

◎显示页面无图象展示

首先检查selinux是否关闭

然后查看conf.php文件里的rrdtool路径是否正确,该文件是否存在,注意该路径是rrdtool可执行文件的路径不是其安装目录。

然后查看/var/lib/ganglia/rrds是否存在,能否被写。chown nobody:nobody /var/lib/ganglia/rrds  # make sure RRDTool can write here.

查看php.conf里的gmetad的路径地址端口是否正确。

 

2         原理

Ganglia项目是由加州大学发起的,现在已经成为一个应用非常广泛集群监控软件。可以监视和显示集群中的节点的各种状态信息,比如如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,同时可以将历史数据以曲线方式通过php页面呈现。同时具有很好的扩展性,允许用户加入自己所要监控的状态信息。


2.1      ganglia工作原理

Ganglia:分布式监控系统 - 星星 - 银河里的星星

                                                                              图 1  Ganglia整体结构图

Ganglia包括如下几个程序,他们之间通过XDL(xml的压缩格式)或者XML格式传递监控数据,达到监控效果。集群内的节点,通过运行gmond收集发布节点状态信息,然后gmetad周期性的轮询gmond收集到的信息,然后存入rrd数据库,通过web服务器可以对其进行查询展示。

Gmetad 这个程序负责周期性的到各个datasource收集各个cluster的数据,并更新到rrd数据库中。 可以把它理解为服务端。

Gmond 收集本机的监控数据,发送到其他机器上,收集其他机器的监控数据,gmond之间通过udp通信,传递文件格式为xdl。收集的数据供Gmetad读取,默认监听端口8649 ,监听到gmetad请求后发送xml格式的文件。可以把它理解为客户端。

web front-end 一个基于web的监控界面,通常和Gmetad安装在同一个节点上(还需确认是否可以不在一个节点上,因为php的配置文件中ms可配置gmetad的地址及端口),它从Gmetad取数据,并且读取rrd数据库,生成图片,显示出来。

 如上图所示,gmetad周期性的去gmond节点或者gmetad节点poll数据。一个gmetad可以设置多个datasource,每个datasource可以有多个备份,一个失败还可以去其他host取数据。

 如果是muticast模式的话,gmond之间还会通过多播来相互传递数据。Gmond本身具有udp send和recv通道,还有一个tcp recv通道。其中udp通道用于向其他gmond节点发送或接受数据,tcp则用来export xml文件,主要接受来自gmetad的请求。Gmetad只有tcp通道,一方面他向datasource发送请求,另一方面会使用一个tcp端口,发布自身收集的xml文件,默认使用8651端口。所以gmetad即可以从gmond也可以从其他的gmetad得到xml数据。

 Gmond节点内部模块图如下所示:

Ganglia:分布式监控系统 - 星星 - 银河里的星星

                                                                         图 2  Gmond节点模块结构图

如上图所示,主要由三个模块组成,collect and publish模块,该模块周期性的调用一些内部指令获得metric data,然后将这些数据通过udp通道发布给其他gmond节点。Listen Threads,监听其他gmond节点的发送的udp数据,然后将数据存放到内存中。XML export thread负责将数据以xml格式发布出去,比如交给gmetad。

 下面重点介绍下unicast模式下ganglia系统内的数据流。

Ganglia:分布式监控系统 - 星星 - 银河里的星星

                                                            图 3单播状况下集群节点间的数据流

如上图所示,多个gmond节点通过udp向单播的目标host的gmond发送数据,gmetad然后向该目标host的gmond请求xml文件,然后存入rrdtool数据库。 在unicast模式中,图中方框内的组件通常是位于集群内的同一个节点。该节点负责收集存储 显示被监控的各节点的状态信息。

 

2.2      自定义metrics

向ganglia加入自定义metric有两种方法,一种是通过命令行的方式运行gmetric,另一种是通过ganglia提供的面向c和python的扩展模块,加入自定义的模块支持。


2.3      优点及可能存在的问题
2.3.1     优点

n  自动收集数据

集群内各个节点的信息收集可以通过ganglia系统自动的收集起来,这个收集是独立进行地。其通信性能都是经过良好设计和优化的。具体的机制是:周期性的将这些信息发送给gmond,这样信息就加入了ganglia监控系统。通过ganglia的监控机制完成监控数据的收集显示的功能。Ganglia系统的机制可以参考2.1ganglia工作原理。

n  图形界面

数据可以通过图形显示出来。通过登录web服务器即可查看。目前可以通过该视图查看集群及单独节点的状态曲线。同时具有基本的排序机制,可以根据值降序或者升序排序。可以查看过去1小时 1天 1周 1年等时间段的状态曲线。

n  数据库rrdtool存储了历史数据

由于采用了rrd存储数据,这样我们不单可以查看当前的状态,还可以查看之前的状态历史,同时可以将metrics随时间的变化以曲线的方式变现表现出来。而单独的向文件写日志很难保存和方便地查看之前的历史记录。而且有可能使得日志文件很大。RRDtool具有如下优点:

1)除了存储数据之外,它具有可以创建图形的工具;

2)它的数据库文件大小是固定的,新的数据添加到已有数据的后面,当到了文件末尾的时候就开始从文件开始写数据,Round Robin就是指这个意思;

3)一般的数据库只能存储数据本身,而rrd可以存储相对与以前的数据的变动

4)一般的数据库是在提供数据的时候才更新,而RRD是在每一个预先设好的时间间隔都会更新,每次更新的时候,time stamp也会存储进去

 
2.3.2     可能存在的问题及瓶颈

n  开销估计:网络 IO CPU

只运行gmond进程的节点开销很小,通常需要1m左右内存,cpu大概1%不到,同时gmond只把数据保存在内存中,因此io开销可以忽略。同时向其他节点单播本身的信息本身的网络压力也不会很大。因此对于只运行gmond的节点来说,开销很小。 如果采用了unicast模式,主要的开销就会在各节点的gmond进程向中央节点发送的udp数据带来的网络开销,此外gmond和gmetad的通信,web服务也在该中央节点上进行。这样主要的瓶颈就在中央节点上,其网络 IO CPU的压力都会很大。

对于网络来说,中央节点将收到来自其他所有节点发送的udp包,如果一个节点每秒发10个包,500个节点将会发出5000个,每个包有200字节,就有1m字节,5000个包的处理所需要的cpu使用也会上升。 

对于内存来说每个状态信息存储在内存大概要耗费300byte,如果一个job有10万个instance,每个instance又有10个状态需要监控,那么将耗费10000*10*300=30m的内存,其对应的xml文件大小也应该是10m级别的。

对于IO来说,Gmetad默认15秒向gmond取一次xml数据,如果gmond和gmetad都是在同一个节点,这样就相当于本地io请求。同时gmetad请求完xml文件后,还需要对其解析,也就是说按默认设置每15秒需要解析一个10m级别的xml文件,这样cpu的压力就会很大。同时它还有写入RRD数据库,还要处理来自web客户端的解析请求,也会读RRD数据库。这样本身的IO CPU 网络压力就很大,因此这个节点至少应该是个空闲的而且能力比较强的节点。

n  Gmetad RRD写入瓶颈

需要格外注意的是gmetad守护进程使用RRDtool,会在/var/lib/ganglia/rrds/目录下的一个子目录存储这些rrd数据信息,如果集群节点超过100个,你可能应将这个目录放在RAM文件系统上,因为这个数据库的磁盘I/O将会非常高。由于RRD特有的存储方式,它会为每个metric存放一个文件,如果配置了多个采样频率,它还会为每个采样频率保存一个单独的文件。这就意味着gmetad将metric的值保存到rrd数据库的操作,将是针对大量小文件的IO,假设集群有300个节点,每个节点有50个metric,那么意味着gmetad会记录15000个metric,如果这些metric都是一秒更新一次,那么意味着每秒15000的随机写入操作,通常来说硬盘都是撑不住的。

一个可能的解决方法就是将集群内的节点划分为多个子集,为每个子集配置一个中央收集节点。但这样会带来部署和结果查看的不方便性。另外可以通过RRDcached来缓解这个gmetad使用RRDTool的问题大量随机写入,它会缓存这些写入,批量进行更新。此外就是降低metric的采样频率,减少metrics的数目,尽量减少这种写入请求量。如果机器具有多块磁盘,尽量利用多个磁盘来保存RRD数据。还有就是使用上面我们所说的将rrd目录加载为tmpfs。

n  使用的服务及端口以及依赖的库

Ganglia的gmond进程使用了udp进行单播,默认端口8649,同时还有负责tcp监控的端口8651 8652 8650也会被使用,这些端口需要在集群内部打开,这些使用的端口可以进行配置。另外apache也需要一个端口提供服务,这个端口会被从外部访问,默认是80。

n  同一个host的不同进程的相同Metirc可能混淆

由于ganglia本身是根据host+metric_name来区分不同的状态参数的,也就是它无法区分同一host内的不同进程相同的名称的状态变量。但是对于单纯的一个状态量,虽然可能是多个进程的状态,但对它来说只能看到一个名称,所以当多个进程同时向它报告具有同一个名称的状态的value时,它无法区分出进程间的不同。如果要区分它们,就需要加入一个命名机制区分它们。

程序运行完毕,该程序对应的自定义的那些metric不会消失,这意味着虽然程序运行结束,但我们依然可以查看其历史记录。但另一方面这样也会带来新的问题,由于我们采用的针对metric的命名机制,会导致metric积累到很多,这样会导致xml变得越来越大,增加中央节点解析该文件时的压力,也不方面查阅。目前有一个可行的方法就是修改gmetad的配置文件,减少数据的保存时间的设置。

 
2.3.3     运行需要做的部署工作

基于ganglia的监控运行时,需要各个客户端安装gangliang的客户端gmond。收集数据的那个节点还需要安装ganglia的服务端gmetad,为了可以从web显示结果,还需要安装http服务器。安装这些还有很多依赖软件。具体参见1环境安装配置。

 
3         高级扩展


3.1      直接读取xml文件
 

除了使用ganglia内置的网页页面外,也可以自行得到xml文件去进行自己的分析。通常需要自己编写一个脚本来完成该任务。通过直接telnet gmond或者gmetad的tcp服务监听端口,可以直接得到xml文件,然后我们就可以对该xml文件进行需要的处理了。在单播模式下,应该telnet那个gmond的中央节点,登录该节点才能得到集群内所有节点的信息,否则只能得到单独节点的信息。

 

4         参考文献

The ganglia distributed monitoring system-design  implementation

Wide Area Cluster Monitoring with Ganglia

http://sourceforge.net/apps/trac/ganglia/wiki/Ganglia%203.1.x%20Installation%20and%20Configuration

作者:beijing20120926 发表于2013-12-15 18:40:34 原文链接
阅读:97 评论:0 查看评论

相关 [ganglia 分布 监控] 推荐:

Ganglia:分布式监控系统

- - CSDN博客移动开发推荐文章
1         环境安装配置. 1.1      依赖软件下载. Ganglia是伯克利开发的一个集群监控软件. 可以监视和显示集群中的节点的各种状态信息,比如如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,同时可以将历史数据以曲线方式通过php页面呈现. 而ganglia又依赖于一个web服务器用来显示集群状态,用rrdtool来存储数据和生成曲线图,需要xml解析因此需要expat,配置文件解析需要libconfuse.

开源监控软件ganglia安装手册

- - 研发管理 - ITeye博客
Ganglia是一个监控服务器,集群的开源软件,能够用曲线图表现最近一个小时,最近一天,最近一周,最近一月,最近一年的服务器或者集群的cpu负载,内存,网络,硬盘等指标. Ganglia的强大在于:ganglia服务端能够通过一台客户端收集到同一个网段的所有客户端的数据,ganglia集群服务端能够通过一台服务端收集到它下属的所有客户端数据.

nagios+Ganglia安装备忘录

- - DBA Blog
vi /etc/ld.so.conf.d/libconfuse.conf,添加:/usr/local/lib,然后/sbin/ldconfig -v. Ganglia web前端的安装:. Ganglia的Wiki特别指出,web前端的运行需要rrdtool,以及gmetad中的rrds/目录,没有这两个东西,无法出图.

Hadoop配置Ganglia指南

- - CSDN博客云计算推荐文章
编辑/etc/ganglia/gmond.conf.                        # This option tells gmond to use a source address.                        # this, the metrics may appear to come from any.

ganglia收集hbase的metrics

- - CSDN博客云计算推荐文章
Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点. 每台计算机都运行一个收集和发送度量数据(如处理器速度、内存使用量等)的名为 gmond 的守护进程. 它将从操作系统和指定主机中收集. 接收所有度量数据的主机可以显示这些数据并且可以将这些数据的精简表单传递到层次结构中.

从Ganglia故障说起

- - 开源小站
ganglia是现在市面上比较流行的一个集群健康状态监控系统. 它能够提供一整套的图形化报表用以完整的监控集群中各个节点的CPU/内存/网络以及其他需要监控的信息. 这次呢是我们搭建的一套环境,通过ganglia监控,但看似所有的配置都正确,可ganglia的前端主机(web-front)始终无法得到应有的数据.

云计算平台管理的三大利器Nagios、Ganglia和Splunk

- - 技术改变世界 创新驱动中国 - 《程序员》官网
综合利用Nagios、Ganglia和Splunk搭建起的云计算平台监控体系,具备错误报警、性能调优、问题追踪 和自动生成运维报表的功能. 有了这套系统,就可轻松管理Hadoop/HBase云计算平台. 云计算早已不是停留在概念阶段了,各大公司都购买了大量的机器,开始正式的部署和运营. 而动辄上百台的性能强劲的服务器,为运营管理带来了巨大的挑战.

分布式系统调用链监控

- - IT瘾-geek
应用架构由集中式向分布式演进后,整个调用关系变得复杂. 分布式架构由复杂且较大规模集群构成,各个应用之间相当独立,可能由不同团队、不同语言实现. 系统一个完整的调用过程可能横跨多个服务及数据中心. 复杂的调用导致系统出问题后难以定位问题. 无法准确知道整体系统性能及运行情况. 一个请求完整的调用链可能如下图,经过多个系统服务,调用关系复杂.

深度剖析分布式监控CAT

- - 美团点评技术团队
CAT系统原型和理念来源于eBay的CAL的系统,CAT系统第一代设计者吴其敏在eBay工作长达十几年,对CAL系统有深刻的理解. CAT不仅增强了CAL系统核心模型,还添加了更丰富的报表. 自2014年开源以来,CAT在携程、陆金所、猎聘网、找钢网等多家互联网公司生产环境应用,开源地址 http://github.com/dianping/cat.

分布式系统调用链监控

- - 互联网 - ITeye博客
关键字:分布式系统调用链监控. 1.   zipkin分布式追踪系统:   https://github.com/openzipkin/zipkin . 3.    淘宝的鹰眼系统:http://blog.csdn.net/u011277123/article/details/71402810.     应用架构由集中式向分布式演进后,整个调用关系变得复杂.