[英]Azure Kubernetes loadbalancer with Ingress and path based routing
我正在尝试使用 AKS 托管负载均衡器创建基于基本路径的路由入口 controller。 问题是弄清楚如何从负载均衡器路由到入口 controller。
这是我的入口 controller yml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-cpr
annotations:
kubernetes.io/ingress.class: nginx
spec:
rules:
- http:
paths:
- path: /green/
pathType: Prefix
backend:
service:
name: nginx-green-clusterip-service
port:
number: 80
- path: /red/
pathType: Prefix
backend:
service:
name: nginx-red-clusterip-service
port:
number: 80
如您所见,入口 controller 负责根据传入路径发送到适当的应用程序。
但是我如何将其连接到托管负载均衡器?
apiVersion: v1
kind: Service
metadata:
name: loadbal-service
spec:
type: LoadBalancer
ports:
- port: 80
selector:
app: ingress-cpr
我知道这一行不正确“-app: ingress-cpr”。 但是我必须做什么才能使 LoadBalancer 转发到入口 controller?
提前致谢,杰克。
在服务清单中,应用程序的选择器应指向入口的后端服务名称。 在这种特殊情况下,服务清单中的ingress-cpr
应该是两个后端之一( nginx-green-clusterip-service
或nginx-red-clusterip-service
)。 任何通过端口 80 上托管 LB 的外部 IP 的流量都应该路由到入口中定义的后端之一。
还有关于在 AKS 中创建基本入口 controller 的Microsoft 示例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.