【发布时间】:2018-12-21 09:20:18
【问题描述】:
风暴版本:1.2.2 平台:Windows Server 2008
我已经在一台 linux 服务器和一台 Windows 服务器上安装了 Storm 集群。这两个服务器都部署了 nimbus 和 supervisor 服务。 我开始了一个拓扑,然后我杀死了它。发现windows服务器上的supervisor进程报错退出,windows服务器上的worker进程还活着。
表明:
“错误:无法杀死pid xxx进程,只能终止这个 进程(使用 \F 选项)。”
错误信息来自下图: error-info-pic
我不知道这个错误,我已经用谷歌搜索了一些答案,但没有找到,所以我把这个消息发给你。我希望你能帮助我。
于 2018 年 12 月 24 日更新
发现worker会启动一个topology进程,先kill topology error,然后kill supervisor时kill worker error。
我已经编译了一个新的storm-core.jar,并在supervisor kill worker时添加了一些详细日志,错误详细日志如下:
org.apache.storm.shade.org.apache.commons.exec.ExecuteException:进程退出并出现错误:128(退出值:128) 在 org.apache.storm.shade.org.apache.commons.exec.DefaultExecutor.executeInternal(DefaultExecutor.java:377) ~[storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.shade.org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:160) ~[storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.shade.org.apache.commons.exec.DefaultExecutor.execute(DefaultExecutor.java:147) ~[storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.utils.Utils.execCommand(Utils.java:1914) ~[storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.utils.Utils.sendSignalToProcess(Utils.java:1943) [storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.utils.Utils.killProcessWithSigTerm(Utils.java:1962) [storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.daemon.supervisor.Container.kill(Container.java:166) [storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.daemon.supervisor.Container.kill(Container.java:184) [storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.daemon.supervisor.Slot.killContainerForChangedAssignment(Slot.java:311) [storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.daemon.supervisor.Slot.handleRunning(Slot.java:527) [storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.daemon.supervisor.Slot.stateMachineStep(Slot.java:265) [storm-core-1.2.2.jar:1.2.2] 在 org.apache.storm.daemon.supervisor.Slot.run(Slot.java:752) [storm-core-1.2.2.jar:1.2.2]
【问题讨论】:
标签: apache-storm