1,Storm基础介绍:
在了解集群配置安装之前需要掌握如下几个概念(concept):
2,Storm集群安装
2.1 集群部署架构介绍
在192.168.32.150~152三台主机部署storm集群,依赖zookeeper完成配置管理及nimbus和supervisor的注册工作。
--zookeeper
192.168.32.150
192.168.32.151
192.168.32.152
--nimbus
192.168.32.150
--supbervisor
192.168.32.151
192.168.32.152
前置条件:在安装和配置之前需要保证所有机器JDK7+和python 2.6.6+。
2.2 zookeeper集群搭建
2.2.1 下载解压zookeeper:http://zookeeper.apache.org/releases.html
2.2.2 修改zookeeper的conf/zoo.cfg文件,增加如下配置(每台机器的zookeeper配置均如下)
clientPort=2181
server.150=192.168.32.150:2888:3888
server.151=192.168.32.151:2888:3888
server.152=192.168.32.152:2888:3888
2.2.3 启动zookeeper集群
在每台机器上通过zookeeper的bin/zkServer.sh start启动zk,zookeeper会自动组建集群。
2.2.4 zookeeper环境确认:在每台机器上运行zkServer.sh status查看其状态,如
[root@rhel150 ~]# ./zookeeper/zookeeper-3.4.9/bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /root/zookeeper/zookeeper-3.4.9/bin/../conf/zoo.cfg
Mode: follower
2.3 Storm集群搭建
2.3.1 下载解压storm:http://storm.apache.org/releases/1.2.1
2.3.2 配置storm,修改conf/storm.yaml文件,增加如下配置(每台机器配置均相同):
storm.zookeeper.servers:
- "192.168.32.150"
- "192.168.32.151"
- "192.168.32.152"
storm.zookeeper.port: 2181
storm.local.dir: "/root/storm/storm-local"
nimbus.seeds: ["192.168.32.150"]
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
storm.health.check.dir: "healthchecks"
storm.health.check.timeout.ms: 5000
其中storm.local.dir指定的目录需要提前创建,supervisor.slots.ports配置的端口数量决定了每台supervisor机器的worker数量,每个worker会有自己的监听端口用于监听任务。
2.3.3 启动storm:
在192.168.32.150机器启动nimbus和监控
#!/bin/sh
STORM_HOME=/root/storm/storm-1.2.1
nohup $STORM_HOME/bin/storm nimbus &
nohup $STORM_HOME/bin/storm ui &
在192.168.32.151和152机器启动supervisor作为worker
#!/bin/sh
STORM_HOME=/root/storm/storm-1.2.1
nohup $STORM_HOME/bin/storm supervisor &
#nohup $STORM_HOME/bin/storm ui &
3 环境确认
通过浏览器访问ui监控界面,"storm ui"命令运行的机器ip + 默认8080端口,如本例中的http://192.168.32.150:8080
到此,storm集群搭建完成,主要工作为:1,zookeeper的安装;2,storm中配置zookeeper的地址;3,分别启动storm的nimbus和supervisor及监控ui。
下一篇将介绍在此集群中运行一个Toplogy。