2015-11-04 8 views
1

Я пытаюсь интегрировать Flume с Kafka, и я хочу передать файл с моей локальной машины на Flume, а затем в Kafka. Я хочу видеть содержимое моего файла в Kafka Consumer.Как проверить вывод файла.txt в Kafka Consumer?

Вот мой конфигурационный файл в Flume:

# example.conf: A single-node Flume configuration 

# Name the components on this agent 
a1.sources = r1 
a1.sinks = k1 
a1.channels = c1 

# Describe/configure the source 
a1.sources.r1.type = exec 
a1.sources.r1.command = cat /Users/myname/Downloads/file.txt 

# Describe the sink 
#a1.sinks.k1.type = logger 
    a1.sinks.k1.type   = org.apache.flume.sink.kafka.KafkaSink 
    a1.sinks.k1.topic = k1 
    a1.sinks.k1.brokerList = kafkagames-1:9092,kafkagames-2:9092 
    a1.sinks.sink1.batchSize = 20 

    # Use a channel which buffers events in memory 
    a1.channels.c1.type = memory 
    a1.channels.c1.capacity = 10000 
    a1.channels.c1.transactionCapacity = 10000 

    # Bind the source and sink to the channel 
    a1.sources.r1.channels = c1 
    a1.sinks.k1.channel = c1 

Я не знаю, как начать Кафку из Flume и увидеть содержание file.txt в Кафки потребителя. Пожалуйста посоветуй. Благодарю.

ответ

1

Поскольку Kafka является «сервисным» брокером сообщений, вам необходимо запустить его перед созданием сообщения с вашим производителем Flume. После того, как производитель создает (передает) сообщение в тему Кафки (своего рода буфер), вы можете использовать (получать) сообщение с потребителем Kafka.

Как запустить службу Кафка: http://kafka.apache.org/documentation.html#quickstart