替换 K8 集群中的 AWS ELB

Replacing AWS ELB in K8 cluster

我使用 kube-aws 在 AWS 中部署了一个 k8 集群。当我部署服务时,会添加一个新的 ELB 以将服务公开到 Internet。是否可以使用ingress-controller来代替ELB,或者除了ELB还有其他方式暴露服务吗?

首先,将服务定义中的 type: LoadBalancer 替换为 type: ClusterIP。然后你必须配置 ingress and deploy a controller, like Nginx

如果您正在寻找完整的示例,我这里有一个:nginx-ingress-controller

入口将使用您的一些工作人员 public IP 公开您的服务,通常是其中的 2 个。只需检查您的入口 kubectl get ing -o wide 并创建 DNS 记录。