2023_Spark_实验二十九:Flume配置KafkaSink

2023-12-19

实验目的:掌握Flume采集数据发送到Kafka的方法

实验方法:通过配置Flume的KafkaSink采集数据到Kafka中

实验步骤:

一、明确日志采集方式

一般Flume采集日志source有两种方式:

1.Exec类型的Source

可以将命令产生的输出作为源,如:

a1.sources.r1.type = exec

a1.sources.r1.command = ping 10.3.1.227 //此处输入命令

2.Spooling Directory类型的 Source

将指定的文件加入到“自动搜集 ”目录中。flume会持续监听这个目录,把文件当做source来处理。注意:一旦文件被放到“自动收集”目录中后,便不能修改,如果修改,flume会报错。此外,也不能有重名的文件,如果有,flume也会报错。

a1.sources.r1.type = spooldir

a1.sources.r1.spoolDir = /home/work/data

向指定的文件目录下传送一个日志文件,发现flume的控制台打印相关的信息;此外,待收集的文件,会追加一个后缀:completed,表示已处理完。

3.确定采集策略:

采用exec方式采集数据

如果采用spooldir的方式来监控log文件夹,flume会采集log数据,flume会不断修改文件名,导致重复。

所以使用exec命令行的方式,通过tail -F *.log命令比较好!

注意: -F根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪。 而-f根据文件的nodeid即文件描述符进行追踪,当文件改名或被删除,追踪停止 。

二、配置KafkaSink

Flume版本多,网上教程多,版本之间不兼容,推荐大家以Flume官网为准。

Exec Source

Kafka Sink

三、配置Flume配置文件

1. 拷贝一份配置文件模板

cp flume-conf.properties.template kafka.conf

2. 编辑kafka.conf

kafka.conf编辑内容如下

# 定义a2配置文件中每个组件的名称
a2.sources = execSrc
a2.channels = memoryChannel
a2.sinks = loggerSink

# 配置source组件
# For each one of the sources, the type is defined
a2.sources.execSrc.type = exec
a2.sources.execSrc.command = tail -F /home/hadoop/scripts/realtime/realdata.log

# 配置sink组件
# Each sink's type must be defined
a2.sinks.loggerSink.type = org.apache.flume.sink.kafka.KafkaSink
a2.sinks.loggerSink.kafka.topic = RealDataTopic
a2.sinks.loggerSink.kafka.bootstrap.servers = hd1:9092
a2.sinks.loggerSink.kafka.flumeBatchSize = 20
a2.sinks.loggerSink.kafka.producer.acks = 1
a2.sinks.loggerSink.kafka.producer.linger.ms = 1
a2.sinks.loggerSink.kafka.producer.compression.type = snappy

# 配置缓存方式
# Each channel's type is defined.
a2.channels.memoryChannel.type = memory
a2.channels.memoryChannel.capacity = 1000
a2.channels.memoryChannel.transactionCapacity = 100

# 配置source channel sink之间的连接关系
# The channel can be defined as follows.
a2.sources.execSrc.channels = memoryChannel
a2.sinks.loggerSink.channels = memoryChannel

3. 启动测试

/opt/module/apache-flume-1.9.0-bin/bin/flume-ng agent -c conf -f /opt/module/apache-flume-1.9.0-bin/conf/kafka.conf -n a2 -Dflume.root.logger=INFO,console

实验结果:配置kafkaSink成功,配置source为exec读取shell脚本模拟产生的实时数据

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2023_Spark_实验二十九:Flume配置KafkaSink 的相关文章

