我有一个flume代理运行在CDH5.8.3中。如果发送的有效文件超过3个,则在写入hdfs时会创建多个.tmp文件。在hdfs接收器之前,有一个拦截器将有效的xml路由到适当的主题。这个特工在用弗拉夫卡。拦截器和Kafka工作正常。
agent.sinks.hdfs_valid.channel=valid_channel
agent.sinks.hdfs_valid.type=hdfs
agent.sinks.hdfs_valid.writeFormat=Text
agent.sinks.hdfs_valid.hdfs.fileType=DataStream
agent.sinks.hdfs_valid.hdfs.filePrefix=event
agent.sinks.hdfs_valid.hdfs.fileSuffix=.xml
agent.sinks.hdfs_valid.hdfs.path=locationoffile/%{time}
agent.sinks.hdfs_valid.hdfs.idleTimeout=900
agent.sinks.hdfs_valid.hdfs.rollInterval=3600
agent.sinks.hdfs_valid.hdfs.kerberosPrincipal=authentication@example.com
agent.sinks.hdfs_valid.hdfs.kerberosKeytab=locationofkeytab
agent.sinks.hdfs_valid.hdfs.rollSize=0
agent.sinks.hdfs_valid.hdfs.rollCount=0
agent.sinks.hdfs_valid.hdfs.callTimeout=100000
1条答案
按热度按时间klsxnrf11#
好吧,够有趣了。我们的Kafka分区设置为20。当Flume从中消耗时。前10个分区来自一个ip,它打开了一个.tmp。第二个10个分区正在使用另一个ip,它会打开第二个.tmp。这似乎是Flume的内部功能。尽管打开了两个.tmp,但所有数据都正确到达。