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

AWS ALB Ingress同一主机多路径映射服务遇404问题

问题:AWS ALB Ingress部署前后端服务时Frontend出现404错误

部署环境与服务说明

  • Frontend Service:允许外部主机访问,使用NodePort类型
  • Backend Service:仅集群内部可访问,使用ClusterIP类型

问题现象

通过AWS ALB的Ingress部署后,访问Frontend Service时返回404 Not Found错误;若移除第二个Ingress资源,Frontend可正常访问,但无法连接Backend服务。

当前配置文件

ingress.yaml

{{- if .Values.ingress.enabled -}}
{{- $fullName := include "metaflow-ui.fullname" . -}}
{{- $svcPort := .Values.service.port -}}
{{- $fullNameStatic := include "metaflow-ui.fullname-static" . -}}
{{- $svcPortStatic := .Values.serviceStatic.port -}}
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  namespace: metaflow-ui
  name: {{ $fullName }}
  labels:
    {{- include "metaflow-ui.labels" . | nindent 4 }}
  {{- with .Values.ingress.annotations }}
  annotations:
    {{- toYaml . | nindent 4 }}
    alb.ingress.kubernetes.io/healthcheck-path: "/api"
    alb.ingress.kubernetes.io/success-codes: "200"
  {{- end }}
spec:
  rules:
  - host: {{ .Values.externalDNS }}
    http:
      paths:
      - path: /api
        pathType: Prefix
        backend:
          serviceName: {{ $fullName }}
          servicePort: {{ $svcPort }}
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  namespace: metaflow-ui
  name: {{ $fullName }}
  labels:
    {{- include "metaflow-ui.labels" . | nindent 4 }}
  {{- with .Values.ingress.annotations }}
  annotations:
    {{- toYaml . | nindent 4 }}
    alb.ingress.kubernetes.io/healthcheck-path: "/"
    alb.ingress.kubernetes.io/success-codes: "200"
  {{- end }}
spec:
  rules:
  - host: {{ .Values.externalDNS }}
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          serviceName: {{ $fullNameStatic }}
          servicePort: {{ $svcPortStatic }}
---
{{ end }}

values.yaml(Ingress注解配置)

ingress:
  enabled: true
  className: ""
  annotations:
    kubernetes.io/ingress.class: alb
    alb.ingress.kubernetes.io/scheme: internal
    alb.ingress.kubernetes.io/group.name: metaflow-ui
    alb.ingress.kubernetes.io/security-groups: # removed
    alb.ingress.kubernetes.io/listen-ports:  '[{"HTTP": 80}, {"HTTPS":443}]'
    alb.ingress.kubernetes.io/certificate-arn: # removed
    alb.ingress.kubernetes.io/actions.ssl-redirect: '{"Type": "redirect", "RedirectConfig": { "Protocol": "HTTPS", "Port": "443", "StatusCode": "HTTP_301"}}'

已尝试的解决方案

添加alb.ingress.kubernetes.io/group.name注解,尝试让单个AWS ALB共享多个Ingress资源,但未解决404问题;目前计划参考AWS官方的路径路由方案进行调整。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 07:18:20