Storm集群的安装配置
Storm集群的安装分为以下几步:
1、首先保证Zookeeper集群服务的正常运行以及必要组件的正确安装
2、释放压缩包
3、修改storm.yaml添加集群配置信息
4、使用storm脚本启动相应服务并查看服务状态
5、通过web查看storm集群的状态
安装Storm之前首先保证之前安装的Zookeeper服务正常运行,包括配置hosts映射,主机名修改,防火墙都已经设置完好
Storm是由java编写,因此必须依赖JDK运行,系统首先应正确安装JDK
部分需要依赖Python,红帽系列Linux默认Python版本是2.6.6,可以满足要求;Linux可以安装多个版本Python共存,生产过程中建议Python版本为2.7.x
这里测试使用的三台虚拟机主机名分别是:hadoopha,hadoop1,hadoop2
首先去Apache Storm官网下载安装包,网址是:http://storm.apache.org/,进入后点击上方DOWNLOAD按钮,进入下载列表

这里下载的是storm 0.9.5的版本,下载之后上传到服务器目录下,释放并且放到指定的目录:
$ tar -xvzf apache-storm-0.9..tar.gz
$ mv apache-storm-0.9. /usr/
$ cd /usr/apache-storm-0.9.
接下来需要修改配置文件storm.yaml,执行vim conf/storm.yaml打开文件:
去掉storm.zookeeper.servers:前面的注释,修改为集群中所有部署zookeeper的主机,当然都可以自己手动添加,具体配置如下:

增加storm.local.dir选项,指定nimbus,supervisor进程用于存储少量的状态数据,比如jar包,配置文件等

待会写好配置文件我们需要手动建立这个目录
下面指定supervisor工作节点,需要配置该节点可以运行的worker数量,每个worker占用一个端口用于接收消息,最多分配5个;默认情况下每个节点可以运行4个worker,分别在6700、6701、6702、6703端口,这里定义3个端口,代表最多运行3个worker:

下面设置集群主机,让集群中所有的节点可以从主机下载拓扑以及配置文件,主机上运行的就是nimbus,而其他节点就是supervisor进程,这里hadoopha为nimbus,而hadoop1和hadoop2为supervisor,所以配置如下:

下面配置storm集群的drpc地址,这里就是hadoopha,实际中可以自己定义:

最后配置storm进程的分配内存,默认情况下Storm启动worker进程时,JVM的最大内存是768M,由于在使用过程中,Bolt中加载大量数据,768M内存无法满足要求,会导致内存溢出,应该根据实际情况进行修改,这里设置为2G

以上设置没问题,保存配置文件并退出
然后在3台主机分别创建上面设置的数据目录,必须都要创建:
mkdir -p /usr/data/storm
上面的配置是在hadoopha上配置的,接下来要把storm目录发送到hadoop1和hadoop2:
$ scp -r apache-storm-0.9. hadoop1:/usr/
$ scp -r apache-storm-0.9. hadoop2:/usr/
发送之后,进入storm安装目录,开始启动相应服务
首先启动Nimbus服务,只在hadoopha上执行:
nohup bin/storm nimbus >> /dev/null &
上面命令的意思是丢弃输出信息并且放到后台执行,稍微等一下,执行jps查看nimbus进程是否启动:

然后在hadoop1,hadoop2节点都启动Supervisor服务:
nohup bin/storm supervisor >> /dev/null &
稍等一下,也可以用jps查看到supervisor进程,
然后在配置drpc的主机hadoopha,drpc是一种后台服务,用于执行和storm相同的计算,但是比较节省资源,一般和nimbus使用同一台主机即可;执行以下命令启动drpc服务:
nohup bin/storm drpc >> /dev/null &
稍等一下可以分别通过jps命令查看到drpc进程,
最后在nimbus节点也就是hadoopha执行以下命令,启动UI服务:
nohup bin/storm ui >> /dev/null &
通过jps可以查看core进程是否启动,启动之后通过访问hadoopha的ip即可进入web管理界面:http://192.168.1.42:8080

