3.Storm搭建及深入

本文详细介绍了如何搭建Storm集群,包括下载安装、配置环境、启动与关闭等步骤,并深入探讨了Storm的总体架构,包括nimbus、supervisor、worker与task的关系。此外,文章还讨论了Storm的容错机制,包括心跳形式、架构容错和数据容错,以及如何实现ack机制确保数据的正确处理。最后,文章提到了Storm开发中的一些实践,如配置参数对系统性能的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、Storm搭建

1. 下载安装包

#Master
wget http://mirror.bit.edu.cn/apache/storm/apache-storm-0.9.7/apache-storm-0.9.7.tar.gz
tar zxvf apache-storm-0.9.7.tar.gz

2. 修改Storm配置文件

I.搭建步骤

#Master
cd apache-storm-0.9.7/conf
vim storm.yaml
#vim /usr/local/src/apache-storm-0.9.3/conf/storm.yaml
文件名:storm.yaml
#【冒号后面、“-”后面有空格】
storm.zookeeper.servers:
- "master"
- "slave1"
- "slave2"
nimbus.host: "master"

storm.local.dir: "/tmp/storm/storm_data"

supervisor.slots.ports:
 - 6700
 - 6701
 - 6702
 - 6703
 - 6704
 - 6705

II.理论

  • Storm.local.dir:首先任务上传给nimbus,Nimbus得到任务后通知zookeeper(可以帮你存一些信息,并且可以代劳将任务分配出去)。supervisor感应到zookeeper有新任务的话,supervisor会通过zookeeper得到nimbus地址和目录。这时supervisor通过zookeeper的提示去从nimbus上面取Storm.local.dir位置的jar包和数据等。
  • Storm.local.dir
  • Nimbus.host:指明主的地址
  • Supervisor.slots.ports,指明从的地址以及从有几个进程:
    • 有点像mapreduce中的slot,但这slot完全与你的机器硬件相关,但是可以通过配置去配。
    • 可以配置进程:几个port,就几个worker。
    • 先把进程worker通过这种提示去提前创建出来,用不用是另外一回事,让这进程先跑着。一旦有新的任务时,这个进程就开始工作。好处是因为进程可以提前创建,这样可以减少启动的一些消耗。
  • Ui.port:
    • 通过页面去监控
      在这里插入图片描述

3. 配置环境变量

#Master、Slave1、Slave2
vim ~/.bashrc
#set Storm environment
export STORM_HOME=/usr/local/src/apache-storm-0.9.7
export PATH=$PATH:$STORM_HOME/bin
#刷新环境变量
source ~/.bashrc

4. 拷贝安装包

#Master
scp -r /usr/local/src/apache-storm-0.9.7 root@slave1:/usr/local/src/apache-storm-0.9.7
scp -r /usr/local/src/apache-storm-0.9.7 root@slave2:/usr/local/src/apache-storm-0.9.7

5.1. 启动Storm

I.master创建启动脚本

#master
vim /usr/local/src/apache-storm-0.9.7/bin/start-storm-master.sh

#修改内容如下
/usr/local/src/apache-storm-0.9.7/bin/storm nimbus &
/usr/local/src/apache-storm-0.9.7/bin/storm ui &
/usr/local/src/apache-storm-0.9.7/bin/storm logviewer &
# python /usr/local/src/apache-storm-0.9.7/bin/storm nimbus &
# python /usr/local/src/apache-storm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值