Storm(v0.9.2-inwing)我重新启动机器后出现Supervisor启动错误



最近我使用VMWare在本地虚拟机上部署了storm。部署的版本是v0.9.2,正在酝酿发布版本。我面临的问题是,每次重新启动后,"$storm supervisor"都无法工作。

现在,我正在使用糟糕的修复程序来清理storm.local.dir目录。我希望有人能帮我找到一个新颖的解决方案。

Zookeeper version: zookeeper-3.4.6
Storm version: 0.9.2-incubating (uses Netty transport)
zeromq version: zeromq-4.0.5
jzmq version: jzmq-master (wget https://github.com/nathanmarz/jzmq/archive/master.zip)
Both Storm and Zookeeper run on the same machine.
OS: Ubuntu 14.04 LTS
Processor: Intel® Core™ i5-2410M CPU @ 2.30GHz
RAM: 1001.4 MiB

运行"$storm supervisor"后收到的错误消息如下所示:

2014-11-10 12:09:56 b.s.event [ERROR] Error when processing event java.lang.RuntimeException: java.io.EOFException
    at backtype.storm.utils.Utils.deserialize(Utils.java:93) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at backtype.storm.utils.LocalState.snapshot(LocalState.java:45) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at backtype.storm.utils.LocalState.get(LocalState.java:56) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at backtype.storm.daemon.supervisor$sync_processes.invoke(supervisor.clj:207) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at clojure.lang.AFn.applyToHelper(AFn.java:161) ~[clojure-1.5.1.jar:na]
    at clojure.lang.AFn.applyTo(AFn.java:151) ~[clojure-1.5.1.jar:na]
    at clojure.core$apply.invoke(core.clj:619) ~[clojure-1.5.1.jar:na]
    at clojure.core$partial$fn__4190.doInvoke(core.clj:2396) ~[clojure-1.5.1.jar:na]
    at clojure.lang.RestFn.invoke(RestFn.java:397) ~[clojure-1.5.1.jar:na]
    at backtype.storm.event$event_manager$fn__2378.invoke(event.clj:39) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at clojure.lang.AFn.run(AFn.java:24) ~[clojure-1.5.1.jar:na]
    at java.lang.Thread.run(Thread.java:701) ~[na:1.6.0_33]
Caused by: java.io.EOFException: null
    at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2323) ~[na:1.6.0_33]
    at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2792) ~[na:1.6.0_33]
    at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:800) ~[na:1.6.0_33]
    at java.io.ObjectInputStream.<init>(ObjectInputStream.java:298) ~[na:1.6.0_33]
    at backtype.storm.utils.Utils.deserialize(Utils.java:88) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    ... 11 common frames omitted
2014-11-10 12:09:56 b.s.event [ERROR] Error when processing event java.lang.RuntimeException: java.io.EOFException
    at backtype.storm.utils.Utils.deserialize(Utils.java:93) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at backtype.storm.utils.LocalState.snapshot(LocalState.java:45) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at backtype.storm.utils.LocalState.get(LocalState.java:56) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at backtype.storm.daemon.supervisor$mk_synchronize_supervisor$this__6330.invoke(supervisor.clj:307) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at backtype.storm.event$event_manager$fn__2378.invoke(event.clj:39) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    at clojure.lang.AFn.run(AFn.java:24) ~[clojure-1.5.1.jar:na]
    at java.lang.Thread.run(Thread.java:701) ~[na:1.6.0_33]
Caused by: java.io.EOFException: null
    at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2323) ~[na:1.6.0_33]
    at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2792) ~[na:1.6.0_33]
    at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:800) ~[na:1.6.0_33]
    at java.io.ObjectInputStream.<init>(ObjectInputStream.java:298) ~[na:1.6.0_33]
    at backtype.storm.utils.Utils.deserialize(Utils.java:88) ~[storm-core-0.9.2-incubating.jar:0.9.2-incubating]
    ... 6 common frames omitted

我也遇到了同样的问题。如果你在谷歌上搜索一点错误,你会发现这个邮件档案。根据这一点的解决方案是:

  1. 停止所有风暴和动物园管理员程序。

  2. 然后清除风暴和动物园管理员的数据目录。您修复了Storm数据目录在storm.yaml文件和zoo.cfg或任何名为由你。

  3. 重新启动进程。

    一切似乎都很好。

最新更新