flume+kafka+storm单机部署
flume-1.6.0
kafka0.9.0.0
storm0.9.6
一.部署flume
1.解压
tar -xzvf apache-flume-1.6.0-bin.tar.gz -C ../app/
2.在conf目录中添加自己的配置文件,内容是source、sink、channel的配置
cd ../app/apache-flume-1.6.0-bin/conf
新建配置文件flume-directory-kafka.conf,内容如下
# flume-directory-kafka.conf: A single-node Flume configuration
# Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# Describe/configure the source
a1.sources.r1.type = spooldir
a1.sources.r1.channels = c1
a1.sources.r1.spoolDir = /home/koushengrui/flumeDemoLog
a1.sources.r1.fileHeader = true
# Describe the sink
a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
a1.sinks.k1.topic = webService_log
a1.sinks.k1.brokerList = montnets:9092
a1.sinks.k1.requiredAcks = 1
a1.sinks.k1.batchSize = 20
a1.sinks.k1.channel = c1
# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
3.启动flume
必须在bin目录以上级别目录启动,在bin目录启动无效,因为log4j.properties文件在跟bin目录同级的conf目录中
./bin/flume-ng agent --conf conf --conf-file ./conf/flume-directory-kafka.conf --name a1 -Dflume.root.logger=INFO,console
二.部署zookeeper并启动
三.部署kafka
1.解压
tar -xzvf kafka_2.11-0.9.0.0.tgz -C ../app/
2.修改conf目录中的server.properties文件
cd ../app/kafka_2.11-0.9.0.0/config/
vi ./server.properties
broker.id=1
zookeeper.connect=montnets:2181
3.在每一台节点上启动broker
cd ../bin
./kafka-server-start.sh ../config/server.properties
4.查看现有topic的状态
./kafka-topics.sh --list --zookeeper montnets:2181
如果之前有topic的话,此时会显示出来
5.新建对应flume的配置文件的topic webService_log
./kafka-topics.sh --create --zookeeper montnets:2181 --replication-factor 1 --partitions 1 --topic webService_log
6.此时就可以校验flume与kafka是否整合成功了。用一个comsumer从webService_log中读取信息
./kafka-console-consumer.sh --zookeeper montnets:2181 --from-beginning --topic webService_log
在/home/koushengrui/flumeDemoLog目录中添加一个内容如下的名为log1的文件,观察是否在kafka的控制台输出了文件信息。经校验,整合成功。
<EVTCONT>
[{USERID:"用户账号1",MSG:"这里填写xxx帐号离线等详情" }]
</EVTCONT>
四.部署storm
1.解压
tar -xzvf apache-storm-0.9.6.tar.gz -C ../app/
2.修改conf目录下的storm.yaml文件
cd ../app/apache-storm-0.9.6/conf/
vi ./storm.yaml
#所使用的zookeeper集群主机
storm.zookeeper.servers:
- "montnets"
#nimbus所在的主机名
nimbus.host: "montnets"
3.启动storm
分别要启动nimbus及supervisor
在nimbus主机上
./storm nimbus
./storm ui 提供web页面,通过http://montnets:8080/可以访问Storm UI。
在supervisor主机上
./storm supervisor
五.把项目打jar包上传,此处命名jar包为demoTopo,其中入口类(有main方法的类)为com.montnets.test.Entrance
./storm jar ../demoTopo.jar com.montnets.test.Entrance
./storm kill topologyName
flume+kafka+storm单机部署的更多相关文章
- Flume+Kafka+Storm整合
Flume+Kafka+Storm整合 1. 需求: 有一个客户端Client可以产生日志信息,我们需要通过Flume获取日志信息,再把该日志信息放入到Kafka的一个Topic:flume-to-k ...
- Flume+Kafka+storm的连接整合
Flume-ng Flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统. Flume的文档可以看http://flume.apache.org/FlumeUserGuide.html ...
- flume+kafka+storm+mysql架构设计
前段时间学习了storm,最近刚开blog,就把这些资料放上来供大家参考. 这个框架用的组件基本都是最新稳定版本,flume-ng1.4+kafka0.8+storm0.9+mysql (项目是mav ...
- 一次简单的springboot+dubbo+flume+kafka+storm+redis系统
最近无事学习一下,用springboot+dubbo+flume+kafka+storm+redis做了一个简单的scenic系统 scenicweb:展现层,springboot+dubbo sce ...
- 简单测试flume+kafka+storm的集成
集成 Flume/kafka/storm 是为了收集日志文件而引入的方法,最终将日志转到storm中进行分析.storm的分析方法见后面文章,这里只讨论集成方法. 以下为具体步骤及测试方法: 1.分别 ...
- Flume+Kafka+Storm+Hbase+HDSF+Poi整合
Flume+Kafka+Storm+Hbase+HDSF+Poi整合 需求: 针对一个网站,我们需要根据用户的行为记录日志信息,分析对我们有用的数据. 举例:这个网站www.hongten.com(当 ...
- 大数据处理框架之Strom:Flume+Kafka+Storm整合
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 storm-0.9 apache-flume-1.6.0 ...
- Flume+Kafka+Storm+Redis 大数据在线实时分析
1.实时处理框架 即从上面的架构中我们可以看出,其由下面的几部分构成: Flume集群 Kafka集群 Storm集群 从构建实时处理系统的角度出发,我们需要做的是,如何让数据在各个不同的集群系统之间 ...
- flume+kafka+storm
centos06.6+JDK1.7 flume1.4+kafka2.10+storm0.9.3 zookeeper3.4.6 集群: 192.168.80.133 x01 192.168.80.134 ...
随机推荐
- 使用recordmydesktop进行屏幕录像
屏幕录像的功能对于分享游戏攻略.演示电脑软件的操作是必不可少的.在Windows下可能一般的用户就下载盗版的商业软件来做了.而在GNU/Linux操作系统下,则有现成的自由软件可供使用,只不过没有图形 ...
- MSSQL2008 中文乱码问题 (引自ljg888的专栏)
PHP向MSSQL2008中写入数据,中文乱码 首先:查看SQLserver编码格式的SQL语句为: SELECT COLLATIONPROPERTY('Chinese_PRC_Stro ...
- NOIP2013-普及组初赛C语言解析
第十九届全国青少年信息学奥林匹克联赛初赛 一.单项选择题(共 20 题,每题 1.5 分,共计 30 分.每题有且仅有一个正确选项)1. 一个 32 位整型变量占用(A )个字节.A. 4 B. 8 ...
- sendUserActionEvent() mView== null after clicking on button
this is not a problem related to your code, but related to S4 android version. Same question has bee ...
- 找轮转后的有序数组中第K小的数
我们可以通过二分查找法,在log(n)的时间内找到最小数的在数组中的位置,然后通过偏移来快速定位任意第K个数. 此处假设数组中没有相同的数,原排列顺序是递增排列. 在轮转后的有序数组中查找最小数的算法 ...
- drupal7 开发自定义上传、下载模块的上传功能
关键点有两个:1.在页面上显示出上传的控件,2.代码实现文件上传到服务器的功能 一.显示控件: 先来看关键点1: 实现页面显示出上传控件, 关键代码: $form['my_file_field'] = ...
- Weex-语法笔记 一
p.p1 { margin: 0.0px 0.0px 2.0px 0.0px; font: 14.0px "PingFang SC Semibold"; color: #45454 ...
- Android:自定义Dialog大小,显示圆角
经过测试,可以使用. ----------------------------------------------------------- AlertDialog.Builder builder = ...
- 使用Pycharm 安装三方库
除了使用easy_insatll和pip工具安装Python第三方库外还可以使用pycharm安装Python第三方库,步骤如下: 1.打开pycharm,点击File,再点击settings 2.点 ...
- js日期操作时间看板
var nowTime = null;//获取服务器时间function GetTime() { $.ajax({ url:config._domain + "/AjaxAuctionCen ...