【问题标题】:Logstash docker image, creating default output I can't overrideLogstash docker 映像,创建我无法覆盖的默认输出
【发布时间】:2017-10-18 11:20:41
【问题描述】:

我正在使用 Dockerfile 创建一个 docker 映像

FROM docker.elastic.co/logstash/logstash:5.5.0
RUN rm -f /usr/share/logstash/pipeline/logstash.conf
RUN /usr/share/logstash/bin/logstash-plugin install logstash-filter-clone

并使用以下方式运行此图像:

docker build -t y:y - < ./Dockerfile

并使用 :

运行它
docker run -it --rm -v "$PWD":/config-dir y1:y1 -f /config-dir/logstash.conf

虽然这是 logstash.yml

input{
        exec{
                command=>'curl -k -i -u admin:admin -s https://some.url'
                interval=>10
                codec=>"json"
                type=>"curl"
        }
} 
output {
 stdout { codec => rubydebug }
 }

我的问题是,未知原因的 docker 也在那里运行了一些我无法覆盖的弹性搜索输出插件

2017-10-18T11:02:33,196][INFO ][logstash.outputs.elasticsearch] Running health check to see if an Elasticsearch connection is working {:healthcheck_url=>http://logstash_system:xxxxxx@elasticsearch:9200/, :path=>"/"}
[2017-10-18T11:02:33,209][WARN ][logstash.outputs.elasticsearch] Attempted to resurrect connection to dead ES instance, but got an error. {:url=>"http://logstash_system:xxxxxx@elasticsearch:9200/", :error_type=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :error=>"Elasticsearch Unreachable: [http://logstash_system:xxxxxx@elasticsearch:9200/][Manticore::ResolutionFailure] elasticsearch"}
[2017-10-18T11:02:33,299][INFO ][logstash.licensechecker.licensereader] Running health check to see if an Elasticsearch connection is working {:healthcheck_url=>http://logstash_system:xxxxxx@elasticsearch:9200/, :path=>"/"}
[2017-10-18T11:02:33,311][WARN ][logstash.licensechecker.licensereader] Attempted to resurrect connection to dead ES instance, but got an error. {:url=>"http://logstash_system:xxxxxx@elasticsearch:9200/", :error_type=>LogStash::Outputs::ElasticSearch::HttpClient::Pool::HostUnreachableError, :error=>"Elasticsearch Unreachable: [http://logstash_system:xxxxxx@elasticsearch:9200/][Manticore::ResolutionFailure] elasticsearch"}

我尝试在容器中执行 exec 并找出此配置存在的位置但失败了,我很难理解此弹性搜索输出插件的配置位置以及如何禁用它?

【问题讨论】:

  • 您是否尝试禁用监控(即将XPACK_MONITORING_ENABLED 设置为false)? elastic.co/guide/en/logstash/current/…
  • 我删除了现有配置: RUN rm -f /usr/share/logstash/pipeline/logstash.conf 我应该在哪里禁用这个标志?
  • 只需在 Dockerfile 中添加 ENV XPACK_MONITORING_ENABLED=false
  • @Val 你能不能把它写成 anwser 这样我就可以把这个问题设置为已解决

标签: elasticsearch logstash elastic-stack logstash-configuration


【解决方案1】:

您需要禁用 XPack 监控位。 Logstash 尝试向 ES 发送健康信息,但找不到。

只需将此添加到您的Dockerfile

ENV XPACK_MONITORING_ENABLED=false

【讨论】:

    猜你喜欢
    • 2018-02-04
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 2018-05-21
    • 1970-01-01
    • 2020-09-22
    • 2015-02-25
    • 2022-10-06
    相关资源
    最近更新 更多