storm集群安装与部署

storm集群拓扑规划

在搭建Storm集群前,先看下下面的拓扑图,在1.1.0版本中,支持 Nimbus的HA模式,Nimbus、Supervisor,需要使用Zookeeper作为协同。

storm集群安装与部署

相关依赖

  • 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角色
A192.168.2.149Nimbus
B192.168.2.150Supervisor_01
C192.168.2.151Supervisor_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 &

知识点

storm0.9版本后不在采用ZeroMQ

storm配置详解

storm UI参数详解

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 &

相关推荐