下载apache-storm-1.2.1.tar.gz 版本,并经过Xftp5上传到hadoop机器集群的第一个节点node1上的/opt/uploads/目录:html
tar zxvf apache-storm-1.2.1.tar.gznode
mv apache-storm-1.2.1 /opt/app/ && cd /opt/app/apache
sudo vi /etc/profile浏览器
添加以下内容:服务器
export STORM_HOME=/opt/app/apache-storm-1.2.1
export PATH=:$PATH:$STORM_HOME/bin网络
使环境变量生效:source /etc/profileapp
①下载解压zookeeper:http://zookeeper.apache.org/releases.htmloop
②修改zookeeper的conf/zoo.cfg文件,增长以下内容:ui
dataDir=/opt/app/zookeeper-3.4.5/data
clientPort=2181
server.1=hadoop1:2888:3888
server.2=hadoop2:2888:3888
server.3=hadoop3:2888:3888spa
③启动zookeeper集群
在每台机器上经过zookeeper的bin/zkServer.sh start启动zk,zookeeper会自动组件集群。
进入storm配置文件的目录,cd /opt/app/apache-storm-1.2.1/conf/
修改storm.yaml文件 vi storm.yaml,将如下内容写入到storm.yaml文件中
# zookeeper集群的hosts
storm.zookeeper.servers:
- "hadoop1"
- "hadoop2"
- "hadoop3"
# 指定zookeeper的端口
storm.zookeeper.port: 2181
# storm存储的数据目录
storm.local.dir: "/opt/app/apache-storm-1.2.1/storm-local"
# 指定storm集群中的nimbus节点所在的服务器
nimbus.seeds: ["hadoop1"]
# 指定nimbus启动JVM最大可用内存大小
nimbus.childopts: "-Xmx1024m"
# 指定supervisor启动JVM最大可用内存大小
supervisor.childopts: "-Xmx768m"
# 指定ui启动JVM最大可用内存大小,ui服务通常与nimbus同在一个节点上
ui.childopts: "-Xmx768m"
# 指定supervisor节点上,启动worker时对应的端口号,每一个端口对应槽,每一个槽位对应一个worker
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会有本身的监听端口用于监放任务。
scp -r /opt/app/apache-storm-1.2.1/ hadoop@hadoop2:/opt/app/
scp -r /opt/app/apache-storm-1.2.1/ hadoop@hadoop3:/opt/app/
在hadoop1节点机器上启动nimbus和监控ui
nohup storm nimbus &
nohup storm ui &
在hadoop2和hadoop3节点机器上启动supervisor做为worker
nohup storm supervisor &
经过浏览器访问ui监控界面,“storm ui”命令运行的机器ip + 默认8080端口,如图:
前提条件:三台机器集群是部署在VMware 12上面的,经过NAT网络通讯,若是须要访问虚拟机的8080端口,须要在VMware12上面设置端口转发,如图:
至此,storm集群搭建完成,主要工做为:①zookeeper的安装配置;②storm中配置zookeeper的地址;③分别启动storm的nimbus和supervisor及监控ui。
参考资料:
https://blog.csdn.net/qingkangxu/article/details/79513697
http://storm.apache.org/releases/1.2.1/Setting-up-a-Storm-cluster.html