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

使用Kong Ingress暴露K8s Dashboard时出现HTTP 400错误求助

问题排查与修复方案

核心问题:协议不匹配触发400错误

Kubernetes Dashboard的kubernetes-dashboard Service 443端口是HTTPS服务,但Kong Ingress默认会以HTTP协议向后端发送请求,这种协议不匹配会直接返回400错误。

具体修复步骤

  • 修改Ingress配置,添加指定后端协议的注解,同时修正强制HTTPS的注解用法:
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: dev-dashboard
      namespace: kubernetes-dashboard
      annotations:
        kubernetes.io/ingress.class: "kong"
        konghq.com/strip-path: "true"
        konghq.com/force-https: "true"  # 替换原错误注解,实现HTTP转HTTPS重定向
        konghq.com/backend-protocol: "HTTPS"  # 关键配置:告诉Kong用HTTPS访问后端
    spec:
      rules:
      - host: dev.dashboard.com
        http:
          paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: kubernetes-dashboard
                port:
                  number: 443
    
  • 若Kong Ingress未配置全局证书,需为Ingress添加TLS配置(否则HTTPS访问会出现证书错误):
    spec:
      # 保留原有rules部分
      tls:
      - hosts:
        - dev.dashboard.com
        secretName: your-tls-secret  # 替换为你已创建的证书Secret名称
    

额外验证项

  1. 确认Dashboard Service端口配置:执行kubectl describe service kubernetes-dashboard -n kubernetes-dashboard,检查TargetPort是否指向容器的443端口(HTTPS服务端口)。
  2. 测试网络连通性:在Kong Pod内部执行curl -v https://kubernetes-dashboard.kubernetes-dashboard.svc.cluster.local:443,确认能收到后端响应(忽略证书警告即可)。

内容的提问来源于stack exchange,提问作者Ajinkya Bapat

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 11:05:05