storm集群的搭建

本文详细介绍了storm集群的搭建过程,包括Nimbus、Supervisor和Worker等核心组件的职责,以及storm的基本概念如Topology、Spout和Bolt。在搭建过程中,涉及到zeromq的安装,解决依赖包问题,安装jzmq和Python,最后配置并启动storm服务。

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

一、storm基本概念

Nimbus:负责资源分配和任务调度。

Supervisor: 负责接受nimbus分配的任务,启动和停止属于自己管理的worker进程。

Worker:运行具体处理组件逻辑的进程。worker中每一个spout/bolt 的线程称为一个task。该线程称为executor。

Topology:storm的一个实时应用程序。

Spout:在一个topology中产生源数据流的组件。

Bolt:在一个topology中接受数据然后执行处理的组件。

Tuple:一次消息传递的基本单元。

二、storm搭建

1、安装 zeromq-2.1.7

tar  -zxvf  zeromq-2.1.7.tar.gz

cd   zeromq-2.1.7

一般都不会一次性成功,还要:

2、解决一些依赖包的问题

yum install gcc 

yum install gcc-c++

yum install uuid*

yum install e2fsprogs

yum install ncurses

后面编译zeromq还是不行的话:

就下载安装util-linux-2.21

tar -zxf util-linux-2.21.tar.gz

cd util-linux-2.21

./configure

make

make install

cd zeromq-2.1.7

./configure

make

3、安装jzmq

tar -zxvf jzmq.tar.gz

cd jzmq

./autogen.sh

./configure

make

make install

4、安装Python-2.6.6

tar -zxvf Python-2.6.6.tar.gz

cd Python-2.6.6

./configure

make

make install

5、正式安装storm

tar -zxvf apache-storm-0.10.0.tar.gz

mv apache-storm-0.10.0 storm-0.10.0

cd storm-0.10.0/

cd conf/

vi storm.yaml

########### These MUST be filled in for a storm configuration
# storm.zookeeper.servers:
#     - "server1"
#     - "server2"
storm.zookeeper.servers:
- "bd1"
- "bd2"
- "bd3"
# 
# nimbus.host: "nimbus"
nimbus.host: "bd1"
# 
# 
# ##### These may optionally be filled in:
#    
## List of custom serializations
# topology.kryo.register:
#     - org.mycompany.MyType
#     - org.mycompany.MyType2: org.mycompany.MyType2Serializer
#
## List of custom kryo decorators
# topology.kryo.decorators:
#     - org.mycompany.MyDecorator
#
## Locations of the drpc servers
# drpc.servers:
#     - "server1"
#     - "server2"

## Metrics Consumers
# topology.metrics.consumer.register:
#   - class: "backtype.storm.metric.LoggingMetricsConsumer"
#     parallelism.hint: 1
#   - class: "org.mycompany.MyMetricsConsumer"
#     parallelism.hint: 1
#     argument:
#       - endpoint: "metrics-collector.mycompany.org"
storm.local.dir=: "/usr/local/storm-0.10.0/workdir"
supervisor.slots.ports:
- 6700
- 6701
- 6702
- 6703

cd storm-0.10.0/

mkdir workdir

开启storm 主节点

#!/bin/sh
storm nimbus >/dev/null 2>&1 &
sleep 2
storm ui >/dev/null 2>&1 &	
storm 监控页面 : http://master:8080

开启从节点

#!/bin/sh
storm supervisor >/dev/null 2>&1 &

root@bd1$ jps
2655 QuorumPeerMain
3651 nimbus
2860 core
3324 Jps
root@bd2$ jps
5630 supervisor
3420 Jps
3960 QuorumPeerMain

搞完收工,回家睡觉!哈哈哈





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值