到这里基本的storm集群就配置完毕了
Storm集群的安装配置的更多相关文章
- Storm 系列(三)Storm 集群部署和配置
Storm 系列(二)Storm 集群部署和配置 本章中主要介绍了 Storm 的部署过程以及相关的配置信息.通过本章内容,帮助读者从零开始搭建一个 Storm 集群. 一.Storm 的依赖组件 1 ...
- Storm系列(一)集群的安装配置
安装前说明: 必须先安装zookeeper集群 该Storm集群由三台机器构成,主机名分别为chenx01,chenx02,chenx03,对应的IP分别为192.168.1.110,192.168. ...
- storm集群部署和配置过程详解
先整体介绍一下搭建storm集群的步骤: 设置zookeeper集群 安装依赖到所有nimbus和worker节点 下载并解压storm发布版本到所有nimbus和worker节点 配置storm ...
- Storm集群的安装与测试
首先安装zookeeper集群,然后安装storm集群. 我使用的是centos 32bit的三台虚拟机. MachineName ip namenode 192.168.99.110 datanod ...
- storm集群的安装
storm图解 storm的基本概念 Topologies:拓扑,也俗称一个任务 Spoults:拓扑的消息源 Bolts:拓扑的处理逻辑单元 tuple:消息元组,在Spoults和Bolts传递数 ...
- Hadoop实战4:MapR分布式集群的安装配置及shell自动化脚本
MapR的分布式集群安装过程还是很艰难的,远远没有计划中的简单.本人总结安装配置,由于集群有很多机器,手动每台配置是很累的,编写了一个自动化配置脚本,下面以脚本为主线叙述(脚本并不完善,后续继续完善中 ...
- zookeeper集群环境安装配置
众所周知,Zookeeper有三种不同的运行环境,包括:单机环境.集群环境和集群伪分布式环境 在此介绍的是集群环境的安装配置 一.下载: http://apache.fayea.com/zookeep ...
- 第十二章 Ganglia监控Hadoop及Hbase集群性能(安装配置)
1 Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点.每台计算机都运行一个收集和发送度量数据(如处理器速度.内存使用量等)的名为 gm ...
- kafka_2.11-0.10.1.1集群搭建安装配置
在搭建kafka集群之前,请保证zookeeper已安装. 1.下载 官网下载链接:http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/0.10.1.1/ ...
随机推荐
- Oracle的DBMS_OUTPUT.PUT_LINE用法及脚本批处理方法
打印至控制台(无显示): BEGIN DBMS_OUTPUT.PUT_LINE('Hey look, ma!'); END; / 打印至控制台(有显示): SET SERVEROUTPUT ON BE ...
- charles使用教程指南
文章转自:http://drops.wooyun.org/tips/2423 安装charles 下载路径:http://www.charlesproxy.com/download/ 如果是ubunt ...
- lua 学习
尽管所有的脚本语言在特定领域都有自己的一席之地,但在游戏开发的世界里,Python 和 Lua 是非常适合的,因为它们可以直接调用C++的功能. lua最让人惊喜的地方应该是它的执行速度,目前没有任何 ...
- php从零开始
吐槽:今天开始撸PHP了,从此前端少了个小白,PHP多了个小白... 本白从3年前陆陆续续开始一会儿撸会儿PHP一会儿撸前端.前端撸的比较多,PHP撸的比较少,当然本白撸php大多都是被逼的!! 然后 ...
- 字符编码-UNICODE,GBK,UTF-8区别【转转】
字符编码介绍及不同编码区别 今天看到这篇关于字符编码的文章,抑制不住喜悦(总结的好详细)所以转到这里来.转自:祥龙之子http://www.cnblogs.com/cy163/archive/2007 ...
- R-数据导入
目录 键盘输入 导入文本文件 导入Excel文件 访问数据库管理系统 键盘输入 > mydata <- data.frame(age=numeric(0), gender=characte ...
- solr多条件查询(一)
每个项目的数据结构可能不同,查询的格式有可能不同,本项目所有的字段为动态的,所以整理了一下, 1.查询所有字段中包含”测试“但是所有的TM不包含”江苏大学“ q:X_1457955996315KEY: ...
- Hadoop 面试题redis
Hadoop 面试题之十 548.redis有什么特别之处,为什么用redis,用hbase 不行么? 答:redis 是基于内存的数据库,速度快 551.redis用什么版本? 3.0以上才支持集群 ...
- PHP array_multisort() 函数详解 及 二维数组排序(模拟数据表记录按字段排序)
一.先看最简单的情况. 有两个数组: $arr1 = array(1, 9, 5); $arr2 = array(6, 2, 4); array_multisort($arr1, $arr2); pr ...
- mysql-mysql悲观锁和乐观锁
1.mysql的四种事务隔离级别 I. 对于同时运行多个事务,当这些事务访问数据库中的相同数据时,如果没有采取必要的隔离机制,就会导致各种并发问题. (1)脏读: 对于两个事物 T1, T2, T1 ...