Dockerlogstash 尝试连接到尽管

问题描述 投票:0回答:1

我有一个 docker logstash 配置如下:

input {
  tcp {
    port => 5000
  }
}

output {
  elasticsearch {
    hosts => ["https://my-custom-elastic.com:9321"]

预期:

我希望logstash连接到https://my-custom-elastic.com:9321而不是http://elasticsearch:9200/

实际:

100% 可重现,我收到此错误:

[2023-08-18T06:11:35,099][INFO ][logstash.licensechecker.licensereader] Elasticsearch pool URLs updated {:changes=>{:removed=>[], :added=>[http://elasticsearch:9200/]}}
[2023-08-18T06:11:35,409][INFO ][logstash.licensechecker.licensereader] Failed to perform request {:message=>"elasticsearch: Name or service not known", :exception=>Manticore::ResolutionFailure, :cause=>java.net.UnknownHostException: elasticsearch: Name or service not known}
[2023-08-18T06:11:35,415][WARN ][logstash.licensechecker.licensereader] Attempted to resurrect connection to dead ES instance, but got an error {:url=>"http://elasticsearch:9200/", :exception=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :message=>"Elasticsearch Unreachable: [http://elasticsearch:9200/][Manticore::ResolutionFailure] elasticsearch: Name or service not known"}
[2023-08-18T06:11:35,599][INFO ][logstash.licensechecker.licensereader] Failed to perform request {:message=>"elasticsearch", :exception=>Manticore::ResolutionFailure, :cause=>java.net.UnknownHostException: elasticsearch}

我确信logstash正在选择正确的配置,因为在这个错误之后,几行之后,它确实连接到了我预期的目的地。

问题:

为什么即使我配置了自定义主机,logstash 仍会尝试连接到本地主机?

docker elasticsearch logstash
1个回答
-2
投票

遇到同样的问题,发现几篇文章表明它来自默认打开的logstash x-pack监控,请参见此处:https://discuss.elastic.co/t/logstash-outputs-elasticsearch-正在尝试连接到另一个elasticsearch/101526/5 对我有用的解决方案是输入 xpack.monitoring.enabled:logstash.yml 中为 false。

© www.soinside.com 2019 - 2024. All rights reserved.