K8S通过Ingress,把K8S集群中的服务,通过Http和https路由暴露给外部用户。 路径等信息通过Ingress的资源文件配置。
1、一个K8S集群
2、一个集群Admin, 两个个K8S用户 UserA, UserB,通过Kubernets API访问集群。
3、两个业务用户, Clients A, ClientB通过Ingress访问AppA, AppB。
4、Ingress Controller(IC), 是 Admin部署在Niginx-ingress名字空间的Pod,通过ConfigMap配置。 IC可以是一个Pod,但是生产环境中,一般有多个Pod。
5、Public Endpoint, 是在IC前面的一个负载均衡(一般情况下是TCP层的负载均衡)+ NodePort服务,也就是说是个loadbalancer的service。
而在IC Pod里面:
https://docs.nginx.com/nginx-ingress-controller/intro/how-nginx-ingress-controller-works/