我一直在遵循本指南在AWS EKS上为elasticsearch设置opendistro。目前,我的elasticsearchpods在VPC中查询时可以工作。Kibana有一个接口负载均衡器,当我有server.ssl.enabled: false
但我想要ssl时,它工作得很好。每当我试图通过浏览器或curl访问kibana时,我都会收到一个err_empty_response错误。此外,这个错误每次都会在kibana pod的kubectl日志中生成。
{"type":"error","@timestamp":"2020-08-25T20:37:01Z","tags":["connection","client","error"],"pid":1,"level":"error","error":{"message":"140092549867392:error:1408F09C:SSL routines:ssl3_get_record:http request:../deps/openssl/openssl/ssl/record/ssl3_record.c:242:n","name":"Error","stack":"Error: 140092549867392:error:1408F09C:SSL routines:ssl3_get_record:http request:../deps/openssl/openssl/ssl/record/ssl3_record.c:242:n"},"message":"140092549867392:error:1408F09C:SSL routines:ssl3_get_record:http request:../deps/openssl/openssl/ssl/record/ssl3_record.c:242:n"}
我尝试过的东西都得到了同样的结果:
- 重新生成kibana的证书
- 使用了应与域匹配的亚马逊颁发的ACM证书
- 将kibana服务器证书上传到AWS ACM,用于面向互联网的负载均衡器。它与颁发给kibana服务器的
server.ssl.certificate
密钥的证书相同 - 查看了ssl3_record.c,但我的任何pod/nodes上都不存在该文件
除了我的证书有问题之外,似乎找不到任何关于此错误的信息。查找有关使用这种设置调试SSL证书的提示。
我最终变成了server.ssl.enabled:false,因为我意识到我正在用负载均衡器处理Ingress上的ssl。它是有效的,但我仍然不能完全确定这个问题。我认为这与负载平衡器证书与kibana的服务器证书冲突有关。