首页 > 解决方案 > Storm 拓扑不在集群中执行

问题描述

通过提交我的拓扑stormsubmitter.submittopoloy。在storm UI中可以看到topo,但是发出的数字总是0。

    TopologyBuilder builder = new TopologyBuilder();
    builder.setSpout("WordSpout", new WordSpout());
    builder.setBolt("WordSplitBolt", new WordSplitBolt(),5).shuffleGrouping("WordSpout");
    builder.setBolt("WordCountBolt", new WordCountBolt(),5).fieldsGrouping("WordSplitBolt", new Fields("word"));
    builder.setBolt("WordReportBolt", new WordReportBolt(),10).globalGrouping("WordCountBolt");



    Config cfg = new Config();
    cfg.setDebug(true);



    try{
        StormSubmitter.submitTopology("wordcount-topo", cfg, builder.createTopology());
    }
    catch (AlreadyAliveException e)
    {

    }
    catch (InvalidTopologyException e)
    {

    }
    catch (AuthorizationException e)
    {

    }

在此处查看屏幕截图:https ://i.stack.imgur.com/w7JrG.jpg

在文件中收到以下错误work.log

2019-10-16 11:51:08.973 STDERR Thread-0 [INFO] Unrecognized VM option 'PrintGCDateStamps'
2019-10-16 11:51:08.973 STDERR Thread-1 [INFO] [0.000s][warning][gc] -Xloggc is deprecated. Will use -Xlog:gc:artifacts/gc.log instead.
2019-10-16 11:51:08.977 STDERR Thread-0 [INFO] Error: Could not create the Java Virtual Machine.
2019-10-16 11:51:08.978 STDERR Thread-0 [INFO] Error: A fatal exception has occurred. Program will exit.

标签: javaapache-stormtopology

解决方案


固定,应该是java版本的不同。

目标风暴集群java版本是11。我开发topo的开发环境java版本是8,这导致了这个问题。

调整java版本以使它们相同修复问题


推荐阅读