logstash错误,启用ssl后无法与elasticsearch连接

问题描述

我有一个麋鹿设置(1个主ES,3个worker ES,1个logstash,1个kibana),文件拍是日志收集器/发射器。启用x-pack和TLS后,ES和Kibana正常运行。问题出在logstash上。我目前在/var/log/logstash/logstash-plain.log中看到此错误

[错误] [logstash.javapipeline] [filebeat]由于以下原因中止了管道 错误{:pipeline_id =>“ filebeat”, :exception =>#, :backtrace => [“ / usr / share / logstash / vendor / bundle / jruby / 2.5.0 / gems / manticore-0.6.4-java / lib / manticore / response.rb:37:in “阻止初始化””

我还可以在Elasticsearch主服务器中看到以下日志:

[2020-09-01T07:13:20,323] [WARN ] [o.e.x.c.s.t.n.SecurityNetty4Transport] [esmasternode1]已收到 加密通道上的纯文本流量,关闭连接 Netty4TcpChannel {localAddress = / 10.1.1.6:9300, remoteAddress = / publicipaddress:35166} [2020-09-01T07:13:20,865] [WARN ] [o.e.t.TcpTransport] [esmasternode1]异常捕获 传输层[Netty4TcpChannel {localAddress = / 10.1.1.6:9300, remoteAddress = / publicipaddress:35326}],关闭连接

以下是我的logstash和filebeat配置。我在logstash配置中将logstash设置为filebeat的输出,在filebeat中将filebeat设置为输入。

Logstash.conf

input {
  beats {
    port => 5044
    ssl => true
    ssl_certificate => "/etc/logstash/logstashcert.crt"
    ssl_key => "/etc/logstash/logstashcert.key"
  }
}

filter { json { source => "message" remove_field => [ "message" ] } }

output {
  elasticsearch {
  hosts => ["https://esmasterprivateIP:9200"]
    index => "logs-%{+YYYY-MM-dd}"
    manage_template => true
    template => "/etc/logstash/conf.d/template.json"
    template_name => "mytemplate"
    ssl => true
    cacert => '/home/ubuntu/esca.pem'
    user => logstash_user
    password => mypassword

  }
}

Filebeat.conf

    output.logstash:
      workers: 2
      enabled: true
      protocol: "https"
      hosts: ['logstashprivateip:5044']
      path: "/"
      ssl:
      certificate_authorities: [“/etc/tls.crt”]

我无法找到我要去哪里。

注意: Filebeat在kubernetes中运行,因此在通过configmap传递时,配置看起来可能略有不同。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)