Strom开发配置手册
一:Storm集群搭建
1.本次开发使用的是storm0.9.3
2.Storm0.9.3集群搭建:
1)storm集群角色包含集群主节点Nimbus;集群从节点Supervisor
2)集群安装:先安装zookeeper集群;上传storm安装包到服务器;修改配置文件;启动集群
3)集群安装前,需要修改主机名称配置IP:vi/etc/hosts
关闭服务器之间的防火墙:
执行如下命令:
service iptables save service iptables stop chkconfig iptables off service ip6tables save service ip6tables stop chkconfig ip6tables off |
4)Zookeeper安装过程:
1.上传zk安装包
2.解压
3.配置(先在一台节点上配置)
3.1添加一个zoo.cfg配置文件
$ZOOKEEPER/conf
mv zoo_sample.cfg zoo.cfg
3.2修改配置文件(zoo.cfg)
dataDir=/bigdata/zookeeper-3.4.5/data
server.1=bigdata227:2888:3888
server.2=bigdata228:2888:3888
server.3=bigdata229:2888:3888
3.3在(dataDir=/bigdata/zookeeper-3.4.5/data)创建一个myid文件,里面内容是server.N中的N(server.2里面内容为2)
server那个点之后的数字是几,就在myid文件中写入几(比如server.1=bigdata227:2888:3888),那么在bigdata227,这台服务器中的zk文件目录下的data文件夹下创建的myid文件内容就是1
3.4将配置好的zk拷贝到其他节点
scp -r /bigdata/zookeeper-3.4.5/ bigdata228:/bigdata/
scp -r /bigdata/zookeeper-3.4.5/ bigdata229:/bigdata/
3.5注意:在其他节点上一定要修改myid的内容
在bigdata228应该讲myid的内容改为2 :在bigdata228,这台服务器中的zk文件目录下的data文件夹下创建的myid文件内容就是2
在bigdata229应该讲myid的内容改为3 :在bigdata229,这台服务器中的zk文件目录下的data文件夹下创建的myid文件内容就是3
4.启动集群
分别启动zk
./zkServer.sh start
使用./zkServer.sh status 可以查看启动zk的启动状态
5)上传storm0.9.3 解压
6)Cd到/bigdata/apache-storm-0.9.3/conf,修改storm.yaml配置文件
增加storm.zookeeper.server:
Nimbus.host
然后保存退出,把storm文件传至bigdata228、bigdata229两台主机
7)启动集群:
先启动nimbus:
Cd到 nimbus(bigdata227) storm的bin目录执行:
./storm nimbus 1>/dev/null 2>&1 &
还可以启动一个web服务进程
./storm ui 1>/dev/null 2>&1 &
然后切换到bigdata228、bigdata229
启动各节点中的supervisor:
Cd 到storm的bin 目录 执行:
./storm supervisor 1>/dev/null 2>&1 &
到此storm集群搭建完成!!
二:stormDemo项目说明
数据库
实时表:
Day表:
该demo程序是简单的一个day天的归集统计,归集电压的一天总和,后续存储过程开发可以再次基础上进行
项目主要的数据源是从数据库中读取:
Storm包中是对从数据库中读取的数据进行业务逻辑处理
类的说明:
RandomSpout是获取数据源并传递给DayBolt,以后存储过程可以设计MonthBolt、YearBolt等等
类TopoMain类是组合类,也是主类,spout和bolt的设置都在这里面
注意:
//单机开发模式
LocalCluster cluster = new LocalCluster();
cluster.submitTopology("demotopo", conf, topo);
//集群模式:提交topo到storm的集群中
//StormSubmitter.submitTopology("demotopo", conf, topo);
如果是单机开发模式,则可以像运行Java application一样在本机运行
如果想部署到集群,首先把项目打成jar包,传到nimbus所在的服务器,然后切换到storm的bin目录,执行:./storm jar /bigdata/xxx.jar cn.zhangshitong.TopoMain 前面是jar包的位置,后面是jar包中的主类
Nimbus就会把任务分发给supervisor了
Strom开发配置手册的更多相关文章
- Mac 开发配置手册
转自:http://www.cocoachina.com/mac/20141112/10198.html 手册内容为「如何让一部全新的 MacBook 快速完成开发环境配置」,主要面向 Web 开发者 ...
- Mac开发配置手册
系统设置 在任何的操作系统中,首先你需要做一件事就是更新系统,点击窗口左上角的 > 关于本机 > 软件更新.此外,如果这是一部新的电脑,你还需要到系统设置进行一些适当调整.如何调整,取 ...
- EF for MySql 开发配置手册
执行MySQL安装程序,安装MySQL For Visual Studio和Connector/NET 执行命令: Install-Package EntityFramework Install-Pa ...
- JavaWEB开发时FCKeditor类似office界面的ajax框架,加入后就能做界面类似office,能进行简单的文本编辑操作+配置手册...
2019独角兽企业重金招聘Python工程师标准>>> FCKeditor是一款功能强大的开源在线文本编辑器(DHTML editor),它使你在web上可以使用类似微软Word 的 ...
- 嵌入式linux应用开发完全手册学习笔记一
2015.3.25星期三 晴 有两个星期没写学习日记了,找个时间把这段时间做的电子词典和ARM小项目总结一下. 下面的知识点总结,U-BOOT:参考PDF文档:嵌入式linux应用开发完全手册 当虚拟 ...
- nginx1.9.4 +php 5.5.29+yii2.0配置手册
nginx1.9.4 +php 5.5.29+yii2.0配置手册 目录 一. php5.5.29安装配置 2 二. nginx1.9.4安装配置 2 三. yii2.0 ...
- API接口开发 配置、实现、测试
Yii2 基于RESTful架构的 advanced版API接口开发 配置.实现.测试 环境配置: 开启服务器伪静态 本处以apache为例,查看apache的conf目录下httpd.conf,找到 ...
- linux服务器基本安全配置手册
转:忘了在哪转的,直接复制到笔记里了,贴出来分享 假如你想要搭建一个Linux服务器,并且希望可以长期维护的话,就需要考虑安全性能与速度等众多因素.一份正确的linux基本安全配置手册就显得格外重要. ...
- Webpack 5 配置手册(从0开始)
针对新手入门搭建项目,Webpack5 配置手册(从0开始) webpack安装顺序 1. `npm init -y`,初始化包管理文件 package.json 2. 新建src源代码目录 3. 新 ...
随机推荐
- iOS一段文字设置多种颜色格式
调用 [self fuwenbenLabel:contentLabel FontNumber:[UIFont systemFontOfSize:] AndRange:NSMakeRange(, ) A ...
- Delphi、Lazarus保留字、关键字详解
Delphi.Lazarus保留字.关键字详解 来自橙子,万一的博客以及其他地方 保留字:变量等标识符可以再使用: 关键字:有特定含义,不能再次重新定义: 修饰字:类似保留字的功能,也就是说可以重用 ...
- MySQL连接、登录、密码等
官方教程:https://dev.mysql.com/doc/refman/8.0/en/ 链接数据库,通过指定 -h 参数可以连接网络上的数据库 mysql -u 用户名 -h 服务器IP -P 端 ...
- Spring ApplicationContext(五)invokeBeanFactoryPostProcessors
Spring ApplicationContext(六)BeanPostProcessor 产生回顾一下 ApplicationContext 初始化的几个步骤:第一步是刷新环境变量:第二步是刷新 b ...
- ajax异步请求该嵌套还是并列?
因为要查询两个数据库表才能确定我所需要的数据范围,所以前台js得发两次ajax请求.问题就是,这两个请求是嵌套着写:{发,接{发,接}}:还是并列着写:{发,接},{发,接} 好? 答案:如果2次aj ...
- mapreduce的输入格式 --- InputFormat
InputFormat 接口决定了mapreduce如何切分输入文件. InputFormat 由getspilit和createRecordReader组成,getspilit主要是标记分片的初始位 ...
- 用windows计划任务执行一些内容的写法,
用windows计划任务执行一些内容的写法, 以下示例: 1.创建ws对象 2.关闭java进程 3.执行bat文件 start.vbe文件内容 set ws=wscript.createobject ...
- Alpha 冲刺 (4/10)
队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作 协助前后端接口的开发 测试项目运行的服务器环 ...
- (20)The most mysterious star in the universe
https://www.ted.com/talks/tabetha_boyajian_the_most_mysterious_star_in_the_universe/transcript00:12E ...
- B-论文一些好的句子
Due to high design and test costs for real many-core chips, simulators which allow exploring the bes ...