我正在尝试使用以下版本将数据从Flume发送到Elasticsearch:
水槽版本1.8.0 Elasticsearch 6.5.4 Java版本jdk1.8.0_60
这是我正在使用的配置:
elk.sources = kafka1
elk.channels = channel1
elk.sinks = elastic1
################################################
# Describe Source
################################################
elk.sources.kafka1.type = org.apache.flume.source.kafka.KafkaSource
elk.sources.kafka1.kafka.bootstrap.servers = 172.16.1.186:9092
elk.sources.kafka1.kafka.topics = test
elk.sources.kafka1.kafka.consumer.group.id = NetflowELK
elk.sources.kafka1.channels = channel1
elk.sources.kafka1.kafka.consumer.timeout.ms = 1000
################################################
# Describe Channel
################################################
elk.channels.channel1.type = memory
elk.channels.channel1.capacity = 2000000
elk.channels.channel1.transactionCapacity= 20000
################################################
# Describe Sink
################################################
elk.sinks.elastic1.channel = channel1
elk.sinks.elastic1.type = org.apache.flume.sink.elasticsearch.ElasticSearchSink
elk.sinks.elastic1.hostNames = 172.16.1.196:9200,172.16.1.196:9300
elk.sinks.elastic1.indexName = flume
elk.sinks.elastic1.indexType = logs
elk.sinks.elastic1.clusterName = elasticsearch
elk.sinks.elastic1.batchSize = 500
elk.sinks.elastic1.ttl = 1d
以同样的方式,将下一个JAR放在$FLUME_HOME/lib
上
lib/elasticsearch-5.2.0.jar
lib/lucene-core-6.4.0.jar
但出现以下错误:
错误lifecycle.LifecycleSupervisor:无法启动SinkRunner:{ 政策:org.apache.flume.sink.DefaultSinkProcessor@6add9eb counterGroup:{名称:空计数器:{}}}-出现异常。 java.lang.NoSuchMethodError: org.elasticsearch.common.transport.InetSocketTransportAddress。(Ljava / lang / String; I)V 在 org.apache.flume.sink.elasticsearch.client.ElasticSearchTransportClient.configureHostnames(ElasticSearchTransportClient.java:141) 在 org.apache.flume.sink.elasticsearch.client.ElasticSearchTransportClient。(ElasticSearchTransportClient.java:77) 在 org.apache.flume.sink.elasticsearch.client.ElasticSearchClientFactory.getClient(ElasticSearchClientFactory.java:48) 在 org.apache.flume.sink.elasticsearch.ElasticSearchSink.start(ElasticSearchSink.java:358) 在
任何想法,要花很多时间来解决这个问题
谢谢。