域名指向Kubernetes Ingress控制器IP时返回503服务暂时不可用错误
问题根因
你的Ingress配置中指定的后端服务端口与Service实际暴露的端口不匹配,这是触发503错误的直接原因:
- Ingress配置里
servicePort字段值为80 - 你的
yucdocker1Service实际配置的port为8080
修复方案
修改Ingress YAML中的servicePort字段为Service实际暴露的端口8080,调整后配置如下:
apiVersion: networking.k8s.io/v1beta1 kind: Ingress metadata: name: yucreat-ingress annotations: cert-manager.io/cluster-issuer: "letsencrypt-prod" spec: tls: - hosts: - yuccoin.org secretName: echo-tls rules: - host: yuccoin.org http: paths: - backend: serviceName: yucdocker1 servicePort: 8080
修改完成后执行kubectl apply -f <你的ingress配置文件名.yaml重新生效即可。
其他可选排查项
如果调整端口后问题仍然存在,可以按以下顺序排查:
- 确认Ingress控制器所在命名空间可以正常访问default命名空间的Service,没有网络策略限制流量互通
- 查看Ingress控制器Pod运行日志,确认是否存在路由解析或后端连接异常
- 确认你的Kubernetes版本对
networking.k8s.io/v1beta1版本Ingress的兼容性,如果是1.19+版本建议升级为networking.k8s.io/v1版本的Ingress规范配置
内容的提问来源于stack exchange,提问作者Himanshu
相关产品推荐
相关产品推荐

