[英]Multiple services with ALB ingress
我已经使用 Fargate 创建了 EKS 集群。 我部署了两个微服务。 入口和两个独立的应用程序负载平衡器一切正常。 我正在尝试使用一个 alb 创建入口,它将流量路由到服务。 潜在的问题是这两个服务使用相同的端口 (8080)。 如何为这个问题创建入口? 我在 53 号公路上也有一个注册域名。
我相信您可以使用ALB Ingress Controller完成此操作。
您可以为在 EKS 中运行的服务使用通用 ALB,即使它们使用相同的端口; 您可以根据路径将其与 ALB 上的不同侦听器规则相关联。
如果您使用的是入口控制器,则可以将入口配置为处理这些不同侦听器规则的创建。
例如。 如果您使用的是 aws alb 入口控制器,则可以拥有一个通用 alb,然后使用注释创建入口:
alb.ingress.kubernetes.io/group.name: my-group
该组的所有入口部分都将在与该组关联的同一 alb 下。
结帐 - userguide-alb-ingress了解更多信息
两种服务具有相同的端口并不重要。 这只是如何向他们发送流量,他们有不同的 Ips
下面的入口与 EKS 和 Fargate 完美配合
唯一的问题是它将流量转移到第二个服务而不是服务的根目录(它将“/executor”的后缀添加到第二个服务的路径)
>apiVersion: networking.k8s.io/v1
>kind: Ingress
>metadata:
> name: ingress-airdqa
> labels:
> app: air_dqa
> chart: {{ .Chart.Name }}-{{ .Chart.Version }}
> release: {{ .Release.Name }}
> heritage: {{ .Release.Service }}
> app.kubernetes.io/name: external-dns
> annotations:
> alb.ingress.kubernetes.io/target-type: ip
> alb.ingress.kubernetes.io/scheme: internet-facing
> alb.ingress.kubernetes.io/healthcheck-path: /healthz
> alb.ingress.kubernetes.io/healthcheck-interval-seconds: '300'
> alb.ingress.kubernetes.io/rewrite-target: /
>
>spec:
> rules:
> - http:
> paths:
> - path: /
> pathType: Prefix
> backend:
> service:
> name: service-dqa-django
> port:
> number: 80
> - path: "/executor"
> pathType: Prefix
> backend:
> service:
> name: service-dqa-executor
> port:
> number: 80
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.