繁体   English   中英

Azure 具有入口和基于路径的路由的 Kube.netes 负载均衡器

[英]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-servicenginx-red-clusterip-service )。 任何通过端口 80 上托管 LB 的外部 IP 的流量都应该路由到入口中定义的后端之一。

还有关于在 AKS 中创建基本入口 controller 的Microsoft 示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM