【问题标题】:kafka-connect-elasticsearch How to route multiple topics to same elasticsearch index in same connector?kafka-connect-elasticsearch 如何将多个主题路由到同一连接器中的同一弹性搜索索引?
【发布时间】:2020-09-06 05:42:48
【问题描述】:

尝试使用以下配置创建弹性搜索接收器连接器,创建成功,但是当在“my.topic.one”上生成消息时,ES 接收器连接器在尝试创建名称为“my.topic.one”的索引时失败" : "Could not create index 'my.topic.one'" (我用来连接 ES 的用户没有故意创建索引权限)。为什么要尝试创建新索引以及如何让连接器索引到以前创建的“elasticsearch_index_name”?

{
            "type.name": "_doc", 
            "tasks.max": "1", 
            "connector.class": "io.confluent.connect.elasticsearch.ElasticsearchSinkConnector", 
            "connection.url": "http://elasticsearch-service:9200", 
            "behavior.on.null.values": "delete", 
            "key.ignore": "false", 
            "write.method": "upsert", 
            "key.converter": "org.apache.kafka.connect.storage.StringConverter", 
            "key.converter.schemas.enable": "false", 
            "value.converter": "org.apache.kafka.connect.storage.StringConverter", 
            "value.converter.schemas.enable": "false", 
            "topics": "my.topic.one,my.topic.two", 
            "transforms": "renameTopic",
            "transforms.renameTopic.type": "org.apache.kafka.connect.transforms.RegexRouter", 
            "transforms.renameTopic.regex": ".*",
            "transforms.renameTopic.replacement": "elasticsearch_index_name"
    } 

更新:即使我在“topics”属性中只使用一个主题并且在“renameTopic.regex”中使用相同的主题名称,ES sink 连接器也会引发错误,如下所示,其余所有属性相同。

"topics": "my.topic.one",
"transforms.renameTopic.regex": "my.topic.one"

【问题讨论】:

    标签: elasticsearch apache-kafka-connect


    【解决方案1】:

    在 ES sink 连接器配置中添加以下属性,解决了手头的问题:

    "auto.create.indices.at.start": "false"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-07-08
      • 2018-12-26
      • 1970-01-01
      • 2020-04-04
      • 1970-01-01
      • 2017-11-25
      • 2019-04-18
      相关资源
      最近更新 更多