簡體   English   中英

sebp / elk logstash無法使用Kafka接收數據

[英]sebp/elk logstash cannot receive data with Kafka

根據logstash-logs,我正在使用https://hub.docker.com/r/sebp/elk/中的Docker ELK容器,一切正常且運行正常。

現在,我嘗試從Kafka接收數據並使用以下配置寫入ES:

input {
    kafka {
        topic_id => "collectortopic"
        zk_connect => "172.17.0.2:2181"
        type => "kafka-input"
    }
}
output {
    elasticsearch {
        hosts => ["172.17.0.4:9200"]
        codec => json
    }
    stdout {
        codec => json
    }
}

但是設置中的任何內容似乎都是錯誤的,因為我無法接收任何數據。 控制台中既沒有Logstash的輸出,也沒有Kibana中的任何數據,因為沒有創建logstash索引,根據插件文檔,這應該是默認行為。

我的Kafka設置很好,因為我可以與其他應用程序發送和接收數據,zk_connect也是正確的,因為否則我會遇到異常...

有任何想法嗎?

提前致謝!

PS:Kafka 0.9.1,Logstash 2.3.3,ES 2.3.3

您是否檢查過Logstash服務器是否可以與Kafka和Elasticsearch通信?

您可以使用此:

對於Elasticsearch:

curl 172.17.0.4:9200

如果您應該有一個類似的答案:

{
  "name" : "inf01-log-els",
  "cluster_name" : "inf01-log-els",
  "version" : {
    "number" : "2.2.1",
    "build_hash" : "d045fc29d1932bce18b2e65ab8b297fbf6cd41a1",
    "build_timestamp" : "2016-03-09T09:38:54Z",
    "build_snapshot" : false,
    "lucene_version" : "5.4.1"
  },
  "tagline" : "You Know, for Search"
}

對於kafka,您可以通過以下方法進行檢查:

telnet 172.17.0.2 2181

我因此遇到了一些ELK問題。

猜測Logstash無法解析您發送的任何內容。 它是有效的JSON嗎? 您是否檢查日志錯誤?

在我的情況下,如果Kafka在另一個容器中運行,則必須將KAFKA_ADVERTISED_HOST_NAME設置為IP地址而不是本地主機。

感謝您的想法!

您是否嘗試過將logstash-input-kafka插件版本更新為> 3.xx? 根據文檔 ,版本3.x +的插件支持Kafka 0.9+。 Logstash 2.x仍默認為插件版本2.x。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM