JStorm集群的部署
JStorm是一个类似Hadoop MapReduce的系统,不同的是JStorm是一套基于流水线的消息处理机制,是阿里基于Storm优化的版本,和Storm一样是一个分布式实时计算的系统,从开发角度来说,JStorm所有的概念和Storm都相同,所有的编程代码一行不用改也可以直接放到JStorm运行,也可以做一些优化,JStorm比Storm更稳定、更强大、更快,去掉了很多耗费资源的代码,在实际生产中表现更是非常突出,所以对于使用Storm计算的应用场景来说升级到JStorm更是简单、低成本,以下使用3台服务器说一下JStorm集群的部署流程
这3台服务器的主机名分别为:bigdata1,bigdata2,bigdata3
准备工作:
1、主机名和hosts映射一一对应,设置完好!
2、防火墙关闭,保证通信畅通
3、Zookeeper集群正常运行
4、Python 2.6以上(系统一般默认都存在)
5、JDK 推荐1.8
接下来在bigdata1上操作安装:
1、释放storm安装包并移动至指定目录:
unzip jstorm-2.1..zip
mv jstorm-2.1. /bigdata/jstorm/
cd /bigdata/jstorm/jstorm-2.1./
现在安装目录是/bigdata/jstorm/jstorm-2.1.1/
2、编辑配置文件,执行 vim conf/storm.yaml 打开配置文件
配置storm.zookeeper.servers为zookeeper地址

storm.zookeeper.root为jstorm在zookeeper的节点名称

去掉nimbus.host的注释,配置nimbus节点为bigdata1

配置storm.local.dir,表示jstorm的临时数据存放目录

去掉supervisor.slots.ports前面的注释,设置supervisor节点执行worker使用的端口列表,默认为68xx,而storm是67xx

一般设置为4个就够了,当worker太多不够时,再增加端口进行扩展
配置完以上几个配置,保存并退出配置文件,另外注意每一项配置必须对齐,这里每一项前面都有一个空格
配置成功之后,执行以下命令,将jstorm整体发送至其他两个节点:
scp -r /bigdata/jstorm/ bigdata2:/bigdata/
scp -r /bigdata/jstorm/ bigdata3:/bigdata/
在当前机器,一般是nimbus,也就是提交jar包的机器上执行如下命令:
mkdir ~/.jstorm
cp /bigdata/jstorm/jstorm-2.1./conf/storm.yaml ~/.jstorm/
建议尽量拷贝storm.yaml配置文件过去,否则可能在启动ui和supervisor之后出现找不到supervisor节点的情况
3、配置storm ui管理界面
首先安装好tomcat,然后将storm安装目录下的jstorm-ui-2.1.1.war复制到tomcat下的webapps中,就相当于tomcat容器中的一个web项目,可以放个软链给ROOT这样jstorm的管理界面就变成tomcat默认项目了,这里为默认项目,进入tomcat的webapps下执行如下命令:
mv ROOT ROOT.old
ln -s jstorm-ui-2.1. ROOT
然后启动tomcat服务器: /usr/local/tomcat/apache-tomcat-8.0./bin/startup.sh
4、启动nimbus和supervisor
在主节点jstorm安装目录下执行: nohup bin/jstorm nimbus & 执行后再次执行回车回到命令行,执行 jps 能看到NimbusServer进程,则nimbus启动成功:

在其他两个节点分别执行: nohup bin/jstorm supervisor & 执行之后,执行 jps 可以看到Supervisor进程,则supervisor启动成功:

访问主节点ip查看管理界面,地址为:http://192.168.0.187:8080/

