1.从官网下载安装包,并通过Xftp5上传到机器集群上

下载apache-storm-1.2.1.tar.gz 版本,并通过Xftp5上传到hadoop机器集群的第一个节点node1上的/opt/uploads/目录:

2、解压apache-storm-1.2.1.tar.gz,并把解压的安装包移动到/opt/app/目录上

tar zxvf  apache-storm-1.2.1.tar.gz

mv apache-storm-1.2.1 /opt/app/  && cd /opt/app/

3、修改环境变量(每台机器都要执行),编辑/etc/profile,并生效环境变量,输入如下命令:

sudo vi /etc/profile

添加如下内容:

export STORM_HOME=/opt/app/apache-storm-1.2.1
export PATH=:$PATH:$STORM_HOME/bin

使环境变量生效:source /etc/profile

4、zookeeper集群搭建

①下载解压zookeeper:http://zookeeper.apache.org/releases.html

②修改zookeeper的conf/zoo.cfg文件,增加如下内容:

dataDir=/opt/app/zookeeper-3.4.5/data
clientPort=2181
server.1=hadoop1:2888:3888
server.2=hadoop2:2888:3888
server.3=hadoop3:2888:3888

③启动zookeeper集群

在每台机器上通过zookeeper的bin/zkServer.sh  start启动zk,zookeeper会自动组件集群。

6、修改配置文件storm.yaml

进入storm配置文件的目录,cd  /opt/app/apache-storm-1.2.1/conf/

修改storm.yaml文件 vi  storm.yaml,将以下内容写入到storm.yaml文件中

# zookeeper集群的hosts
storm.zookeeper.servers:
    - "hadoop1"
    - "hadoop2"
    - "hadoop3"

# 指定zookeeper的端口
storm.zookeeper.port: 2181

# storm存储的数据目录
storm.local.dir: "/opt/app/apache-storm-1.2.1/storm-local"

# 指定storm集群中的nimbus节点所在的服务器
nimbus.seeds: ["hadoop1"]

# 指定nimbus启动JVM最大可用内存大小
nimbus.childopts: "-Xmx1024m"

# 指定supervisor启动JVM最大可用内存大小
supervisor.childopts: "-Xmx768m"

# 指定ui启动JVM最大可用内存大小,ui服务一般与nimbus同在一个节点上
ui.childopts: "-Xmx768m"

# 指定supervisor节点上,启动worker时对应的端口号,每个端口对应槽,每个槽位对应一个worker
supervisor.slots.ports:
   - 6700
   - 6701
   - 6702
   - 6703

storm.health.check.dir: "healthchecks"

storm.health.check.timeout.ms: 5000

其中storm.local.dir指定的目录需要提前创建,supervisor.slots.ports配置的端口数量决定了每台supervisor机器的worker集群,每个worker会有自己的监听端口用于监听任务。

7、把storm的安装包发送到其他节点机器

scp -r /opt/app/apache-storm-1.2.1/ hadoop@hadoop2:/opt/app/
scp -r /opt/app/apache-storm-1.2.1/ hadoop@hadoop3:/opt/app/

8、启动storm

在hadoop1节点机器上启动nimbus和监控ui

nohup storm nimbus &
nohup storm ui &

在hadoop2和hadoop3节点机器上启动supervisor作为worker

nohup storm supervisor &

9、环境确认

通过浏览器访问ui监控界面,“storm ui”命令运行的机器ip + 默认8080端口,如图:

前提条件:三台机器集群是部署在VMware 12上面的,通过NAT网络通信,如果需要访问虚拟机的8080端口,需要在VMware12上面设置端口转发,如图:

至此,storm集群搭建完成,主要工作为:①zookeeper的安装配置;②storm中配置zookeeper的地址;③分别启动storm的nimbus和supervisor及监控ui。

参考资料:

https://blog.csdn.net/qingkangxu/article/details/79513697

http://storm.apache.org/releases/1.2.1/Setting-up-a-Storm-cluster.html

