【发布时间】:2018-08-10 20:32:12
【问题描述】:
我目前正在使用 Hortonworks 的新 HDP 2.2 预览版,并看到 Storm 出现了一些奇怪的行为。 许多教程建议您将 supervisord 安装为看门狗进程,因为storm 是一个快速失败的应用程序。当暴风雨来临,你需要一些东西来重新启动它。我使用 easy_install 设置了 supervisord,因为 yum 为您提供了旧的 2.1 版本。我目前安装了第 3 版。
我调出沙盒,启动各种风暴点点滴滴,它工作正常。然后我安装 supervisord,设置 supervisord.conf 文件在底部包含以下内容:
[program:storm-nimbus]
command=storm nimbus
directory=/usr/lib/storm
autorestart=true
user=storm
[program:storm-supervisor]
command=storm supervisor
directory=/usr/lib/storm
autorestart=true
user=storm
[program:storm-ui]
command=storm ui
directory=/usr/lib/storm
autorestart=true
user=storm
然后我使用以下命令启动主管: supervisord -c /etc/supervisord.conf 如果我尝试通过 ambari 重新启动风暴,我会得到:
Traceback (most recent call last):
File "/var/lib/ambari-agent/cache/stacks/HDP/2.1/services/STORM/package/scripts/drpc_server.py", line 58, in <module>
DrpcServer().execute()
File "/usr/lib/python2.6/site-packages/resource_management/libraries/script/script.py", line 122, in execute
method(env)
File "/usr/lib/python2.6/site-packages/resource_management/libraries/script/script.py", line 231, in restart
self.stop(env)
File "/var/lib/ambari-agent/cache/stacks/HDP/2.1/services/STORM/package/scripts/drpc_server.py", line 50, in stop
service("drpc", action="stop")
File "/var/lib/ambari-agent/cache/stacks/HDP/2.1/services/STORM/package/scripts/service.py", line 75, in service
Execute(format("kill {pid}"),
NameError: global name 'Execute' is not defined
如果我在风暴停止时安装主管,也会发生类似的事情。它无法重新启动。我在想你可以有一个看门狗(主管)或 ambari 来照顾风暴,但不能两者兼而有之?这个对吗?如果是这样,为什么 hortonworks 教程告诉你安装 supervisord?
如果有人可以帮助解释整个过程,我将非常感激。
【问题讨论】:
-
这是你的代码吗?
-
这是标准的 Hortonworks 发布代码。这个问题是从配置的角度来看的。
标签: hadoop supervisord apache-storm hortonworks-data-platform