现在可以看到集群状态,到这里Storm就安装成功并且可以使用了
JStorm集群的部署的更多相关文章
- jstorm集群部署
jstorm集群部署下载 Install JStorm Take jstorm-0.9.6.zip as an example unzip jstorm-0.9.6.1.zip vi ~/.bashr ...
- 分布式实时日志系统(一)环境搭建之 Jstorm 集群搭建过程/Jstorm集群一键安装部署
最近公司业务数据量越来越大,以前的基于消息队列的日志系统越来越难以满足目前的业务量,表现为消息积压,日志延迟,日志存储日期过短,所以,我们开始着手要重新设计这块,业界已经有了比较成熟的流程,即基于流式 ...
- JStorm集群的安装和使用
0 JStorm概述 JStorm是一个分布式的实时计算引擎.从应用的角度,JStorm应用是一种遵守某种编程规范的分布式应用:从系统角度, JStorm是一套类似MapReduce的调度系统: 从数 ...
- Storm集群安装部署步骤【详细版】
作者: 大圆那些事 | 文章可以转载,请以超链接形式标明文章原始出处和作者信息 网址: http://www.cnblogs.com/panfeng412/archive/2012/11/30/how ...
- Redis集群的部署
Redis集群分为主节点Master和从节点Slave,主节点只有1个,而从节点可以有多个,这样从节点和主节点可以进行数据的传输,Redis集群的性能将比单机环境更高,接下来是配置的过程 首先配置Ma ...
- Storm入门教程 第三章Storm集群安装部署步骤、storm开发环境
一. Storm集群组件 Storm集群中包含两类节点:主控节点(Master Node)和工作节点(Work Node).其分别对应的角色如下: 主控节点(Master Node)上运行一个被称为N ...
- Storm集群安装部署步骤
本文以Twitter Storm官方Wiki为基础,详细描述如何快速搭建一个Storm集群,其中,项目实践中遇到的问题及经验总结,在相应章节以"注意事项"的形式给出. 1. Sto ...
- HBase集群安装部署
0x01 软件环境 OS: CentOS6.5 x64 java: jdk1.8.0_111 hadoop: hadoop-2.5.2 hbase: hbase-0.98.24 0x02 集群概况 I ...
- Tomcat集群应用部署的实现机制
集群应用部署是一个很重要的应用场景,设想一下如果没有集群应用部署功能,每当我们发布应用时都要登陆每台机器对每个tomcat实例进行部署,这些工作量都是繁杂且重复的,而对于进步青年的程序员来说是不能容忍 ...
随机推荐
- mysql 时间格式与日期格式转换,去除datetime中的具体时间
DATE_FORMAT(`addtime`,'%Y-%m-%d') 时间格式转成字符串 time_format('1924-01-02', '%Y-%m-%d') 字符串转成时间格式 CONVERT ...
- 再谈 X-UA-Compatible 兼容模式
如何理解 IE 的文档兼容模式(X-UA-Compatible)? IE 浏览器支持多种文档兼容模式,得以因此改变页面的渲染效果. IE9 模式支持全范围的既定行业标准,包括 HTML5(草案), W ...
- web api 处理发送过来的文件(图片)
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.We ...
- 快速切换IP的批处理!
内容如下: @echo off color 1A Title [SMART专用 IP设置V1.0] cls echo. echo SMART专用 IP设置V1.0 %date%%time% echo. ...
- CAN总线 SJA1000中断
背景: 最近一直在使用C8051F340 + SJA1000来实现CAN通信,就SJA1000部分做个记录. 正文: 整个系统结构拓扑图如下: 两路CAN,C8051F340作为CPU,处理CAN与U ...
- MFC线程内获取主窗口句柄
CWnd* h_q = AfxGetApp()->GetMainWnd(); //获取主窗口的句柄
- 21个免费的UI设计工具和资源网站,不管是web,js,android都
本帖最后由 hua631150873 于 2014-9-12 18:26 编辑 Lumzy 官方地址:http://www.lumzy.com/ Lumzy是一个网站应用和原型界面制作工具.使用Lum ...
- iOS开发——UI进阶篇(十七)CALayer,核心动画基本使用
一.CALayer简介 1.CALayer在iOS中,文本输入框.一个图标等等,这些都是UIView你能看得见摸得着的东西基本上都是UIView,比如一个按钮.一个文本标签.一个其实UIView之所以 ...
- 随笔之——各大热门网站search 搜索框的写法,浅析!
随笔之——各大热门网站search 搜索框的写法,浅析! 关于搜索框,写法有很多种,搜索框这一块是一个比较细的活,要先计算好他的高.宽: 下面我就以京东搜索框为例,给大家浅析一下. 上面就是最终s ...
- NSFileManager
//返回一个字符串数组(子路径), 并且不包含文件夹 [[NSFileManager defaultManager] contentsOfDirectoryAtPath:folderPath erro ...