我正在尝试使用ambari1.7.0设置一个6节点hdp2.2集群。经过黑客攻击(通过将'export python=/usr/bin/python2.6'添加到ambari agent/ambari enh)使ambari agent守护进程在代理节点上运行之后,我可以注册目标主机。
但是,我在“部署”步骤中遇到了一个可怕的问题。虽然我选择了hdp2.2堆栈,但hdp2.0.6仍然被选中。
Traceback (most recent call last):
File "/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/services/HDFS/package/scripts/datanode.py", line 21, in <module>
from hdfs_datanode import datanode
File "/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/services/HDFS/package/scripts/hdfs_datanode.py", line 21, in <module>
from resource_management.libraries.functions.dfs_datanode_helper import handle_dfs_data_dir
ImportError: No module named dfs_datanode_helper
ambari-agent.log包含以下内容:
INFO 2015-02-06 00:11:47,707 PythonExecutor.py:118 - Result:
{'structuredOut': {},
'stdout': '2015-02-06 00:11:47,687 - Error while executing command
\'status\':\nTraceback (most recent call last):\n
File "/usr/lib/python2.6/site-packages/resource_management/libraries/script/script.py",
line 123, in execute\n File "/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/ganglia_monitor.py",
line 63, in status\n
raise ComponentIsNotRunning()\nComponentIsNotRunning',
'stderr': '2015-02-06 00:11:47,687 - Error while executing command
\'status\':\nTraceback (most recent call last):\n
File "/usr/lib/python2.6/site-packages/resource_management/libraries/script/script.py",
line 123, in execute\n File "/var/lib/ambari-agent/cache/stacks/HDP/2.0.6/services/GANGLIA/package/scripts/ganglia_monitor.py", line 63, in status\n
raise ComponentIsNotRunning()\nComponentIsNotRunning', 'exitcode': 1}
问:为什么即使我选择了hdp2.2,也要安装hdp2.0.6?
我的环境信息:centos 6.6、hortonworks ambari 1.7.0、hdp-2.2、hdp-utils-1.1
回购:hdp-2.2 hdp-utils-1.1.0.20 updates-ambari-1.7.0 ambari-1.x
1条答案
按热度按时间3df52oht1#
这是预期的行为。ambari堆栈可以从以前的版本继承。因此,在您的例子中,堆栈2.2的hdfs继承自堆栈版本2.1,后者也继承自版本2.0.6。
定义如下:https://github.com/apache/ambari/blob/release-1.7.0/ambari-server/src/main/resources/stacks/hdp/2.2/metainfo.xml
现在,回到真正的问题,ganglia根本没有运行。您看到的错误是在ganglia服务的状态检查中出现的。我会从那里开始。