storm集群安装部署
2017-09-24 00:00
253 查看
1.storm集群架构
storm利用了分布式系统中经典的master/slave架构主控节点:这里称之为nimbus,负责在集群分发任务(Topology)的代码以及监控等。
工作节点:这里称之为Supervisor,工作节点跟传动主从不同之处在于,其并不是自己直接执行任务。在接受到一个任务的时候,Supervisor会启动一个或多个进程(称之为worker),来处理任务。所以实际上,任务最终都是分配到了worker上。
2.storm集群环境的搭建
需要一下环境:zookeeper集群
java 6 以上
Python 2.6.6 以上
ZMQ 2.1.7
JZMQ
1.安装zookeeper集群:
Storm使用Zookeeper协调集群,由于Zookeeper并不用于消息传递,所以Storm给Zookeeper带来的压力相当低。大多数情况下,单个节点的Zookeeper集群足够胜任,不过为了确保故障恢复或者部署大规模Storm集群,可能需要更大规模节点的Zookeeper集群。具体安装步骤这里不做描述。2.java安装:
下载jdk包 解压,配置环境变量。具体步骤这里不做描述。3.Python安装:
下载:wget http://www.python.org/ftp/python/2.6.6/Python-2.6.6.tar.bz2[/code] 解压安装:tar –jxvf Python-2.6.6.tar.bz2 cd Python-2.6.6 ./configure make make install
测试:$ python -V Python 2.6.64.ZMQ安装:
下载解压安装:wget http://download.zeromq.org/zeromq-2.1.7.tar.gz tar -xzf zeromq-2.1.7.tar.gz cd zeromq-2.1.7 ./configure make sudo make install
安装过程中可能会发现需要安装其他类库,我这里面安装时提示需要uuid,安装即可yum install libuuid-devel5.JZMQ安装:
git clone https://github.com/nathanmarz/jzmq.git cd jzmq ./autogen.sh ./configure make sudo make install3. 安装storm
1. 下载解压
安装完成所需的依赖之后,我们终于可以安装storm。根据开发的软件选择合适版本的storm安装。这里选择的是storm-0.9.7发布版
下载解压:wget http://mirror.bit.edu.cn/apache/storm/apache-storm-0.9.7/apache-storm-0.9.7.tar.gz tar -xvzf apache-storm-0.9.7.tar.gz2.配置
配置conf/storm.yaml文件,storm有默认配置文件,storm.yaml中的配置项会覆盖默认配置,通过以下链接可以查看默认配置:https://github.com/apache/storm/blob/master/conf/defaults.yaml
这里需要修改的配置项有(每一个配置项前面要留一个空格):
storm.zookeeper.servers: Storm集群使用的Zookeeper集群地址storm.zookeeper.servers: - "192.168.1.112" - "192.168.1.113"
storm.local.dir: Nimbus和Supervisor进程用于存储少量状态,如jars、confs等的本地磁盘目录,需要提前创建该目录并给以足够的访问权限。storm.local.dir: "/opt/storm/data"
nimbus.host: Storm集群Nimbus机器地址.nimbus.host: "192.168.1.112"
supervisor.slots.ports: 对于每个Supervisor工作节点,需要配置该工作节点可以运行的worker数量。每个worker占用一个单独的端口用于接收消息,该配置选项即用于定义哪些端口是可被worker使用的。默认配置有4端口可用,如果需改变或更多可以进行配置。supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703
ui.port: storm为我们提供了一个后台程序,可以监控资源运行状态,该端口配置用于我们访问管理页面。http://192.168.1.111:8088/index.htmlui.port: 80883.启动后台进程
Nimbus: 在Storm主控节点上运行"bin/storm nimbus >/dev/null 2>&1 &"启动Nimbus后台程序,并放到后台执行;
Supervisor: 在Storm各个工作节点上运行"bin/storm supervisor >/dev/null 2>&1 &"启动Supervisor后台程序,并放到后台执行;
UI: 在Storm主控节点上运行"bin/storm ui >/dev/null 2>&1 &"启动UI后台程序,并放到后台执行,启动后可以通过http://{nimbus host}:8080观察集群的worker资源使用情况、Topologies的运行状态等信息。
可以在logs目录下查看每个后台程序的启动日志。4.提交Topology到集群中
提交命令storm jar path/to/allmycode.jar(jar包路径) path.main.class(主类main) arg1 arg2 arg3(main方法参数)
这里提交命令:./apache-storm-0.9.7/bin/storm jar Getting-Started-0.0.1-SNAPSHOT-jar-with-dependencies.jar sfpay.TopologyMain wordcountapp
查看运行状态:./bin/storm listTopology_name Status Num_tasks Num_workers Uptime_secs ------------------------------------------------------------------- wordcountapp ACTIVE 4 1 3707
相关文章推荐
- Storm集群安装部署步骤
- storm-(1)集群安装及部署
- Storm集群安装部署步骤【详细版】<转>
- Storm集群安装部署步骤【详细版】
- Storm学习笔记-集群环境安装部署
- Storm集群安装部署步骤【详细版】
- Storm集群安装部署步骤【详细版】
- Storm集群安装部署详细手册
- Storm集群安装部署步骤【详细版】
- Storm集群安装部署步骤【详细版】
- Storm集群安装部署步骤【详细版】
- storm集群安装部署
- Storm集群安装部署步骤
- Storm集群安装部署步骤【详细版】
- Storm集群环境安装部署
- storm集群的安装和部署
- Storm集群安装部署步骤【详细版】
- Storm集群安装部署步骤【详细版】
- Storm笔记整理(三):Storm集群安装部署与Topology作业提交
- storm 集群 安装 部署