Storm集群搭建的错误分析

第一时间关注程序猿(媛)身边的故事

首先 storm 集群的搭建不再赘述, 网上有很多, 在此推荐一个:

http://blog.csdn.net/lzm1340458776/article/details/45370381

这个是一个写的不错的, 或者说比较详细的搭建步骤, 不过里面有一些坑没有填, 也可能是我遇到了, 在此提出几个搭建过程中遇到问题的解决方案, 给大家参考:

1.java .net .ConnectException

这是第一个错误, 因为目前已经测试成功, 所以就以日志的方式记录错误, 查看日志使我们开发人员必须要会的技能。

解析:一般来说这个问题就是我们的 zookeeper 出了问题, 这个是之前在搭 zookeeper 集群的时候, 二号机出了问题:

搭建好 zookeeper 的集群之后一定要先启动测试一下, 并查看每一台的 status, 确保 zookeeper 集群不要有问题。

查看状态的命令是:

../bin/zkServer.sh status

2.java.net.NoRouteToHostException

这个问题相信大家应该能很容易的发现, 还是 kafka 连接 zookeeper 失败了

这里有两个点, 还是比较简单, 但是也容易写错:

一号机:

二号机:

Zookeeper.connect 是一样的, 三号机不写了, 区分 host.name 就行。

3.拒绝连接

这个问题也是难住我了, 搜了很多资料没找到解决方案, 我简单总结一些之前的老师傅们的解决方案:

(1)关闭防火墙

可是我的电脑是 centos7,firewall 原则上不会影响, 而且默认也是关闭的, 所以这一解决方案对我来说没用了;

(2)有个老司机师父说是 zookeeper 配置了其他机器的信息, 我用的就是 zookeeper 集群啊, 当然要配其他机器的信息, 这和 storm 集群没什么冲突啊, 所以我按照他的方案试了一下, 依然没有解决问题;

(3)我自己的解决方案了

这里要谢谢 captain_hwz 这位老师傅了, 并不是说他告诉我怎么样解决这个问题, 而是他也写了一篇搭建 storm 集群的文档, 然后里面恰巧有这么一句话

这句话我看了好多篇搭建的文章都没有找到, 所以一直没有注意, 因为我在实验阶段, 没有这句话也能连接上 (虽然报错了)

所以秘密就在这解开了, 把每一台服务器上的 storm.yaml 都复制一份到/root/.storm/storm.yaml, 这样的话, 项目启动就完美运行了, 上证物:

最终

写在最后:如果上述问题都已经解决了还是没有能够正常启动, 建议关闭 storm 集群及 storm-ui, 然后依次开启 storm-nimbus,storm-supervisor(1),storm-supervisor(2),storm-ui, 注意速度不要太快, 等每一个启动成功再进行下一个步骤, 因为涉及到系统性能的问题 (我电脑配置一般,cpu 不太给力), 所以说要考虑硬件原因.

说到这, 祝大家能顺利搭建成功, 在大数据处理上再迈出一步!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180127A05XDW00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券