在 K8s 中,将服务的类型设置为 LoadBalance ,该负载均衡器就会获得一个公开的独一无二的IP,并将所有的连接重定向到 Service

然后就可以通过负载均衡器的IP地址访问该服务.

但是 LoadBalancer 只能为一个服务提供 一个 公共IP,现实中我们有多个服务,每个服务都暴露一个公网 IP, 太浪费资源.

解决方案有两种:

一: 创建一个 LoadBalancer 的 Service,这个Service 就是一个 GateWay 服务,用来进行 K8S 集群内部的 服务转发
我们知道,Service 在 K8S 集群内部是可以访问的.

二: 创建 Ingress 资源:
Ingress 可以看做是一个 网关,可以根据 请求主机名和路径决定请求转发到哪个服务.

实际上,在实际生产中,我们更偏向使用 自己的 网关服务(比如 geteway )作为 一个 LoadBalancer .

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