【Storm】二、Storm集群部署

大纲:

  1. 集群部署的基本流程
  2. 集群部署的基础环境准备
  3. Storm集群部署
  4. Storm集群的常用操作命令
  5. Storm集群的进程及日志查看

 

1、集群部署的基本流程

 集群部署的流程:下载安装包、解压安装包、修改配置文件、分发安装包、启动集群。

 注意:所有的集群上都需要配置hosts

 vi  /etc/hosts

 192.168.239.128 storm01 zk01 hadoop01

 192.168.239.129 storm02 zk02 hadoop02

 192.168.239.130 storm03 zk03 hadoop03

 

2、集群部署的基础环境准备

安装前的准备工作(zk集群已经部署完毕)

  • 关闭防火墙

       chkconfig iptables off  && setenforce 0

  • 创建用户

       groupadd realtime && useradd realtime && usermod -a -G realtime realtime

  • 创建工作目录并赋权

       mkdir /export

       mkdir /export/servers

       chmod 755 -R /export

  • 切换到realtime用户下

        su realtime

 

3、Storm集群部署

3.1、下载安装包

wget    http://124.202.164.6/files/1139000006794ECA/apache.fayea.com/storm/apache-storm-0.9.5/apache-storm-0.9.5.tar.gz

3.2、解压安装包

tar -zxvf apache-storm-0.9.5.tar.gz -C /export/servers/

cd /export/servers/

ln -s apache-storm-0.9.5 storm

3.3、修改配置文件

mv /export/servers/storm/conf/storm.yaml /export/servers/storm/conf/storm.yaml.bak

vi /export/servers/storm/conf/storm.yaml

输入以下内容

【Storm】二、Storm集群部署

3.4、分发安装包

scp -r /export/servers/apache-storm-0.9.5 storm02:/export/servers

然后分别在各机器上创建软连接

cd /export/servers/

ln -s apache-storm-0.9.5 storm

3.5、启动集群

  • 在nimbus.host所属的机器上启动 nimbus服务

       cd /export/servers/storm/bin/

       nohup ./storm nimbus &

  • 在nimbus.host所属的机器上启动ui服务

       cd /export/servers/storm/bin/

       nohup ./storm ui &

  • 在其它个点击上启动supervisor服务

       cd /export/servers/storm/bin/

       nohup ./storm supervisor &

3.6、查看集群

访问nimbus.host:/8080,即可看到storm的ui界面。

【Storm】二、Storm集群部署

 

4、Storm常用操作命令

有许多简单且有用的命令可以用来管理拓扑,它们可以提交、杀死、禁用、再平衡拓扑。

  • 提交任务命令格式:storm jar 【jar路径】 【拓扑包名.拓扑类名】 【拓扑名称】

bin/storm jar examples/storm-starter/storm-starter-topologies-0.9.6.jar storm.starter.WordCountTopology wordcount

  • 杀死任务命令格式:storm kill 【拓扑名称】 -w 10(执行kill命令时可以通过-w [等待秒数]指定拓扑停用以后的等待时间)

storm kill topology-name -w 10

  • 停用任务命令格式:storm deactivte  【拓扑名称】

storm deactivte topology-name

我们能够挂起或停用运行中的拓扑。当停用拓扑时,所有已分发的元组都会得到处理,但是spouts的nextTuple方法不会被调用。销毁一个拓扑,可以使用kill命令。它会以一种安全的方式销毁一个拓扑,首先停用拓扑,在等待拓扑消息的时间段内允许拓扑完成当前的数据流。

  • 启用任务命令格式:storm activate【拓扑名称】

        storm activate topology-name

  • 重新部署任务命令格式:storm rebalance  【拓扑名称】

        storm rebalance topology-name

        再平衡使你重分配集群任务。这是个很强大的命令。比如,你向一个运行中的集群增加了节点。再平衡命令将会停用拓扑,然后在相应超时时间之后重分配工人,并重启拓扑。

 

5、Storm集群的进程日志查看

5.1、部署成功之后,启动storm集群。

依次启动集群的各种角色

5.2、查看nimbus日志

在nimbus的服务器上

cd /export/servers/storm/logs

tail -100f /export/servers/storm/logs/nimbus.log

5.3、查看ui运行日志信息

在ui的服务器上,一般和nimbus一个服务器

cd /export/servers/storm/logs

tail -100f /export/servers/storm/logs/ui.log

5.4、查看supervisor运行日志信息

在supervisor服务上

cd /export/servers/storm/logs

tail -100f /export/servers/storm/logs/supervisor.log

5.5、查看supervisor上worker运行日志信息

在supervisor服务上

cd /export/servers/storm/logs

tail -100f /export/servers/storm/logs/worker-6702.log

【Storm】二、Storm集群部署