千家信息网

ubuntu多机版搭建storm环境的示例分析

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,小编给大家分享一下ubuntu多机版搭建storm环境的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1 参考博文
千家信息网最后更新 2026年10月31日ubuntu多机版搭建storm环境的示例分析

小编给大家分享一下ubuntu多机版搭建storm环境的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

1 参考博文

http://my.oschina.net/u/2285247/blog/546608

http://www.cnblogs.com/kemaswill/archive/2012/10/24/2737833.html

http://blog.csdn.net/rzhzhz/article/details/7448894

http://blog.csdn.net/shirdrn/article/details/7183503#t0

2 分布式Storm安装

分布式Storm安装,在单机版安装基础上进行。单机版安装参见(http://my.oschina.net/u/2285247/blog/546608)

Storm集群包含一个中心节点Nimbus,多个从节点Supervisor。

2.1 主机名称到IP地址映射配置

ZooKeeper集群中具有两个关键的角色:Leader和Follower。集群中所有的结点作为一个整体对分布式应用提供服务,集群中每个结 点之间都互相连接,所以,在配置的ZooKeeper集群的时候,每一个结点的host到IP地址的映射都要配置上集群中其它结点的映射信息。

例如,我的ZooKeeper集群中每个结点的配置,以mem1为例,/etc/hosts内容如下所示:

192.168.100.206   mem1  192.168.100.207   mem2192.168.100.208   mem3

2.2 zookeeper集群搭建

首先我们需要搭建一个Zookeeper集群,搭建过程如下:

2.2.1 zookeeper下载

同单机版,不单机版不同之处如下:

分别解压至zookeepr集群机器(一般为基数台机器)相应目录(此处为/usr/local/),集群为mem1,mem2,mem3(hosts对应)。

2.2.2 zookeeper配置

  1. 分别在zookeepr集群机器上配置/usr/local/zookeeper/conf/zoo.cfg(默认是没有此文件的,可以由zoo_sample.cfg重命名来),配置如下:

# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial# synchronization phase can takeinitLimit=10# The number of ticks that can pass  between# sending a request and getting an  acknowledgementsyncLimit=5# the directory where the snapshot is  stored.dataDir=/usr/local/zookeeper/zookeeperdir/zookeeper-datadataLogDir=/usr/local/zookeeper/zookeeperdir/logs# the port at which the clients will  connectclientPort=2181server.1=mem1:2888:3888server.2=mem2:2888:3888server.3=mem3:2888:3888

注:dataDir是zookeeper的数据目录,需要手动创建;dataLogDir也需要手动创建

2. 配置myid文件,在dataDir目录下新建myid文件并设置id号(id号直接写入myid文件)
id号即为zoo.cfg文件中server.后的数字,如server.1=mem1:2888:3888即表示mem1机器中的myid号为1,server.2=mem2:2888:3888即表示mem2器中的myid号为2。

2.2.3 zookeeper测试

  1. 启动

    分别在zookeepr集群机执行下面命令:

cd /usr/local/zookeeper/bin/zkServer.sh start

注:一开始启动的时候会报错,提示连不上集群其他成员。此时是正常信息,等所有集群成员都启动后,该错误信息便会消失。

2. 查看集群状态

/usr/local/zookeeper/bin/zkServer.sh status

如果正常启动会提示如下信息:

[root@mem1 zookeeper]$ bin/zkServer.sh status

JMX enabled by default

Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg

Mode: follower

如果报错如下信息:

JMX enabled by default
Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.

执行
root@mem1:/usr/local/zookeeper/bin# tail -f zookeeper.out 查看日志
解决办法:
Sudo vi /etc/hosts
注释掉:127.0.0.1 开始的行,重启zookeeper 搞定!

或者jps查看是否有QuorumPeerMain服务,如存在则已经启动。

2.3 安装依赖软件及Storm

我们在Storm的每个节点上安装Python,ZeroMQ,jzmq,Storm(安装过程同单机相同)。

2.4 配置Storm集群

配置每个节点的Storm(zookeeper节点不需要,根据前人经验,每行要以空格开始,冒号后要有空格!):

配置conf/storm.yaml文件,如下:

 nimbus.host: "nimbus" storm.local.dir: "/usr/local/apache-storm-0.10.0/local/dir" storm.zookeeper.servers:   - "mem1"   - "mem2"   - "mem3" storm.zookeeper.port: 2181

备注:

其中nimbus.host为Nimbus节点的主机名或IP地址。
storm.local.dir为存储相关信息比如jar,topology等的目录,需要手动创建。
storm.zookeeper.servers为zookeeper集群的主机名或IP地址。
storm.zookeeper.port为Zookeeper服务的端口号,要和你的Zookeeper服务的端口号一致(2181是默认的)。
以上配置需要在每个节点,包括Nimbus和Supervisor上配置,且前三项是必须的,第二项如果不设置会报Connection Refused错误。
在Nimbus节点上的~/.storm/storm.yaml配置(没有该文件的话创建之):

nimbus.host: "nimbus"

到这里Storm集群就配置完毕了。

2.5 启动Storm集群

在Nimbus节点上启动Nimbus服务:

cd /usr/local/apache-storm-0.10.0bin/storm nimbus &

加&是为了在后台运行,否则当前的终端就不能再输入命令了
在Nimbus节点上启动UI,这样就可以通过浏览器在http://nimbus-host:8080上观察整个Storm集群以及Topology的运行情况

bin/storm ui &

在Supervisor节点上启动Supervisor:

bin/storm supervisor &

这样整个Storm集群便启动了。

2.6 Storm集群测试

Storm集群的测试依然可以使用我们单机版之前用过的StormStarter.jar,在Nimbus节点上执行:
storm jar StormStarter.jar storm.starter.ExclamationTopology exclamation
注意,与单机版Storm不同的是,我们在主类ExclamationTopology后面加了一个字符串 exclamation,该字符串是任意的,用来在集群中标示这个Topology,如果不填加这个字符串则该Topology会在单机环境下运行。

以上是"ubuntu多机版搭建storm环境的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

集群 配置 节点 单机 文件 信息 单机版 服务 地址 机器 目录 结点 环境 主机 内容 分布式 字符 字符串 手动 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 喔噻互联网科技有限公司 广州紫鲸互联网科技有限公司 互联网科技工作委员会主任 科技金融是不是互联网金融 互联网和科技创新 互联网与新科技 杭州互联网科技公司 奇酷互联网络科技公司 哈尔滨新华互联网科技 江苏南京365互联网科技 广州优美互联网科技 移动互联网科技公司 江阴互联网智能科技产品进口 银川新华互联网科技学校联系电话 无锡工业互联网科技有限公司 梅州GM互联网络科技有限公司 江苏互联网智能科技软件 北京天晋互联网科技有限公司 互联网的科技体现在哪里 深圳互联网科技园地址 湖北九亚互联网络科技有限公司 天津市摩尔互联网科技 天下捷融互联网科技 郑州华宇互联网科技 金融科技和互联网金融 移动互联网科技公司 互联网科技大奖都有哪些公司 内蒙古九一互联网科技 互联网科技创新的路径 长沙渺峰互联网科技有限公司
0