storm集群拓扑规划
在搭建Storm集群前,先看下下面的拓扑图,在1.1.0版本中,支持 Nimbus的HA模式,Nimbus、Supervisor,需要使用Zookeeper作为协同。
相关依赖
- jDK1.8
- zookeeper3.4.9 部署说明
- python2.6.6+
安装包下载
wget http://mirror.bit.edu.cn/apache/storm/apache-storm-1.1.1/apache-storm-1.1.1.tar.gz
简称 | IP | 角色 |
---|---|---|
A | 192.168.2.149 | Nimbus |
B | 192.168.2.150 | Supervisor_01 |
C | 192.168.2.151 | Supervisor_02 |
Nimbus安装配置
Nimbus可以配置多台,实现HA,这里暂时就配置一台
需要对外开放的端口:
6627: Nimbus 默认端口
8080: Storm UI Web端口
8000: LogView端口
配置文件
storm github提供的配置默认
https://github.com/apache/sto...
########### These MUST be filled in for a storm configuration
storm.zookeeper.servers:
- "192.168.2.149"
- "192.168.2.150"
- "192.168.2.151"
nimbus.seeds: ["192.168.2.149"]
#配置数据存储路径
storm.local.dir: "/data/ms/storm-1.1.1/data"
##配置节点健康检测
storm.health.check.dir: "healthchecks"
storm.health.check.timeout.ms: 5000
storm.local.hostname: "192.168.2.149"
#配置Storm UI
ui.port: 8080
启动程序
./storm nimbus >/dev/null 2>&1 &
./storm ui >/dev/null 2>&1 &
./storm logviewer >/dev/null 2>&1 &
在浏览器访问:http://192.168.2.149:8080, 查看Storm UI主页
Supervisor安装配置
Supervisor安装的时候,只需要指定Nimbus地址,就可以自动加入Storm集群
配置文件
########### These MUST be filled in for a storm configuration
storm.zookeeper.servers:
- "192.168.2.149"
- "192.168.2.150"
- "192.168.2.151"
#
nimbus.seeds: ["192.168.2.149"]
#配置数据存储路径
storm.local.dir: "/data/ms/storm-1.1.1/data"
#
##配置节点健康检测
storm.health.check.dir: "healthchecks"
storm.health.check.timeout.ms: 5000
storm.local.hostname: "192.168.2.150"
#配置supervisor: 开启几个端口插槽,就开启几个对应的worker进程
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
启动程序
./storm supervisor >/dev/null 2>&1 &
./storm logviewer >/dev/null 2>&1 &
知识点
FAQ
- Storm UI 中显示的Supervisor 的个数与实际的不符
删除Supervisor中的 storm.local.dir 目录的数据,之前拷贝到各个节点的时候,把这个目录页拷贝过去了。如果 storm.local.dir的目录为空的话,每个Supervisor就会创建自己的ID
- Storm ui展示主机名
每台storm这里hostname配置自己的ip地址
storm.local.hostname: "192.168.2.150"
- 日志链接链接失败
需启动LogView服务
./storm logviewer >/dev/null 2>&1 &
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。