Ganglia 入门介绍及解决fsockopen error: Connection refused问题

一,问题描述

Ganglia的各个组件安装情况(不是我装的,只知道这些信息):

集群一共有4台机器,分别是192.168.121.34-37。Gmetad、Gweb和httpd 安装在 192.168.121.34 上;Gmond安装在34,35,36,37机器上。

访问Ganglia-web主页:http://192.168.121.34/ganglia-web/ 出现如下错误:

There was an error collecting ganglia data (127.0.0.1:8652): fsockopen error: Connection refused

查看gmetad状态,提示:gmetad dead but subsys locked

而查看192.168.121.34、35、36、37 上的gmond状态:service gmond status ,都是正常的:gmond (pid 30260) is running...

 

这篇文章说是/var/lib/ganglia/rrds/ 目录存在权限的问题:说是用户权限为nobody,组权限是root。

但是我的这个目录用户权限就是nobody,组权限就是root。因此,与之无关。

 

在192.168.121.35机器上 运行:telnet 192.168.121.34 8652 提示: Connection refused

在root用户下使用:netstat -anp | grep 8652 未找到任何关于8652端口的信息。

其他文章中说的各种修改配置文件的问题,未尝试。

后面发现rrds目录太大了,整个分区已经占了97%了。

 

安装的集群HDFS也报磁盘空间不足警告。清理一下磁盘之后:

 

然后再重启gmetad服务(service gmetad restart),居然就好了。真是奇怪。

 

此时,访问Ganglia-web主页 就能看到各种监控图片了。

 

二,Ganglia的一些基础知识

①Ganglia监控系统主要由三部分组成,gmond、gmetad、和 web接口(ganglia-web)。

gmond安装在每一台待监控的机器上,负责收集各种监控指标,它即可以是sender,也可以是receiver。也就是说:它即可以收集本机上的一些监控指标(metrics,比如cpu利用率、系统负载),也可以把它收集到的信息发送给安装在其他机器上的gmond。

gmetad周期性地轮询各个gmond,将各个gmond收集到的监控指标(metric)存储到RDD文件中。

 

ganglia-web需要与gmetad安装在同一台机器上,因为它需要访问gmetad的RDD文件,从而将RDD文件中的各种指标以web界面的形式展示出来。

②默认情况下,gmond使用UDP端口8649通信,gmetad使用TCP端口8649从各种gmond中下载监控指标(metric)。

其他一些基础参考:https://github.com/ganglia/monitor-core/wiki/Ganglia-Quick-Start

里面还介绍了如何安装 Ganglia 监控多个集群。

 

posted @ 2017-01-18 11:46  大熊猫同学  阅读(2948)  评论(0编辑  收藏  举报