storm安装文档
1. 安装python
注:默认centos6.5中已经存在python2.6.6,可以使用python –V查看,我的机器默认已存在所以在此我就不安装了,提供步骤如下。
1.1. 上传
用工具上传python安装文件
1.2. 解压
tar –jxvf Python-2.6.6.tar.bz2
1.3. 编译
cd Python-2.6.6
./configure
make
makeinstall
1.4. 测试
命令:python -V
显示:Python 2.6.6
2. 安装zookeeper
略
3. 安装storm
3.1. 上传
用工具将apache-storm-0.9.3.tar.gz上传到linux的/home/hadoop目录
3.2. 解压
su – hadoop
tar –zxvf apache-storm-0.9.3.tar.gz
3.3. 重命名
mv apache-storm-0.9.3 storm
3.4. 修改环境变量
su - root
vi /etc/profile
添加内容:
export STORM_HOME=/home/hadoop/storm export PATH=$STORM_HOME/bin:$PATH |
source /etc/proflie
su - hadoop
3.5. 修改配置文件
3.5.1. storm.yaml
Storm集群使用的Zookeeper集群地址,如果Zookeeper集群使用的不是默认端口,那么还需要storm.zookeeper.port选项。 storm.zookeeper.servers: - "slave1" - "slave2" - "slave3" Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限 storm.local.dir: "/home/hadoop/storm/data" nimbus.host: Storm集群Nimbus机器地址,各个Supervisor工作节点需要知道哪个机器是Nimbus,以便下载Topologies的jars、confs等文件 nimbus.host: "master" supervisor.slots.ports: 对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。默认情况下,每个节点上可运行4个workers,分别在6700、6701、6702和6703端口 supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703 Storm UI的端口: ui.port: 8081 |
3.5.2. 创建文件夹
cd /home/hadoop/storm
mkdir data
chmod 755 data
3.6. 下发安装
su – hadoop
scp –r /home/hadoop/stormhadoop@slave1:/home/hadoop
scp –r /home/hadoop/stormhadoop@slave2:/home/hadoop
scp –r /home/hadoop/stormhadoop@slave3:/home/hadoop
3.7. 启动
启动storm集群前确保zookeeper集群已经启动
3.8. 在master上启动Storm主控节点上Nimbus:
storm nimbus &
查看进程:jps
3.9. 在slave1、slave2、slave3上启动各个工作节点Supervisor
storm supervisor &
查看进程:jps
3.10. 在Storm主控节点master启动UI
storm ui &
查看进程:jps
3.11. 监控
启动后可以通过http://master:8081观察集群的worker资源使用情况、Topologies的运行状态等信息
3.12. 杀死任务
storm kill
3.13. 向集群提交任务
3.13.1. 启动storm Topology
storm jar xxx.jar xxx.xxx.xxx.MyTopologyarg1 arg2
其中,xxx.jar是包含topology实现代码的jar包,xxx.xxx.xxx.MyTopology的main方法是topology的入口,arg是运行时需要的参数。
3.13.2. 停止topology
storm kill topologyName
3.14. QA
过程中如果发现storm ui显示supervisor个数与实际不符的解决
解决方法:在未启动起来的supervisor节点上删除local.dir配置的data文件夹,然后重启supervisor后恢复了。