【问题标题】:Logstash plugin to output to Kafka not working输出到 Kafka 的 Logstash 插件不起作用
【发布时间】:2018-09-29 02:00:56
【问题描述】:

我正在尝试从 Logstash 向 Kafka 发送消息并不断收到以下错误:

tail -f /var/log/logstash/logstash-plain.log
[2018-04-18T17:55:33,836][WARN ][org.apache.kafka.clients.NetworkClient] 
[Producer clientId=producer-1] Connection to node -1 could not be established. Broker may not be available.
[2018-04-18T17:55:46,095][INFO ][logstash.outputs.kafka   ] Sending batch to Kafka failed. Will retry after a delay. {:batch_size=>1, :failures=>1, :sleep=>0.1}
[2018-04-18T17:55:51,979][INFO ][logstash.outputs.kafka   ] Sending batch to Kafka failed. Will retry after a delay. {:batch_size=>1, :failures=>1, :sleep=>0.1}
[2018-04-18T17:56:46,196][INFO ][logstash.outputs.kafka   ] Sending batch to Kafka failed. Will retry after a delay. {:batch_size=>1, :failures=>1, :sleep=>0.1}]

这以前可以工作,但现在不行,我不确定自从机器未动过之后发生了什么变化。

我可以通过运行Kafka的机器上的控制台生产者与Kafka通信,以及运行Logstash的机器,以及从VPC之外的远程机器,所以我不相信这是一个网络错误。可以肯定的是,我将 Logstash 与 Kafka 放在同一台机器上,但我得到了同样的错误。

我仔细检查并确保我使用的是最新版本的 Kafka、Logstash 和 logstash-output-kafka 插件,所以我认为这也不是兼容性问题。我尝试重新启动 Logstash 和代理无济于事。

基本上,我不知道如何解决这个问题。任何帮助,将不胜感激。谢谢。

【问题讨论】:

  • 解决此问题的下一步是尝试在您的 logstash 机器上运行 Kafka,并检查它是否有效。如果是这样,那么您的 Kafka 代理的网络配置很可能有问题(c.f. rmoff.net/2018/01/03/…)。
  • 我已经同时运行了 kafka 和 logstash,logstash 也无法发送到那台机器上的 kafka。

标签: plugins apache-kafka logstash


【解决方案1】:

好吧,我想通了。这是 logstash.conf 文件中的配置问题:当我将 kafka 输出更改为机器的本地 IP 地址时,它可以工作。它似乎不适用于公共或私有主机名或公共 IP 地址。由于我正在使用具有多个 kafka 主题的条件,如下所示:

output {
  kafka {
    bootstrap_servers => "10.0.0.XX:9092"
    codec => json
    topic_id => "test_topic"
  }
  if [type] == "ping" {
    kafka {
      bootstrap_servers => "10.0.0.XX:9092"
      codec => json
      topic_id => "logstash-ping"
    }
  }
  else if [type] == "snmp" {
    kafka {
      bootstrap_servers => "10.0.0.XX:9092"
      codec => json
      topic_id => "logstash-snmp"
    }
  }
}

如果其中任何一个设置不正确,它也不会发送给其中任何一个,尽管我可以在 logstash 日志中看到正确连接。

作为参考,我对 listeners 和 advertised.listeners 的设置如下:

listeners=PLAINTEXT://0.0.0.0:9092
advertised.listeners=PLAINTEXT://ec2-XX-XX-XX-XX.compute-1.amazonaws.com:9092

【讨论】:

    猜你喜欢
    • 2017-02-18
    • 1970-01-01
    • 1970-01-01
    • 2017-08-06
    • 2019-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多