Storm运行依赖于如下软件
- ZeroMQ
- JzMQ
- Zookeeper
- Python
- gcc编译环境
本文在Centos7上对Storm进行伪分布式安装,首先安装依赖的软件
安装Python和gcc
Centos7已经默认安装Python,在终端可以直接使用python命令查看版本
Centos7已经默认安装gcc,可终端可以使用gcc命令查看版本
安装Zookeeper3.4.6
1. 下载zookeeper3.4.6,http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
2. tar xzvf zookeeper-3.4.6.tar.gz
3. sudo vim /etc/profile
export ZOOKEEPER_HOME=/home/hadoop/software/zookeeper-3.4.6 export $ZOOKEEPER_HOME:$PATH
4. cp /home/hadoop/software/zookeeper-3.4.6/conf/zoo_sample.cfg /home/hadoop/software/zookeeper-3.4.6/conf/zoo.cfg
5. 编辑zoo.cfg,
data_dir=/home/hadoop/software/zookeeper-3.4.6/data
安装ZeroMQ4.0.5
wget http://download.zeromq.org/zeromq-4.0.5.tar.gz tar -zvxf zeromq-4.0.5.tar.gz cd zeromq-4.0.5/ ./configure sudo make sudo make install
安装JzMQ
sudo yum install git git clone git://github.com/nathanmarz/jzmq.git cd jzmq/ ##没有touch这一步有可能在make的时候报如下错:*** No rule to make target `org/zeromq/ZMQException.class, needed by `all'. Stop. touch src/classdist_noinst.stamp sudo make sudo make install ##如果在make install的时候报找不到org/zeromq/ZMQ$Context.class则需要编译java类 cd src/org/zeromq javac *.java ###重新make和install sudo make sudo make install
安装Storm
wget http://mirror.bit.edu.cn/apache/storm/apache-storm-0.9.3/apache-storm-0.9.3.tar.gz tar xzvf apache-storm-0.9.3.tar.gz sudo vim /etc/profile export STORM_HOME=/home/hadoop/software/apache-storm-0.9.3 export PATH=$STORM_HOME/bin source /etc/profile
配置Storm
vim /home/hadoop/software/apache-storm-0.9.3/conf/storm.yaml
在对文件进行配置时,要注意格式,高亮显示
1. 配置Zookeeper的服务器地址
storm.zookeeper.servers: - "127.0.0.1"
2. 配置nimbus的地址
nimbus.host: "127.0.0.1"
3. 配置storm.local.dir
storm.local.dir: /home/hadoop/software/apache-storm-0.9.3/stormlocaldir
4. 配置Supervisor slots ports
supervisor.slots.ports: - 6700 - 6701 - 6702 - 6703
启动Storm
1. 启动Zookeeper
$ZOOKEEPER_HOME/bin/zkServer.sh start
2. 启动Storm nimbus
bin/storm nimbus
3. 启动Storm supervisor
bin/storm supervisor
Storm启动后,在$STORM_HOME/logs目录下会有生成两个日志文件,nimbus.log和supervisor.log,日志的最后一行分别显示Starting Storm Nimbus...和Staring Storm Supervisor,在启动中似乎意味着Storm并未启动,实际上Storm已经启动。可以通过jps查看可以看到两个进程
61308 supervisor 61124 nimbus
运行Storm实例
1. 在Storm的安装目录中自带了一系列的Storm例子代码和打包好的jar包,其中包括最著名的WordCount实例,将它cp到bin目录下,
cp /home/hadoop/software/apache-storm-0.9.3/examples/storm-starter/storm-starter-topologies-0.9.3.jar /home/hadoop/software/apache-storm-0.9.3/bin/storm-starter-topologies-0.9.3.jar
2. 使用如下命令启动storm版本的WordCount实例
./storm jar storm-starter-topologies-0.9.3.jar storm.starter.WordCountTopology WordCountTopology
3. 程序开始执行后,在logs目录下产生了三个日志文件
worker-6701.log
worker-6702.log
worker-6703.log
4. 使用tail -f 观察它们的输出,如下是输出片段,
查看Storm任务运行情况
1. 使用如下命令查看当前正在运行的Topology
./storm list
结果如下:
Topology_name Status Num_tasks Num_workers Uptime_secs ------------------------------------------------------------------- WordCountTopology ACTIVE 28 3 431
2. 强杀一个正在执行的Topology
./storm kill WordCountTopology
执行结果:
Topology_name Status Num_tasks Num_workers Uptime_secs ------------------------------------------------------------------- WordCountTopology KILLED 28 3 527
Storm命令参数集合
Commands: activate classpath deactivate dev-zookeeper drpc help jar kill list localconfvalue logviewer monitor nimbus rebalance remoteconfvalue repl shell supervisor ui version
Storm UI
使用./storm ui启动UI进行后,可以访问http://localhost:8080来查看Storm的运行状态,部分截图如下图所示:
参考:http://shiyanjun.cn/archives/241.html
相关推荐
二、基于storm+kafka完成商品访问次数实时统计拓扑的开发 ================================ maven构建出的一些问题,直接从maven中央仓库可能下载不到jar包,自己去百度一下jar,下载下来 根据错误提示,拷贝到...
storm分布式实时计算,集成durid,zookeeper,hadoop等
Storm是Twitter开源的分布式实时大数据处理框架,被业界称为实时版Hadoop
Storm分布式实时计算模式由Apache Storm 项目核心贡献者吉奥兹、奥尼尔亲笔撰 写,融合了作者丰富的Storm实战经验,通过大量示例,全面而系统地讲解使用Storm进行分布式实 时计算的核心概念及应用,并针对不同的应用...
Storm分布式实时计算在物联网系统中的应用
storm, 分布式和容错实时计算 重要的笔记 !风暴已经转移到了 Apache 。 官方的Storm git仓库现在由Apache托管,并在github上镜像:https://github.com/apache/incubator-storm通过 sumittin
基于Storm的分布式流计算集群详细配置
#资源达人分享计划#
Storm是一个开源分布式实时计算系统,它可以实时可靠地处理流数据。在Storm出现之前,进行实时处理是非常痛苦的事情,我们主要的时间都花在关注往哪里发消息,从哪里接收消息,消息如何序列化,真正的业务逻辑只占了...
Hadoop伪分布式配置 25 启动Hadoop 26 运行Hadoop伪分布式实例 30 启动YARN 35 附加教程: 配置PATH环境变量 37 使用Eclipse编译运行MapReduce程序(Hadoop-Eclipse-Plugin,建议) 38 使用Eclipse打包自己的...
最近利用闲暇时间,又重新研读了一下Storm。认真对比了一下Hadoop,前者更擅长...Storm本身是Apache托管的开源的分布式实时计算系统,它的前身是TwitterStorm。在Storm问世以前,处理海量的实时数据信息,大部分是类似
Apache Storm(apache-storm-2.3.0.tar.gz) 是一个免费的开源分布式实时计算系统。Apache Storm 可以轻松可靠地处理无限制的数据流,实时处理就像 Hadoop 进行批处理一样。Apache Storm 很简单,可以与任何编程语言...
Apache Storm(apache-storm-2.3.0-src.tar.gz 源码) 是一个免费的开源分布式实时计算系统。Apache Storm 可以轻松可靠地处理无限制的数据流,实时处理就像 Hadoop 进行批处理一样。Apache Storm 很简单,可以与...
微服务架构的分布式事务解决方案 Dubbo分布式服务框架视频教程+redis+zookeeper+storm+mycat 资源为百度云连接+密码
Storm是一个开源的分布式实时计算系统,可以简单、可靠的处理大量的数据流。 Storm有很多使用场景:如实时分析,在线机器学习,持续计算,分布式RPC,ETL等等。 Storm支持水平扩展,具有高容错性,保证每个消息...
Storm是目前流行的分布式实时流计算框架之一,它提供了可容错分布式计算所要求的基本需求和保障机制,可以满足高吞吐 ,实时的关键业务应用的需求。在编写基于Storm的分布式计算应用时,我们首先需要创建一个拓扑...
《storm实时数据处理》通过丰富的实例,系统讲解Storm的基础知识和实时数据处理的最佳实践方法,内容涵盖Storm本地开发环境搭建、日志流数据处理、Trident、分布式远程过程调用、Topology在不同编程语言中的实现方法...
《大数据技术丛书:Storm实时数据处理》通过丰富的实例,系统讲解Storm的基础知识和实时数据处理的最佳实践方法,内容涵盖Storm本地开发环境搭建、日志流数据处理、Trident、分布式远程过程调用、Topology在不同...
#资源达人分享计划#
行业分类-设备装置-一种基于Storm平台的分布式数字标牌广告投放方法