一 、storm安装配置
1、storm1.1.1 下载地址
http://storm.apache.org
2、三台服务器名称
192.168.20.86 master
192.168.20.32 slave1
192.168.20.124 slave2
3、具体安装配置
1).在主节点192.168.20.86的/usr/tools/storm路径下解压storm压缩文件: tar -zxvf apache-storm-1.1.1.tar.gz
2).配置环境变量:vim /etc/profile
##STORM
export STORM_HOME=/usr/tools/storm/apache-storm-1.1.1
export PATH=$STORM_HOME/bin:$PATH
3).使修改生效:
source /etc/profile
4).在apache-storm-1.1.1的conf目录下面,编辑storm.yaml文件,在末尾添加:
#zk服务节点
storm.zookeeper.servers:
- "192.168.20.191"
- "192.168.20.192"
- "192.168.20.193"
#zk端口号
storm.zookeeper.port: 2181
#存放数据目录,要自己创建
storm.local.dir: "/usr/tools/storm/apache-storm-1.1.1/data"
#nimbus所在机子
nimbus.host: "192.168.20.191"
ui.port: 8888
#storm集群的drpc地址
drpc.servers:
- "192.168.20.191"
#配置storm进程的分配内存
worker.childopts: "-Xmx2048m"
#supervisor工作进程端口号
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703
#注意:以上配置,凡是有冒号的地方,冒号后都要有个空格。
5).配置完以后将上述内容全部拷贝到另外两台服务的相同位置
scp -r /usr/tools/storm/apache-storm-1.1.1 root@slave1:/usr/tools/storm/
scp -r /usr/tools/storm/apache-storm-1.1.1 root@slave2:/usr/tools/storm/
/etc/profile环境变量用scp或者手动修改一致。
6). 启动storm ui、nimbus和supervisor【bin路径下执行】
master上启动nimbus和storm ui:
storm nimbus &和storm ui &和storm logviewer &
slave1和slave2上启动supervisor: storm supervisor &
访问ui页面: http://192.168.20.191:8888
界面简单介绍:
- Used slots:使用的worker数。
- Free slots:空闲的worker数。
- Executors:每个worker的物理线程数。
7).停止要用命令:kill -9 端口号
二 、Storm集群启动与停止脚本及其注意事项
1、新建sh脚本
在 /usr/tools/storm/apache-storm-1.1.1/bin目录下新建:
touch start-all-storm.sh
#!/bin/bash
#nimbus节点
nimbusServers='master'
#supervisor节点
supervisorServers='slave1 slave2'
#启动所有的nimbus
for nim in $nimbusServers
do
ssh -T $nim <<EOF
source /etc/profile
cd \$STORM_HOME
bin/storm nimbus >/dev/null 2>&1 &
EOF
echo 主节点 $nim 启动nimbus...[ done ]
sleep 1
done
#启动所有的ui
for u in $nimbusServers
do
ssh -T $u <<EOF
source /etc/profile
cd \$STORM_HOME
bin/storm ui >/dev/null 2>&1 &
EOF
echo 主节点 $u 启动ui...[ done ]
sleep 1
done
#启动所有的supervisor
for visor in $supervisorServers
do
ssh -T $visor <<EOF
source /etc/profile
cd \$STORM_HOME
bin/storm supervisor >/dev/null 2>&1 &
EOF
echo 从节点 $visor 启动supervisor...[ done ]
sleep 1
done
touch stop-all-storm.sh
#!/bin/bash
#nimbus节点
nimbusServers='master'
#supervisor节点
supervisorServers='slave1 slave2'
#停止所有的nimbus和ui
for nim in $nimbusServers
do
echo 主节点 $nim 停止nimbus和ui...[ done ]
ssh $nim "kill -9 `ssh $nim ps -ef | grep nimbus | awk '{print $2}'| head -n 1`" >/dev/null 2>&1
ssh $nim "kill -9 `ssh $nim ps -ef | grep core | awk '{print $2}'| head -n 1`" >/dev/null 2>&1
done
#停止所有的supervisor
for visor in $supervisorServers
do
echo 从节点 $visor 停止supervisor...[ done ]
ssh $visor "kill -9 `ssh $visor ps -ef | grep supervisor | awk '{print $2}'| head -n 1`" >/dev/null 2>&1
done
2、授权
chmod +x *.sh
3、启动或停止(./start-all-storm.sh和./stop-all-storm.sh)
4、可视化(http://192.168.20.86:8888)