56.storm 之 hello world (集群模式)

回顾

  在上一小节,我们在PWTopology1 这一个java类中注解掉了集群模式,使用本地模式大概了解一下storm的工作流程。这一节我们注解掉本地模式相关的代码,放开集群模式相关代码,并且将项目打包,在实际环境中运行一下。

集群模式部署步骤

项目打包

pom.xml右键 --> run as --> maven clean --> maven install

将大好的jar包上传到 nimbus 的 /usr/local下

提交拓扑

storm jar storm01.jar bhz.topology.PWTopology1

运行上面的命令后结果是这样的,终点看一下画红框的地方:

查看拓扑是否运行

在nimbus 运行 :storm list

结果是这样的:

也可以到管控台看到上面的信息

再查看一下supervisor的状态:jps可以看到worker进程

也可以看一下logs目录下的worker-****.log文件:

这些信息就是PrintBolt类中打印出的信息(完整代码参考上一节):

不过还遇到一个未能解决的问题,就是其中一个supervisor报错:

重启虚拟机都没有用。。而且这个Supervisor并没有工作。暂时先用一个Supervisor吧,以后再考虑怎么解决这个问题

过了一天,上面的问题的解决了,根本问题不是上面的那个错误,而是:StormClientErrorHandler [INFO] Connection failed Netty-Client-rocketmq-nameserver2:6703

解决方案是:假如我们的集群是3台机器,则在每台机器上的/etc/hosts中 将所有机器的映射配置即可,具体实例看下面的配置,记得要在每台机器上都配置。

具体可以看一下 http://blog.csdn.net/mic403/article/details/47147785

原文地址:https://www.cnblogs.com/sigm/p/6876204.html