storm 在redhat上的安装配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_41324009/article/details/83998284

storm是实现大数据的实时流计算的工具。

流式计算:使用流计算,数据实时产生,实时传输,实时计算,实时显示。

代表技术:

flume 实时获取数据。Kafka/metag实时数据存储,storm/J storm实时数据计算,redis实时结果缓存,mysql持久化存储。

storm搭建体系结构

storm主要由主节点:nimbus 和从节点supervisor 构成,需要架构在zookeeper上进行实现HA

imbus:负责资源的分配和任务调度;

supervisor:负责接受nimbus的任务,启动和停止自己的worker进程,通过配置当前supervisor,可以确定开几个worker

任务分两种:spout是采集数据,blot是处理数据任务

worker:运行具体处理组建逻辑的进程,任务有两种即上所述

executor:是worker进程中的一个物理线程,

  1. 同一个Spout/Bolt的Task可能会共享一个物理线程,一个Executor中只能运行隶属于同一个Spout/Bolt的Task。

task:每一个spout/blot任务的线程都是一个task,但不同的task会共享一个executor

启动zookeeper:zkServer.sh start  查看状态:zkServer.sh status

进入正题:

首先,下载,解压,配置环境变量

  1. 解压:tar -zxvf apache-storm-1.0.3.tar.gz -C ~/training/

2.设置环境变量

3。编辑配置文件

storm的配置文件在/root/training/apache-storm-1.0.3/conf/storm.yaml

修改效果为:

  1。单点模式(在bigdata111上)

 storm.zookeeper.servers:

- "192.168.52.111"

nimbus.seeds:["192.168.52.111"]

supervisor.slots.ports:

- 6700

- 6701

-6702

-6703

#共四个worker

#配置一个目录。用于nimbus保存任务的元信息和任务(需要事先创建好)

storm.local.dir: "/root/training/apache-storm-1.0.3/tmp"

 2.全分布的模式(三台机器在bigdata112,113,114上 )

   1,首先,需要三台机器全部配置好storm的环境变量

  2.在112上配置文件

只需要改写

storm.zookeeper.servers:

- ''bigdata112''

- "bigdata113"

- "bigdata114"

nimbus.seeds:["bigdata112"]

#HA 时,nimbus.seeds:["bigdata112","bigdata113"]

然后,保存退出。

将112上的配置复制到113,114上去

scp -r apache-storm-1.0.3/ root@bigdata113:/root/training

scp -r apache-storm-1.0.3/ root@bigdata114:/root/training

启动nimbus:storm nimbus &

启动supervisor:storm supervisor &

打开网页版界面:storm ui &

3.运行demo

storm自带demo,在examples文件夹下

storm jar storm-starter-topologies-1.0.3.jar org.apache.storm.starter.WordCountTopology MyWC

然后就可以在UI上看到运行界面

4.若想启用debug

1、如何启用Debug?修改配置文件还是conf /storm.yaml
    "topology.eventlogger.executors": 1    
    
    2、启动日志查看器:storm logviewer &

至此,结束

猜你喜欢

转载自blog.csdn.net/qq_41324009/article/details/83998284