我是靠谱客的博主 动人大象,最近开发中收集的这篇文章主要介绍Flume应用之三——将一个服务器上的日志实时采集到另一个服务器上,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

条件有限,在一台机器上进行了测试

思路是这样:将一台服务器部署的flume中的sink对接到另一台服务器flume中的source。

那么,agent 1:exec source + memory channel + avro sink

agent 2 : avro source + memory channel + logger sink

1.写配置文件

配置文件一 example3.conf:

a1.sources = r1
a1.sinks = k1
a1.channels = c1

a1.sources.r1.type = exec
a1.sources.r1.command = tail -F “监听文件路径”
a1.sources.r1.shell = /bin/sh -c

a1.sinks.k1.type = avro

a1.sinks.k1.hostname=“你的hostname”

a1.sinks.k1.port=44444

a1.channels.c1.type = memory

a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

配置文件二:example4.conf

a1.sources = r1
a1.sinks = k1
a1.channels = c1

a1.sources.r1.type = avro
a1.sources.r1.bind= “your hostname”
a1.sources.r1.prot = 44444

a1.sinks.k1.type = logger


a1.channels.c1.type = memory

a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

2.首先打开example4.conf监听44444端口,

flume-ng agent
--name a1 
--conf $FLUME_HOME/conf 
--conf-file $FLUME_HOME/conf/example4.conf
-Dflume.root.logger=INFO,console

再打开example3.conf

flume-ng agent
--name a1 
--conf $FLUME_HOME/conf 
--conf-file $FLUME_HOME/conf/example3.conf
-Dflume.root.logger=INFO,console

3.测试

向监听的文件中输入hello world

example4的控制台输出


测试成功


最后

以上就是动人大象为你收集整理的Flume应用之三——将一个服务器上的日志实时采集到另一个服务器上的全部内容,希望文章能够帮你解决Flume应用之三——将一个服务器上的日志实时采集到另一个服务器上所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部