Flume安装部署,采集方案配置文件编写案例,启动agent采集数据
1.2 Flume实战案例
1.2.1 Flume的安装部署
1、Flume的安装非常简单,只需要解压即可,当然,前提是已有hadoop环境
上传安装包到数据源所在节点上
然后解压 tar -zxvf apache-flume-1.6.0-bin.tar.gz,最终解压到的位置是:/home/tuzq/software/apache-flume-1.6.0-bin
然后进入flume的目录,修改conf下的flume-env.sh,在里面配置JAVA_HOME
2、根据数据采集的需求配置采集方案,描述在配置文件中(文件名可任意自定义)
3、指定采集方案配置文件,在相应的节点上启动flume agent
先用一个最简单的例子来测试一下程序环境是否正常
1、先在flume的conf目录下新建一个文件
vi netcat-logger.conf(这个是我们自己定义的采集方案的配置文件)
#定义这个agent中各组件的名字 ##表示agent中的source组件 a1.sources = r1 ##表示的是下沉组件sink a1.sinks = k1 ##agent内部的数据传输通道channel,用于从source将数据传递到sink a1.channels = c1 #描述和配置source组件:r1 ##netcat用于监听一个端口的 a1.sources.r1.type = netcat ##配置的绑定地址,这个机器的hostname是hadoop1,所以下面也可以配置成hadoop1 a1.sources.r1.bind = localhost ##配置的绑定端口 a1.sources.r1.port = 44444 #描述和配置sink组件:k1 a1.sinks.k1.type = logger ##描述和配置channel组件,此处使用时内存缓存的方式 #下面表示的是缓存到内存中,如果是文件,可以使用file的那种类型 a1.channels.c1.type = memory #表示用多大的空间 a1.channels.c1.capacity = 1000 #下面表示用事务的空间是多大 a1.channels.c1.transactionCapacity = 100 # 描述和配置source channel sink之间的连接关系,因为source和sink依赖channel来传递数据,所以要分别指定用的是哪个channel。 a1.sources.r1.channels = c1 a1.sinks.k1.channel = c1
2、启动agent去采集数据
bin/flume-ng agent -c conf -f conf/netcat-logger.conf -n a1 -Dflume.root.logger=INFO,console
-c conf 指定flume自身的配置文件所在目录
-f conf/netcat-logger.con 指定我们所描述的采集方案
-n a1 指定我们这个agent的名字(是配置文件中写的那个agent)
3、测试
先要往agent采集监听的端口上发送数据,让agent有数据可采
随便在一个能跟agent节点联网的机器上
telnet anget-hostname port (telnet hadoop1 44444)
在telnet终端上输入内容,最后回到打开的agent,发现有内容输出,输出的内容如下:
综上所述:说明flume已经安装配置成功!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
一个伟大愿景:让深度学习更简单
更多深度文章,请关注:https://yq.aliyun.com/cloud 当15年前推出MapReduce时,它展示了整个世界对于未来的不屑一瞥。硅谷科技公司的工程师第一次可以分析整个互联网。然而,MapReduce提供了非常低级API,结果使这个“超级力量”成为了奢侈品,只有极少数的高学历的,有很多资源的工程师才可以使用它。 今天,深度学习已经达到了“MapReduce”当时的地位:它已经显示出了很大潜力,它是人工智能的“超级力量”。它的力量在过去的几年创造的价值很让人吃惊,例如:自动驾驶汽车和AlphaGo这些都被认为是奇迹。 然而,今天利用深度学习的超级力量与过去的大数据一样具有挑战性。深度学习框架由于低级API而具有陡峭的“学习曲线”;扩展分布式硬件需要大量的人工工作;即使是大量的时间和资源的结合,深度学习实现成功也需要繁琐的工作和实验参数。因此深度学习也通常被称为“黑魔法”。 七年前,我们开始了一个Spark项目,其目标是通过提供高级API和统一的引擎来实现机器学习,ETL,流式传输和交互式SQL,从而实现“大众化”大数据的“超级力量”的目标。今天,Apache Spar...
- 下一篇
[Spark]Spark RDD 指南四 RDD操作
Spark2.3.0版本:Spark2.3.0 RDD操作 RDD支持两种类型的操作: 转移(transformations):从现有数据集创建一个新数据集 动作(actions):在数据集上进行计算后将值返回给驱动程序 例如,map是一个转移操作,传递给每个数据集元素一个函数并返回一个新RDD表示返回结果。 另一方面,reduce是一个动作操作,使用一些函数聚合RDD的所有元素并将最终结果返回给驱动程序(尽管还有一个并行的reduceByKey返回分布式数据集)。 在 Spark 中,所有的转换操作(transformations)都是惰性(lazy)的,它们不会马上计算它们的结果。相反的,它们仅仅记录转换操作是应用到哪些基础数据集(例如一个文件)上的(remember the transformations applied to some base dataset )。只有当动作(action)操作 需要返回一个结果给驱动程序的时候, 转换操作才开始计算。 这个设计能够让 Spark 运行得更加高效。例如,我们可以知道:通过 map 创建的新数据集将在 reduce 中使用,并且仅...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS7设置SWAP分区,小内存服务器的救世主