首先创建一个文件example.conf(touch example.conf)
然后在文件中,进行agent文件的如下的配置(vi example.conf)
agent文件的配置:(配置agent文件的时候主要配置flume三个‘零部件’的重要的属性,三个部件分别为sources,channels,sinks)配置如下的默认值:
a1.sources=r1
a1.sinks=s1
a1.channels=c1
Flume模块source配置:
a1.sources.r1.type=netcat
a1.sources.r1.bind=localhost
a1.sources.r1.port=44444
netcat 监控某个端口,将流经端口的每一个文本行数据作为Event输入
bind中是要添加 ip地址或主机名
port中是要添加绑定主机的端口
Flume模块sinks配置:
a1.sinks.k1.type=logger
logger数据写入日志文件(打印出来)
Flume模式channels配置:
a1.channels.c1.type=memory
a1.channels.c1.capacity=1000
a1.channels.c1.transactionCapacity=100
momory event数据存储到内存中,缓存数据
1000 缓存的数据是1000条
100 每个事物缓存的最大单元数目
a1.sources.r1.channels=c1
a1.sinks.k1.channel=c1
配置sources,sinks文件与channel的关系
配置好文件如下图所示:
保存后开始启动telnet
输入命令:
flume-ng agent --conf conf --conf-file example.conf --name a1 -Dflume.root.logger=INFO,console
出现上述的结果即是,完成配置
由于flume中的启动需要使用telnet,所以需要安装telnet
先检查该系统是否安装telent
执行命令:rpm -qa telnet
如果存在可以先删除
执行命令:rpm -e telnet
然后执行命令:yum list telnet
再执行命令:yum intall telnet.x86_64
Is this ok [y/N]: 输入命令:y
然后执行telnet localhost 44444的命令,即可出现下面的结果:
在端口输入数据,这时配置的文件就会处理该字符串,最后打印出来日志文件
在该端口输入:
hello word
这时日志文件就会被打印出来:
如果出现不了,出现Connection refused
多半是配置文件(example.conf)的内容书写错误,认真检查一遍,即可解决问题