风暴创建拓扑

时间:2016-04-14 10:20:01

标签: hadoop real-time apache-storm

我正在尝试使用Eclipse在Linux中运行Storm starter示例。我收到以下错误,永远不会调用nexttuple函数。

ERROR:

35979 [main] INFO  o.a.s.d.supervisor - Shutting down supervisor cfba8fc6-    81e6-47cb-b8b9-ec7c700f4dfe
35981 [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2000] WARN  o.a.s.s.o.a.z.s.NIOServerCnxn - caught end of stream exception
org.apache.storm.shade.org.apache.zookeeper.server.ServerCnxn$EndOfStreamException: Unable to read additional data from client sessionid 0x1541437f2a0000a, likely client has closed socket
at org.apache.storm.shade.org.apache.zookeeper.server.NIOServerCnxn.doIO(NIOServerCnxn.java:228) [storm-core-1.0.0.jar:1.0.0]
at org.apache.storm.shade.org.apache.zookeeper.server.NIOServerCnxnFactory.run(NIOServerCnxnFactory.java:208) [storm-core-1.0.0.jar:1.0.0]
at java.lang.Thread.run(Thread.java:745) [?:1.7.0_67]
35985 [Thread-10] INFO  o.a.s.event - Event manager interrupted

我的拓扑类:

package com.storm.MobileCallLogAnalyzer;

import org.apache.storm.tuple.Fields;
import org.apache.storm.tuple.Values;

//import storm configuration packages
import org.apache.storm.Config;
import org.apache.storm.LocalCluster;
import org.apache.storm.StormSubmitter;
import org.apache.storm.topology.TopologyBuilder;

//Create main class LogAnalyserStorm submit topology.
public class LogAnalyserStorm {
   public static void main(String[] args) throws Exception{
      //Create Config instance for cluster configuration
      Config config = new Config();
      config.setDebug(true);

      //Creating Topology
      TopologyBuilder builder = new TopologyBuilder();
       builder.setSpout("call-log-reader-spout", new FakeCallLogReaderSpout());

      builder.setBolt("call-log-creator-bolt", new CallLogCreatorBolt())
         .shuffleGrouping("call-log-reader-spout");

      builder.setBolt("call-log-counter-bolt", new CallLogCounterBolt())
         .fieldsGrouping("call-log-creator-bolt", new Fields("call"));

      LocalCluster cluster = new LocalCluster();
      cluster.submitTopology("LogAnalyserStorm", config, builder.createTopology());
      Thread.sleep(10000);

      //Stop the topology
      cluster.shutdown();
   }
 }

我正在处理虚拟机环境clouderacloudera.quickstart),所以不知道是否是由于Zookeeper的安装造成的。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

30736 [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2000] WARN  o.a.s.s.o.a.z.s.NIOServerCnxn - caught end of stream exception
org.apache.storm.shade.org.apache.zookeeper.server.ServerCnxn$EndOfStreamException: Unable to read additional data from client sessionid 0x1541468b5e7000d, likely client has closed socket
at org.apache.storm.shade.org.apache.zookeeper.server.NIOServerCnxn.doIO(NIOServerCnxn.java:228) [storm-core-1.0.0.jar:1.0.0]
at org.apache.storm.shade.org.apache.zookeeper.server.NIOServerCnxnFactory.run(NIOServerCnxnFactory.java:208) [storm-core-1.0.0.jar:1.0.0]
at java.lang.Thread.run(Thread.java:745) [?:1.7.0_67]
30914 [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2000] INFO  o.a.s.s.o.a.z.s.NIOServerCnxn - Closed socket connection for client /127.0.0.1:52175 which had sessionid 0x1541468b5e7000d

使用本地群集模式时,似乎本地风暴实例无法连接到嵌入式ZooKeeper实例。

请参阅https://groups.google.com/forum/#!topic/storm-user/fLB9KCTeWX0

也许,这会对你有所帮助!