storm安装
安装storm前请确认zookeeper已经正确安装且运行正常
我本地有三个节点,分别是 master、slave、slave2
1.确认zookeeper安装切运行正常
分别在三台节点 的终端运行如下:
如上图 zookeeper启动正常,且 slave节点被选举为leader
2.开始安装
2.1软件下载
软件版本地址:
http://mirror.bit.edu.cn/apache/storm/
可以选择如下版本进行下载
http://mirrors.hust.edu.cn/apache/storm/apache-storm-1.0.6/
我下载的是zip版的
2.2软件安装
下载完成后copy 到linux feiniu5566用户下
/home/feiniu5566/
执行解压操作
$unzip apache-storm-1.0.6.zip
解压完成后进入文件夹
$ cd apache-storm-1.0.6/conf
修改配置文件 storm.yaml
$vi storm.yaml
修改配置如下,修改之前为注释项,需要将每句之前的#去掉:
storm.zookeeper.servers:
- "master"
- "slave"
- "slave2"
nimbus.host: “master”
**
注意: - 与后面的值(master、slave、slave2)之间必须有空格 把最后一句nimbus前面的空格删掉
**
2.3节点拓展
在master上 将 Storm 安装文件复制到 HadoopSlave
进入到用户家目录
$ cd
执行如下:
$ scp -r apache-storm-0.9.3 feiniu5566@slave:~/
ps:我的三个节点做了免秘钥登录 ssh,节点间切换就不需要密码了。
修改当期用户的.bash_profile
2.4修改环境变量
切换到当期用户home目录
$cd
修改当前用户的.bash_profile(此文件是隐藏文件)
$vi .bash_profile
加入
export STORM_HOME=/home/feiniu5566/apache-storm-1.0.6
export PATH=
STORMHOME/bin:
S
T
O
R
M
H
O
M
E
/
b
i
n
:
PATH
保存退出 按 “ESC” 键 输入:wq
使环境变量生效
$source .bash_profile
将当前节点的环境变量配置文件copy到另外两个节点
$scp ~/.bash_profile feiniu5566@slave:~/
$scp ~/.bash_profiel feiniu5566@slave2:~/
分别进入两个节点,执行如下命令 ,使配置生效
$source ~/.bash_profile
2.5 启动验证
Nimbus:在 Storm 主控节点上运行(即 master)
Supervisor:在 Storm 各个工作节点上运行(即 slave)
UI:在 Storm 主控节点上运行,启动 UI 后台程序
在 Master 节点上,启动如下服务到后台:
storm nimbus >/dev/null 2>&1 &
storm ui >/dev/null 2>&1 &
验证:
图中nimbus 代表 主节点启动成功
core代表UI 进程启动成功
然后登陆到其他子节点上
在 Slave 节点,启动如下服务到后台:
storm supervisor>/dev/null 2>&1 &
验证
如图 代表 supservisor 子节点启动成功
注意 :
节点启动有时候比较慢, 当出现config进程时代表启动中,等待几秒即可。
此时登陆zookeeper 进行查看
在master或slave节点连接都可以
$zkCli.sh -server master:2181
进入后
执行 ls /
查看节点列表
如图说明 安装成功。
如果第一次启动storm 失败 此时要进入zookeeper查看是否已经存在storm
如果有,就执行删除 delete /storm
如果storm 的nimbus节点自动成功,而supervisor启动失败 ,记得要进入zookeeper节点的 /storm/supervisors节点下面
看是否有节点存在,如果有就删除了重新 将master的安装包copy到该节点,
如下图是安装正确的storm集群