不在Storm中启动的工作者(未找到backtype.storm.daemon.worker类)

时间:2014-03-14 10:49:07

标签: bigdata hortonworks-data-platform apache-storm

我是Storm的新手,我使用HDP Storm-on-Yarn页面上的说明和来自anfeng风暴的风暴纱线大师在HDP群集上设置了Storm-on-Yarn -yarn git project。

我能够让Nimbus运行甚至提交拓扑并在Storm UI上看到它们。然而,喷口和螺栓似乎没有“工作”(发出0个元组的数量)。

我做了一些挖掘并意识到我的工作人员守护程序没有启动。主管日志吐出这些:

2014-03-13 11:22:03 b.s.d.supervisor [INFO] 18bf93a1-1cea-4e99-93da-8f36a4e9c056 still hasn't started

我尝试从supverviser日志中的“使用命令启动worker”行启动worker命令,我收到此错误:

Exception in thread "main" java.lang.NoClassDefFoundError: backtype/storm/daemon/worker
Caused by: java.lang.ClassNotFoundException: backtype.storm.daemon.worker
        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

Could not find the main class: backtype.storm.daemon.worker.  Program will exit.

虽然它存在于storm-core jar中,但看起来它找不到工人类。

有关如何进行故障排除的任何想法?我已经附加了灵气和主管日志。工作日志似乎没有被创建。

Nimbus Log - http://paste.ubuntu.com/7089418/ 主管日志 - http://paste.ubuntu.com/7089422/

Hadoop版本 - 2.2 风暴版 - 0.9.0-wip21

1 个答案:

答案 0 :(得分:0)

当我创建的JAR文件未排除风暴二进制文件时,我遇到了类似这样的问题。即在pom.xml文件中,确保将storm-core依赖项设置为:



<scope>provided</scope>
&#13;
&#13;
&#13;

同样,我遇到了在风暴lib文件夹中安装了多个版本的netty的问题(​​必须删除旧版本的JAR)。这也导致抛出NoClassDefFoundErrors(尽管与您遇到的不同)。

我建议你查看提交topolgies时显示的类路径(你可以通过 ps -Af | grep storm 来实现)