Ambari 仪表板未检索任何统计信息

Ambari dashboard retrieving no statistics

我在一个小型集群(4 台机器)上全新安装了 Hortonworks Data Platform 2.2,但是当我登录到 Ambari GUI 时,大多数仪表板统计框(HDFS 磁盘使用情况、网络使用情况、内存使用情况等) ) 没有填充任何统计信息,而是显示消息:

No data There was no data available.  Possible reasons include inaccessible Ganglia service

单击 HDFS 服务 link 给出以下摘要:

NameNode    Started
SNameNode   Started
DataNodes   4/4 DataNodes Live
NameNode Uptime     Not Running
NameNode Heap   n/a / n/a (0.0% used)
DataNodes Status    4 live / 0 dead / 0 decommissioning
Disk Usage (DFS Used)   n/a / n/a (0%)
Disk Usage (Non DFS Used)   n/a / n/a (0%)
Disk Usage (Remaining)  n/a / n/a (0%)
Blocks (total)  n/a
Block Errors    n/a corrupt / n/a missing / n/a under replicated
Total Files + Directories   n/a
Upgrade Status  Upgrade not finalized
Safe Mode Status    n/a

屏幕右侧的“警报和健康检查”框未显示任何信息,但如果我单击设置图标,这将打开 Nagios 前端,再次,一切看起来都很健康!

安装顺利 (CentOS 6.5),就所有服务而言,一切看起来都很好(所有服务名称旁边都以绿色勾号开头)。仪表板上显示了一些统计数据:4/4 的数据节点处于活动状态,1/1 的节点管理处于活动状态,1/1 的主管处于活动状态。我可以将文件写入 HDFS,所以它看起来像是 Ganglia 问题?

Ganglia 守护程序似乎工作正常:

ps -ef | grep gmond
nobody    1720     1  0 12:54 ?        00:00:44 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPHistoryServer/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPHistoryServer/gmond.pid
nobody    1753     1  0 12:54 ?        00:00:44 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPFlumeServer/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPFlumeServer/gmond.pid
nobody    1790     1  0 12:54 ?        00:00:48 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPHBaseMaster/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPHBaseMaster/gmond.pid
nobody    1821     1  1 12:54 ?        00:00:57 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPKafka/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPKafka/gmond.pid
nobody    1850     1  0 12:54 ?        00:00:44 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPSupervisor/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPSupervisor/gmond.pid
nobody    1879     1  0 12:54 ?        00:00:45 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPSlaves/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPSlaves/gmond.pid
nobody    1909     1  0 12:54 ?        00:00:48 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPResourceManager/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPResourceManager/gmond.pid
nobody    1938     1  0 12:54 ?        00:00:50 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPNameNode/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPNameNode/gmond.pid
nobody    1967     1  0 12:54 ?        00:00:47 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPNodeManager/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPNodeManager/gmond.pid
nobody    1996     1  0 12:54 ?        00:00:44 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPNimbus/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPNimbus/gmond.pid
nobody    2028     1  1 12:54 ?        00:00:58 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPDataNode/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPDataNode/gmond.pid
nobody    2057     1  0 12:54 ?        00:00:51 /usr/sbin/gmond --conf=/etc/ganglia/hdp/HDPHBaseRegionServer/gmond.core.conf --pid-file=/var/run/ganglia/hdp/HDPHBaseRegionServer/gmond.pid

我检查了每个节点上的 Ganglia 服务,进程按预期运行

ps -ef | grep gmetad
nobody    2807     1  2 12:55 ?        00:01:59 /usr/sbin/gmetad --conf=/etc/ganglia/hdp/gmetad.conf --pid-file=/var/run/ganglia/hdp/gmetad.pid

我试过重新启动 Ganglia 服务,但没有成功,重新启动了所有服务,但还是一样。有谁知道我如何让仪表板正常工作?谢谢。

事实证明是代理问题,要访问互联网,我必须将我的代理详细信息添加到文件 /var/lib/ambari-server/ambari-env.sh

export AMBARI_JVM_ARGS=$AMBARI_JVM_ARGS' -Xms512m -Xmx2048m -Dhttp.proxyHost=theproxy -Dhttp.proxyPort=80 -Djava.security.auth.login.config=/etc/ambari-server/conf/krb5JAASLogin.conf -Djava.security.krb5.conf=/etc/krb5.conf -Djavax.security.auth.useSubjectCredsOnly=false'

当 ganglia 试图访问集群中的每个节点时,请求通过代理进行并且从未解决,为了解决这个问题,我将我的节点添加到排除列表中(添加标志 -Dhttp.nonProxyHosts)像这样:

export AMBARI_JVM_ARGS=$AMBARI_JVM_ARGS' -Xms512m -Xmx2048m -Dhttp.proxyHost=theproxy -Dhttp.proxyPort=80 -Dhttp.nonProxyHosts="localhost|node1.dms|node2.dms|node3.dms|etc" -Djava.security.auth.login.config=/etc/ambari-server/conf/krb5JAASLogin.conf -Djava.security.krb5.conf=/etc/krb5.conf -Djavax.security.auth.useSubjectCredsOnly=false'

添加排除列表后,统计信息按预期检索!