Storm安装部署的更多相关文章

  1. 【Storm一】Storm安装部署

    storm安装部署 解压storm安装包 $ tar -zxvf apache-storm-1.1.0.tar.gz -C /usr/local/src 修改解压后的apache-storm-1.1. ...

  2. Storm 安装部署

    环境要求JDK 1.6+java -versionPython 2.6.6+python -V ZooKeeper3.4.5+storm 0.9.4+ 单机模式上传解压 $ .tar.gz $ cd ...

  3. Storm集群安装部署步骤【详细版】

    作者: 大圆那些事 | 文章可以转载,请以超链接形式标明文章原始出处和作者信息 网址: http://www.cnblogs.com/panfeng412/archive/2012/11/30/how ...

  4. Storm入门教程 第三章Storm集群安装部署步骤、storm开发环境

    一. Storm集群组件 Storm集群中包含两类节点:主控节点(Master Node)和工作节点(Work Node).其分别对应的角色如下: 主控节点(Master Node)上运行一个被称为N ...

  5. Storm集群安装部署步骤

    本文以Twitter Storm官方Wiki为基础,详细描述如何快速搭建一个Storm集群,其中,项目实践中遇到的问题及经验总结,在相应章节以"注意事项"的形式给出. 1. Sto ...

  6. storm集群安装部署

    安装步骤: 搭建Zookeeper集群: 安装Storm依赖库: 下载并解压Storm发布版本: 修改storm.yaml配置文件: 启动Storm各个后台进程. 1. 搭建Zookeeper集群 这 ...

  7. Storm-0.9.0.1安装部署 指导

    可以带着下面问题来阅读本文章: 1.Storm只支持什么传输 2.通过什么配置,可以更改Zookeeper默认端口 3.Storm UI必须和Storm Nimbus部署在同一台机器上,UI无法正常工 ...

  8. Storm介绍及安装部署

    本节内容: Apache Storm是什么 Apache Storm核心概念 Storm原理架构 Storm集群安装部署 启动storm ui.Nimbus和Supervisor 一.Apache S ...

  9. twitter storm学习 - 安装部署问题汇总

    已经碰到的或者将来碰到的关于安装部署方面的问题以及解决方法,先挖个坑 1.提交的topology在admin界面上看emitted始终都是0,查看日志发现有如下错误: worker [ERROR] E ...

随机推荐

  1. DP及其优化

    常见DP模型及其构造 序列DP ARC074 RGB Sequence 题意 给你一个长度为 \(n\) 的序列和 \(m\) 组约束条件,每组条件形如 \(l_i,r_i,x_i\),表示序列上的 ...

  2. luogu3759 不勤劳的图书管理员 (树状数组套线段树)

    交换的话,只有它们中间的书会对答案产生影响 树状数组记位置,套线段树记书的编号 它对应的页数和书的个数 然后就是减掉中间那些原来是逆序对的,再把交换以后是逆序对的加上 别忘了考虑这两个自己交换以后是不 ...

  3. [SDOI2010]大陆争霸

    幻想历8012年5月12日深夜,斯普林·布拉泽降下神谕:“Trust me, earn eternal life.”克里斯军团士气大增.作为克里斯军团的主帅,你决定利用这一机会发动奇袭,一举击败杰森国 ...

  4. vue2.0项目实战(5)vuex快速入门

    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex 也集成到 Vue 的官方调试工具  ...

  5. java面试——问题回溯

    背景:用来记录面试过程中遇到的问题,在这里进行记录,下次不要犯同样的错误. 迪普科技 Linux服务器下的top命令 #动态更新的虚拟文件实际上是许多其他内存相关工具(如:free / ps / to ...

  6. Django(十四)分页器(paginator)及自定义分页D

    http://www.mamicode.com/info-detail-1724597.html http://www.cnblogs.com/wupeiqi/articles/5246483.htm ...

  7. Codeforces Round #523 (Div. 2) B Views Matter

    传送门 https://www.cnblogs.com/violet-acmer/p/10005351.html 这是一道贪心题么???? 题意: 某展览馆展览一个物品,此物品有n堆,第 i 堆有a[ ...

  8. C和 C++的特点

    C语言进化到C++ 的过程,是一个障眼法的发展过程.1. bool型变量:1个字节变量(和char一样大小),缺省赋值为true(1),false(0)2. 引用型变量:让新申请的变量挂在原有同类型的 ...

  9. TestNg-数据驱动-dataProvider

    参考https://blog.csdn.net/hjianhui24/article/details/50554828 之前的用例自己一笔一划写出来的,知道了数据驱动的概念之后,修改了一下用例. @D ...

  10. HTML学习笔记Day16

    一.CSS 3D 1.什么是3d的场景呢? 2d场景,在屏幕上水平和垂直的交叉线x轴和y轴 3d场景,在垂直于屏幕的方法,相对于2d多出个z轴 Z轴:靠近屏幕的方向是正向,远离屏幕的方向是反向 2.C ...