Использование Flume для загрузки данных из kafka в HDFS:: ConfigurationException: необходимо указать серверы начальной загрузки
Я пытаюсь получить данные, используя flume из источника Кафки в hdfs. Ниже приведен мой файл conf.
flume1.sources = kafka-source-1
flume1.channels = hdfs-channel-1
flume1.sinks = hdfs-sink-1
flume1.sources.kafka-source-1.type = org.apache.flume.source.kafka.KafkaSource
flume1.sources.kafka-source-1.bootstrap.servers = localhost:9092
flume1.sources.kafka-source-1.zookeeperConnect = localhost:2181
flume1.sources.kafka-source-1.topic = MYNEWSFEEDS
flume1.sources.kafka-source-1.batchSize = 100
flume1.sources.kafka-source-1.channels = hdfs-channel-1
flume1.channels.hdfs-channel-1.type = memory
flume1.sinks.hdfs-sink-1.channel = hdfs-channel-1
flume1.sinks.hdfs-sink-1.type = hdfs
flume1.sinks.hdfs-sink-1.hdfs.writeFormat = Text
flume1.sinks.hdfs-sink-1.hdfs.fileType = DataStream
flume1.sinks.hdfs-sink-1.hdfs.filePrefix = test-events
flume1.sinks.hdfs-sink-1.hdfs.useLocalTimeStamp = true
flume1.sinks.hdfs-sink-1.hdfs.path = hdfs://quickstart.cloudera:8020/tmp
flume1.sinks.hdfs-sink-1.hdfs.rollCount=100
flume1.sinks.hdfs-sink-1.hdfs.rollSize=0
flume1.channels.hdfs-channel-1.capacity = 10000
flume1.channels.hdfs-channel-1.transactionCapacity = 1000
Я использую приведенную ниже команду для запуска Flume Agent:
sudo flume-ng agent --name flume1 --conf-file '/etc/flume-ng/conf/flafka.conf' Dflume.root.logger=TRACE,console
Но я получаю ошибку ниже:
18/03/12 16:49:18 ОШИБКА node.AbstractConfigurationProvider: Источник kafka-source-1 был удален из-за ошибки во время конфигурации org.apache.flume.conf.ConfigurationException: серверы начальной загрузки должны быть указаны в org.apache.flume.source.kafka.KafkaSource.doConfigure(KafkaSource.java:330) в org.apache.flume.source.BasicSourceSemantics.configure(BasicSourceSemantics.java:65) в org.apache.flume.source.AbstractPollableSource.configure(Аннотация. Java:63) в org.apache.flume.conf.Configurables.configure(Configurables.java:41) в org.apache.flume.node.AbstractConfigurationProvider.loadSources(AbstractConfigurationProvider.java:326) в org.apache.flume.node.AbstractConfigurationProvider.getConfiguration(AbstractConfigurationProvider.java:97) в org.apache.flume.node.PollingPropertiesFileConfigurationProvider$FileWatcherRunnable.run(PollingPropertiesFileConfigurationProvider.java:140) в java.all.Exitor.sutils ()) на java.util. concurrent.FutureTask.) в java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) в java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) в java.lang.Threadjrun (поток:745)
Хотя я указал сервера Bootstrap в файле conf, но все равно он выдает ту же ошибку. Пробовал много перестановок и комбинаций, но безуспешно.
1 ответ
Согласно официальному JavaDoc, вы должны заменить
flume1.sources.kafka-source-1.bootstrap.servers = localhost:9092
с
flume1.sources.kafka-source-1.kafka.bootstrap.servers = localhost:9092