用于处理高速、大型数据流的分布式实时计算系统。为Hadoop添加了可靠的实时数据处理功能。
Home link: http://storm.apache.org/
Download link: http://storm.apache.org/downloads.html
Setup
1. Java
CentOS自带JDK 1.7,此处可以忽略该步骤。
2. Zookeeper
Home link: http://zookeeper.apache.org/releases.html
1) 下载安装包并上传解压
http://mirror.bit.edu.cn/apache/zookeeper/stable/
tar -xf zookeeper-3.4.6.tar.gz
2) 配置Zookeeper
tickTime=2000
dataDir=/var/zookeeper/
clientPort=2181
initLimit=5
syncLimit=2
server.1=zookeeper1:2888:3888
server.2=zookeeper2:2888:3888
server.3=zookeeper3:2888:3888
3) 启动Zookeeper
bin/zkServer.sh start
4) 测试
bin/zkCli.sh -server 127.0.0.1:2181
- 3. 依赖库安装
1) Java
自带。
2) Python
自带。
- Storm
1) 下载安装包,上传并解压
解压命令:
tar -xf apache-storm-0.9.5.tar.gz
2) 配置Zookeeper地址,在storm.yaml中配置该目录
storm.zookeeper.servers:
- “127.0.0.1″
创建并配置workdir
storm.local.dir: “/home/admin/storm/workdir”
备注:storm.local.dir:Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限。
nimbus.host:Storm集群Nimbus机器地址,各个Supervisor工作节点需要知道哪个机器是Nimbus,以便下载Topologies的jars、confs等文件
01.nimbus.host: “127.0.0.1”
supervisor.slots.ports: 对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。默认情况下,每个节点上可运行4个workers,分别在6700、6701、6702和6703端口
supervisor.slots.ports:
-6700
-6701
-6702
-6703
3) 启动strom的所有服务
Nimbus
”bin/storm nimbus >/dev/null 2>&1 &”
Supervisor
”bin/storm supervisor>/dev/null 2>&1 &”
UI
”bin/storm ui >/dev/null 2>&1 &”
Logview
“bin/storm logviewer > /dev/null 2>&1”
访问Storm UI