23_Flume高级_Channel选择器副本机制(案例测试)

本文介绍了如何配置和测试Apache Flume进行数据传输,特别是使用复制机制将数据发送到多个目的地。首先强调了Flume配置中的默认复制机制,并指出在开启多Agent时的顺序重要性,应先开启下游Agent。接着,详细阐述了创建源数据目录、启动Agent进程的步骤,以及在数据源添加内容后,如何检查HDFS和本地目录以验证数据传输的成功。整个流程展示了Flume如何实现数据的多目的地同步传输。
摘要由CSDN通过智能技术生成

在这里插入图片描述
我们需要在flume1里面设置选择器为复制机制。
其实也可以不用写,因为,它是默认的。
所以将这句话复制在flume1.conf里面。
在这里插入图片描述
开始测试了:
1、开启多个窗口,因为到时候开启多个agent都是阻塞的进程。
在这里插入图片描述
2、分多层,我们开flume有顺序吗?
尽量,先开下游flume。
现在我们先测试:先开上游,也就是先开flume1
结论是:有点问题,可以看日志数据。
先到flume的los里面查看日志信息
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
然后一直按换行键,这样做一个标记。
在这里插入图片描述
3、在每个窗口进入flume的根目录
在这里插入图片描述
4、加载flum1.conf配置文件:
在这里插入图片描述
在这里插入图片描述
但是通过日志信息发现两个端口都拒绝连接了
在这里插入图片描述
在这里插入图片描述
对于avro 的这样的框架来说,第二层avro source相当于服务端。
正常情况下,一个客户端,一个服务端,肯定先开服务端。
所以这时候把刚开的agent关掉
在这里插入图片描述
记住:source是服务端!!!
后面跨机器通信,ip地址就不能乱写了。
现在正式测试的时候。就先开flume2和flume3了
1、做一下准备工作。
从flume1.conf里面查看到我们监控的变动文件的目录是:
在这里插入图片描述
再从flume3.conf看一下最后输出的数据放在的目录:
在这里插入图片描述
我们自己去创建这两个目录:
先创建源数据的目录:/opt/module/data/hive.log在这里插入图片描述
进入到data目录。
在这里插入图片描述
创建hive.log文件。
2、分别开启agent进程,需要先开启下游,在开启上游,否则会报错。
创建好源数据之后。开启另外一个agent进程,加载flume2.conf
在这里插入图片描述
在这里插入图片描述
开启另外一个agent进程,加载flume3.conf
在这里插入图片描述
在这里插入图片描述

最后启动agent进程,加载flume1.conf
在这里插入图片描述
现在三个agent都已经成功的启动起来了。

3、在/opt/module/data/hive.log源数据中追加数据,开始测试
在这里插入图片描述
在hive.log文件中追加hello atguigu两条数据。

4、去hdfs上查看是否数据已经上传上来了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
30s之后会更新。
在这里插入图片描述

5、再去查看本地文件是否已经有数据了。
进去目录:/opt/module/datas/group1
在这里插入图片描述
在这里插入图片描述
它和hdfs有不同的地方:
hdfs里面:30s滚动一次,如果下30s没有新文件,就不会滚动了。
而本地文件:30s一个,而且都是空的文件。
在这里插入图片描述
只需要看有数据的文件cat
在这里插入图片描述
在这里插入图片描述
在hdfs里面就不会产生空文件。如果它有大量空文件,那就崩了。
整个需求:
读取本地文件,通过副本机制传给两个channel,两个channel传给两个sink,这就是第一层,第二层是一个sink传给avro source把数据传到hdfs,另一个是sink传给 avro source把数据上传到本地文件。

将hdfs产生的文件下载到桌面,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这样就实现了将完全相同的数据传给了不同的人。以后在生产环境中,这个数据不只一个部门需要使用。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值