natcat+mysql_flume简介及netcat样例

本文介绍了如何使用Flume的netcat source启动数据采集agent,配合MySQL标签,展示了如何通过nc命令发送数据到Flume并查看输出,提供了一个简单但实用的数据收集和传输的示例。
摘要由CSDN通过智能技术生成

(三)启动Agent

配置好要启动的flume agent所需要的配置文件后,就可以启动agent了,即启动一个java进程。

假设我们上面的配置文件名称为hello.conf,保存到flume解压目录的conf目录下,该配置文件中完整的内容如下:

a1.sources=s1

a1.channels=c1

a1.sinks=k1

a1.sources.s1.type=netcat

a1.sources.s1.bind=0.0.0.0a1.sources.s1.port=12345a1.sources.s1.channels=c1

a1.channels.c1.type=memory

a1.sinks.k1.type=logger

a1.sinks.k1.channel= c1

下面我们执行flume-ng脚本来启动agent。命令格式如下:

[root@diagbot01 bin]# ./flume-ng agent -n a1 -c conf -f ../conf/testNG/netcatNG.conf -Dflume.root.logger=INFO,console

上面的命令,各选项的含义如下:

1)flume-ng是可执行脚本,位于bin目录下

2)agent参数表示这是启动一个agent。

3)-n 参数用于指定本agent的名称,这里是a1,这样flume就会根据这个名称到配置文件中获取相关的配置信息。

4)-c 参数用于指定log4j的配置文件所在的目录,这里是conf目录

5)-f参数用于指定flume agent配置文件的名称

6)-Dflume.root.logger参数的作用是覆盖conf/log4j.properties中的信息,让采集的信息在控制台上输出。

执行上面命令后,会打印很多信息,该flume agent会等待socket客户端的连接和数据输入,这时我们利用操作系统的nc命令来往该agent发送信息。我们打开另外一个控制台界面,输入如下信息:

[root@diagbot01 ~]# nc localhost 12345

hello kwz

OK

you are cool

OK

上面我们运行nc命令连接flume,然后输入两行信息。

这时我们切换到运行flume agent的控制台界面,发现控制台上输出了如下信息,这正是nc程序发出的信息,如下:

20/04/24 13:46:23 INFO sink.LoggerSink: Event: { headers:{} body: 68 65 6C 6C 6F 20 6B 77 7A hello kwz }

20/04/24 13:47:42 INFO sink.LoggerSink: Event: { headers:{} body: 79 6F 75 20 61 72 65 20 63 6F 6F 6C you are cool }

上面只是一个简单的例子,从这个例子中可以看出,使用flume并不是很复杂,在规划好启动多少agent之后。后面的主要工作是设置每个agent的配置信息,最基本的就是source,channel和sink信息。

五、小结

本文是对flume组件的一个简单入门学习,主要是对flume的核心概念进行了介绍,并通过一个简单的例子演示了如何使用flume。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值