You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Kubernetes Ingress访问Elasticsearch返回502 Bad Gateway问题求助

问题根因

你部署的OpenDistro Elasticsearch客户端9200端口默认开启了TLS加密,仅接受HTTPS协议请求。而你当前配置的Nginx Ingress默认使用HTTP协议向后端Service转发请求,后端ES收到非SSL请求后抛出io.netty.handler.ssl.NotSslRecordException: not an SSL/TLS record错误,Nginx无法收到正常响应因此返回502错误。

修复方案

在Ingress的metadata.annotations中新增两条配置,指定Nginx Ingress使用HTTPS协议与后端服务通信,并跳过自签证书校验:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  annotations:
    kubernetes.io/ingress.class: nginx
    # 新增以下两行配置
    nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
    nginx.ingress.kubernetes.io/proxy-ssl-verify: "off"
  labels:
    app: elasticsearch
  name: ingress-elasticsearch
  namespace: logging
spec:
  # 其余原有配置保持不变即可

修改配置后等待10秒左右重新发起请求即可正常访问。如果需要严格校验后端ES的证书,可以额外添加nginx.ingress.kubernetes.io/proxy-ssl-secret注解,指定存储ES CA证书的Secret资源即可。


内容的提问来源于stack exchange,提问作者C-nan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 23:24:06