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集群的安装配置的更多相关文章

  1. Storm 系列(三)Storm 集群部署和配置

    Storm 系列(二)Storm 集群部署和配置 本章中主要介绍了 Storm 的部署过程以及相关的配置信息.通过本章内容,帮助读者从零开始搭建一个 Storm 集群. 一.Storm 的依赖组件 1 ...

  2. Storm系列(一)集群的安装配置

    安装前说明: 必须先安装zookeeper集群 该Storm集群由三台机器构成,主机名分别为chenx01,chenx02,chenx03,对应的IP分别为192.168.1.110,192.168. ...

  3. storm集群部署和配置过程详解

      先整体介绍一下搭建storm集群的步骤: 设置zookeeper集群 安装依赖到所有nimbus和worker节点 下载并解压storm发布版本到所有nimbus和worker节点 配置storm ...

  4. Storm集群的安装与测试

    首先安装zookeeper集群,然后安装storm集群. 我使用的是centos 32bit的三台虚拟机. MachineName ip namenode 192.168.99.110 datanod ...

  5. storm集群的安装

    storm图解 storm的基本概念 Topologies:拓扑,也俗称一个任务 Spoults:拓扑的消息源 Bolts:拓扑的处理逻辑单元 tuple:消息元组,在Spoults和Bolts传递数 ...

  6. Hadoop实战4:MapR分布式集群的安装配置及shell自动化脚本

    MapR的分布式集群安装过程还是很艰难的,远远没有计划中的简单.本人总结安装配置,由于集群有很多机器,手动每台配置是很累的,编写了一个自动化配置脚本,下面以脚本为主线叙述(脚本并不完善,后续继续完善中 ...

  7. zookeeper集群环境安装配置

    众所周知,Zookeeper有三种不同的运行环境,包括:单机环境.集群环境和集群伪分布式环境 在此介绍的是集群环境的安装配置 一.下载: http://apache.fayea.com/zookeep ...

  8. 第十二章 Ganglia监控Hadoop及Hbase集群性能(安装配置)

    1 Ganglia简介 Ganglia 是 UC Berkeley 发起的一个开源监视项目,设计用于测量数以千计的节点.每台计算机都运行一个收集和发送度量数据(如处理器速度.内存使用量等)的名为 gm ...

  9. kafka_2.11-0.10.1.1集群搭建安装配置

    在搭建kafka集群之前,请保证zookeeper已安装. 1.下载 官网下载链接:http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/0.10.1.1/ ...

随机推荐

  1. Oracle的DBMS_OUTPUT.PUT_LINE用法及脚本批处理方法

    打印至控制台(无显示): BEGIN DBMS_OUTPUT.PUT_LINE('Hey look, ma!'); END; / 打印至控制台(有显示): SET SERVEROUTPUT ON BE ...

  2. charles使用教程指南

    文章转自:http://drops.wooyun.org/tips/2423 安装charles 下载路径:http://www.charlesproxy.com/download/ 如果是ubunt ...

  3. lua 学习

    尽管所有的脚本语言在特定领域都有自己的一席之地,但在游戏开发的世界里,Python 和 Lua 是非常适合的,因为它们可以直接调用C++的功能. lua最让人惊喜的地方应该是它的执行速度,目前没有任何 ...

  4. php从零开始

    吐槽:今天开始撸PHP了,从此前端少了个小白,PHP多了个小白... 本白从3年前陆陆续续开始一会儿撸会儿PHP一会儿撸前端.前端撸的比较多,PHP撸的比较少,当然本白撸php大多都是被逼的!! 然后 ...

  5. 字符编码-UNICODE,GBK,UTF-8区别【转转】

    字符编码介绍及不同编码区别 今天看到这篇关于字符编码的文章,抑制不住喜悦(总结的好详细)所以转到这里来.转自:祥龙之子http://www.cnblogs.com/cy163/archive/2007 ...

  6. R-数据导入

    目录 键盘输入 导入文本文件 导入Excel文件 访问数据库管理系统 键盘输入 > mydata <- data.frame(age=numeric(0), gender=characte ...

  7. solr多条件查询(一)

    每个项目的数据结构可能不同,查询的格式有可能不同,本项目所有的字段为动态的,所以整理了一下, 1.查询所有字段中包含”测试“但是所有的TM不包含”江苏大学“ q:X_1457955996315KEY: ...

  8. Hadoop 面试题redis

    Hadoop 面试题之十 548.redis有什么特别之处,为什么用redis,用hbase 不行么? 答:redis 是基于内存的数据库,速度快 551.redis用什么版本? 3.0以上才支持集群 ...

  9. PHP array_multisort() 函数详解 及 二维数组排序(模拟数据表记录按字段排序)

    一.先看最简单的情况. 有两个数组: $arr1 = array(1, 9, 5); $arr2 = array(6, 2, 4); array_multisort($arr1, $arr2); pr ...

  10. mysql-mysql悲观锁和乐观锁

    1.mysql的四种事务隔离级别 I. 对于同时运行多个事务,当这些事务访问数据库中的相同数据时,如果没有采取必要的隔离机制,就会导致各种并发问题. (1)脏读: 对于两个事物 T1, T2, T1 ...