flume

目录

环境的安装与配置

采集telnet数据并显示到屏幕

采集telnet数据并保存到文件中

Flume和Kafka的组合使用


Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。Flume的运行需要Java的环境支持,因此需要在Window操作系统中安装JDK。

环境的安装与配置

1.配置Java路径:在我的电脑中右键选择属性-高级系统设置-环境变量(高级),在用户系统和环境系统中新建变量,变量名为JAVA_HOME,变量值为C:\Program Files (x86)\Java\jdk1.8.0_201(java中jdk所在路径)

2.检验JAVA打开cmd窗口,检测Java安装路径:where java、查看java的版本:java -version

3.安装Flume将apache-flume-1.9.0-bin.tar.gz文件保存到C盘根目录下,并将该文件重命名为flume

4.检验Flume打开cmd窗口,输入:cd c:/flume/bin切换到路径下,检查是否成功安装:flume-ng version

出现以下代码表示安装成功:

5.安装telnet打开控制面板-程序-启动或关闭Window功能,勾选“Telnet Client”

6.检验telnet打开cmd窗口,输入:cd c:/flume/bin切换到路径下,检查是否成功安装:where telnet

采集telnet数据并显示到屏幕

1.参数配置:在C:\flume\conf的路径下建立一个名为example.conf的文件,内容如下:

# 设置Agent上的各个组件名称

a1.sources = r1

a1.sinks = k1

a1.channels = c1

# 配置Source

a1.sources.r1.type = netcat

a1.sources.r1.bind = localhost

a1.sources.r1.port = 44444

# 配置Sink

a1.sinks.k1.type = logger

# 配置Channel

a1.channels.c1.type = memory

a1.channels.c1.capacity = 1000

a1.channels.c1.transactionCapacity = 100

# 把Source和Sink绑定到Channel上

a1.sources.r1.channels = c1

a1.sinks.k1.channel = c1

2.命令行启动:打开cmd窗口,输入:cd c:/flume,切换路径到flume目录下,输入:.\bin\flume-ng agent --conf .\conf --conf-file .\conf\example.conf --name a1 -property flume.root.logger=INFO,console启动

3.查看情况:另外打开一个cmd窗口,输入:telnet localhost 44444,启动客户端,在该页面在输入内容会在上一个窗口显示(刚进去可能不能输入内容,先按回车后再输入内容)

采集telnet数据并保存到文件中

1.建立文件夹:在C盘根目录下创建一个名为“data”的文件夹

2.参数配置:在C:\flume\conf的路径下建立一个名为exampledir.conf的文件,内容如下:

#配置Agent上的各个组件名称

a1.sources = r1

a1.sinks = k1

a1.channels = c1

# 配置source

a1.sources.r1.type = netcat

a1.sources.r1.bind = localhost

a1.sources.r1.port = 44444

# 配置sink

a1.sinks.k1.type = file_roll

a1.sinks.k1.sink.directory =C:/data#文件输出路径

a1.sinks.k1.sink.rollInterval = 0

a1.sinks.k1.sink.file.name.timeFormat = yyyyMMddHH

# 配置 channel

a1.channels.c1.type = memory

a1.channels.c1.capacity = 1000

a1.channels.c1.transactionCapacity = 100

# 绑定source,channel,sink

a1.sources.r1.channels = c1

a1.sinks.k1.channel = c1

3.命令行启动:打开cmd窗口,输入:cd c:/flume,切换路径到flume目录下,输入:.\bin\flume-ng agent --conf .\conf --conf-file .\conf\exampledir.conf --name a1 -property flume.root.logger=INFO,console启动

4.查看情况:另外打开一个cmd窗口,输入:telnet localhost 44444,启动客户端,在该页面在输入内容(刚进去可能不能输入内容,先按回车后再输入内容),等一分钟之后,会发现c:/data中会出现文件

Flume和Kafka的组合使用

1.配置Flume文件:在C:\flume\conf的路径下建立一个名为kafka.conf的文件,内容如下:

# Name the components on this agent

a1.sources = r1

a1.sinks = k1

a1.channels = c1

# source

a1.sources.r1.type = netcat

a1.sources.r1.bind = localhost

a1.sources.r1.port = 44444

# sink

a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink

a1.sinks.k1.kafka.topic = topic_test

a1.sinks.k1.kafka.bootstrap.servers = localhost:9092

a1.sinks.k1.kafka.flumeBatchSize = 20

a1.sinks.k1.kafka.producer.acks = 1

a1.sinks.k1.kafka.producer.linger.ms = 1

a1.sinks.k1.kafka.producer.compression.type = snappy

# channel

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

2.启动zookeeper:打开cmd命令窗口,用cd c:/kafka命令切换到kafka文件路径下,输入:bin\windows\zookeeper-server-start.bat  config\zookeeper.Properties

3.启动Kafka服务:另外打开一个cmd命令窗口,用cd c:/kafka命令切换到kafka文件路径下,输入:bin\windows\kafka-server-start.bat  config\server.properties

4.创建主题:打开cmd窗口,用cd c:/kafka命令切换到kafka文件路径下,输入:bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic topic_test,会有警告,但是仍然会创建

5.启动Flume:打开cmd窗口,输入:cd c:/flume,切换路径到flume目录下,输入:.\bin\flume-ng agent --conf .\conf --conf-file .\conf\kafka.conf --name a1 -property flume.root.logger=INFO,console启动服务器

6.启动telnet:另外打开一个cmd窗口,输入:telnet localhost 44444,启动客户端,在该页面在输入内容(刚进去可能不能输入内容,先按回车后再输入内容)

7.查看结果:打开一个cmd窗口,用cd c:/kafka命令切换到kafka文件路径下,输入:.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic topic_test --from-beginning,在该窗口可以看到telnet窗口输入的内容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值