Flume 没有 KafkaSink 的 KafkaChannel?

Flume KafkaChannel without KafkaSink?

我正在尝试从 Flume 来源写入 Kafka 主题。 flume里面有kafka通道,在这个Cloudera post作者说可以用kafka通道

To write to Kafka directly from Flume sources without additional buffering.

但是当我试图从我的配置中排除接收器时 flume 说

An error occurred while validating this configuration: Component tier1.sinks: Property value missing.

我真的需要写入 kafka 通道并读回以再次写入 kafka 接收器吗?这对我来说似乎很奇怪...

不,你不需要这样做,请出示你的配置文件。

Flume 1.7 中的示例如下:

source config etc...

agent1.channels.channel_sample.type = org.apache.flume.channel.kafka.KafkaChannel
agent1.channels.channel_sample.kafka.bootstrap.servers = hostnameorip:9092,hostnameorip:9092
agent1.channels.channel_sample.kafka.topic = topic_sample
agent1.channels.channel_sample.kafka.consumer.group.id = consumer_group_sample

如果您不需要任何接收器绑定到此 channel_sample,则 kafka.consumer.group.id 不是必需的。

查看https://flume.apache.org/FlumeUserGuide.html#kafka-channel了解更多

注意文档中有一个错误,默认值kafka.consumer.auto.offset.reset是earliest而不是latest