我正在为10个微服务使用ALB入口控制器。
但是基于路径的路由不起作用。每次Ingress都会为每个服务创建一个新的负载均衡器。
我的要求是只有一个负载均衡器,然后使用基于路径的路由浏览到不同的服务。
请让我知道我缺少哪些注释以及如何实现此目的?
此处附有我当前正在使用的示例入口:
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: abcd
namespace: "default"
annotations:
kubernetes.io/ingress.class: "alb"
alb.ingress.kubernetes.io/certificate-arn: arn:aws:acmxxxxx
alb.ingress.kubernetes.io/listen-ports:
alb.ingress.kubernetes.io/scheme: internal
alb.ingress.kubernetes.io/subnets: subnet-1,subnet-2
alb.ingress.kubernetes.io/security-groups: sg-1
spec:
rules:
- host: abcd.com
http:
paths:
- path: /def
backend:
serviceName: abcd
servicePort: 80
答案 0 :(得分:0)
根据https://github.com/kubernetes-sigs/aws-alb-ingress-controller/issues/298
唯一可行的解决方案是ingress merge
aws blog中有示例代码
我曾经使用过它们,并且有时通过Ingress-merge创建额外的alb,但是它可以工作,但是您可以手动将其删除。