随机推荐

  • 鸿蒙开发之页面路由(router)

    页面路由 router 页面路由指在应用程序中实现不同页面之间的跳转和数据传递 HarmonyOS提供了Router模块 通过不同的url地址 可以方便地进行页面路由 轻松地访问不同的页面 本文将从 页面跳转 页面返回 和 页面返回前增加一
  • 北京机器视觉技术的商业化应用与市场趋势分析

    随着科技的快速发展 机器视觉技术已经逐渐成为工业自动化 智能制造等领域的重要技术之一 北京作为中国的科技创新中心 其机器视觉技术的发展和应用也备受关注 本文将分析北京机器视觉技术的商业化应用以及市场趋势 一 商业化应用 工业自动化 机器视觉
  • 更新升级 | iTOP-RK3588开发板手册分类详解

    迅为iTOP RK3588开发板配套手册升级 因为开发资料众多 目前手册资料已达2700 页 为了方便大家更快速上手使用开发板 迅为iTOP RK3588开发板配套手册按功能性分为了13大类 如下所示 1快速定位 每个分类下包含了对应主题的
  • C++ STL(2)--算法(1)

    算法 1 STL里的查找函数 主要分顺序查找和二分查找 一 顺序查找9个 元素若是对象必须支持 运算符 1 find 用于在指定范围内查找和目标元素值相等的第一个元素 find 函数除了可以作用于序列式容器 还可以作用于普通数组 代码示例
  • 美创出席“智能计算产业链合作大会”,见证浙江省智能硬件创新能力中心启动

    近日 由浙江省经济和信息化厅 杭州市人民政府和之江实验室指导下 浙江省 十链百场万企 系列对接活动之 智能计算产业链合作大会 在杭州未来科技城国际会议中心举行 浙江省经信厅党组成员 副厅长 一级巡视员厉敏 杭州市政府党组成员 副市长孙旭东
  • 年前去面了 6 家大厂,拿下 5 家 offer,进大厂好像也没有那么难吧......

    前言 十一月份的时候因为换工作的缘故 陆续参加了华为 阿里巴巴 字节跳动 拼多多 百度 Paypal 的社招面试 除了字节跳动流程较长 我主动结束面试以外 其他的都顺利拿到了 Offer 最近时间稍微宽裕点了 写个面经 希望对大家找工作有所
  • AI原创文章在线生成工具:颠覆你的写作体验

    1 引言 身为热爱数码科技的爱好者 我始终对人工智能技术有着浓厚兴趣 近日 我偶然得知有一款名为 AI原创文章在线生成工具 的实用神器 据称能够自动生成各类主题的文章 为确认它的实证性及可信度 我亲身进行了一次细致的测评与比较 2 实用性评
  • fedora 38 39 内核编译与安装

    sudo yum install kernel devel ncurses devel openssl 缺包裹自己按上就可以 首先编译内核 make menuconfig 配置界面 在 config 里找到 CONFIG DEBUG INF
  • fedora 通过sysctl.conf配置内核

    linux 一切皆文件 所以配置内核的地方也是文件 需要配置的目录 proc sys 修改文件的地方在 etc sysctl conf 例如 我们配置网络 让icmp包裹停止接收 net ipv4 icmp echo ignore all
  • 充电器如何测试?有哪些测试参数?用电源模块自动化测试系统测试需要哪些步骤?

    充电器测试参数 1 输入 输出电压测试 通过万用表或者其它精密测试设备测量充电器的输入 输出电压测试 检测输入 输出电压是否在规定范围内 以免造成设备损坏 2 输入 输出电流测试 测试充电器的输入 输出电流 确保其符合设计要求 提供稳定的输
  • AMBA协议王者归来:揭秘AHB&APB设计奥秘

    AMBA协议已经成为业界的事实标准 因此在市场上有大量可重用的AMBA兼容IP核 IC工程师掌握这些总线 可以更容易地集成来自不同供应商的IP核 降低开发成本 缩短产品上市时间 AMBA 高级微处理器总线架构 定义了高性能嵌入式微控制器的通
  • Todesk突然高速通道使用已结束

    今天使用Todesk直接报出如下错误 好像对于海外用户需要付费购买海外会员 大家有没有什么可以替换的远程控制软件的吗 能分享一下吗
  • 怎么检测DC-DC电源模块稳定性?电源测试系统测试有什么优势?

    DC DC电源模块稳定性测试 稳定性是衡量DC电源模块的重要指标 电源模块的稳定性直接影响着电源产品和设备的工作稳定性 DC DC电源模块的稳定性 可以通过检测输出电压 输出电流 负载 波形 效率等参数来评估 1 静态测试方法 静态测试是通
  • 搭建电子商务网站建设步骤

    随着目前电子商务网站开发技术的迭代 电商网站的交互设计得到了很大程度的提升 可以认为现在的新型的商城平台都呈现出交互效果 那么电子商务网站建设步骤包括什么呢 电子商务网站建设第一步 网站的规划与设计 电子商务网站算是一个比较复杂的系统 电商
  • 如何在Linux系统中删除文件或目录?

    Linux作为流行的操作系统之一 许多公司和组织都在使用Linux来运行其关键业务和服务 例如谷歌 亚马逊和Facebook等 在Linux中 删除文件和目录是基本操作 那么该如何实现这一功能呢 以下是详细的内容 一 使用命令行删除文件 如
  • 渗透测试报告怎么写?

    1 准备好渗透测试记录 测试记录是执行过程的日志 在每日测试工作结束后 应将当日的成果做成记录 虽然内容不必太过细致 但测试的重点必须记录在案 拟检测的项目 使用的工具或方法 检测过程描述 检测结果说明 过程的重点截图 有结果的画面 2 撰
  • 什么是深度学习的无监督学习与有监督学习

    无监督学习 深度学习中的无监督学习方法是一种训练算法 它在没有标注输出的情况下从输入数据中学习模式和特征 这种方法的核心是探索和理解数据的内在结构和分布 而不是通过已知的输出来指导学习过程 无监督学习在深度学习领域有许多不同的形式和应用 以
  • binlog日志,二进制日志的简介

    binlog的bin就暴露了他是二进制的文件 你用vi或者vim是没办法读的 得用专门的方式 比如mysqlbinlog工具 那么binlog其实只要了解几点应该就足够了 Q 首先 binlog记录的是啥呢 A 记录的是数据库的修改过程 注
  • 2023_Spark_实验二十八:Flume部署及配置

    实验目的 熟悉掌握Flume部署及配置 实验方法 通过在集群中部署Flume 掌握Flume配置 实验步骤 一 Flume简介 Flume是一种分布式的 可靠的和可用的服务 用于有效地收集 聚合和移动大量日志数据 它有一个简单灵活的基于流数
  • 2023_Spark_实验二十九:Flume配置KafkaSink

    实验目的 掌握Flume采集数据发送到Kafka的方法 实验方法 通过配置Flume的KafkaSink采集数据到Kafka中 实验步骤 一 明确日志采集方式 一般Flume采集日志source有两种方式 1 Exec类型的Source 可