2

我已经使用 kubeadm 在 AWS 上安装了 Kubernetes 集群。我了解它不属于 AWS 部署。我正在尝试遵循安装 Kubernetes 的裸机方式。

Nodeport 一切正常,我想知道是否可以将 AWS 负载均衡器连接到此设置,如果可以,如何?

我在网上进行了彻底的研究,发现了这个解决方案,我们可以在其中为服务指定一个外部 IP 地址。但是,负载均衡器没有 IP 地址。

我正在使用 Nginx 入口控制器,在 ClusterIP 上一切正常,如何使用 AWS 负载均衡器公开应用程序?

任何人都可以帮忙吗?

4

1 回答 1

0

使用以下方法将 aws-load-balancer 与在 EC2 上创建/运行的 kubernetes 集群中运行的 nginx-ingress-controller 集成

第 1 步:设置/安装“nginx-ingress-controller”

第 2 步:创建一个额外的服务以使用 NodePort 在修复端口上公开“nginx-ingress-controller”。请参阅下面以黄色突出显示的屏幕截图

nginx-ingress-controller 作为 NodePort Kubernetes 的外部服务

如果您使用 helm 在“kube-system”命名空间中安装了“nginx-ingress-controller”,那么在外部公开“nginx-ingress-controller”的额外服务将如下所示

nginx-ingress-controller 的 Helm 列表

在 NodePort 上对外公开 nginx-ingress-controller 的额外服务

第 3 步:从 AWS 控制台转到EC2 中的负载均衡器部分

然后创建负载均衡器,为了简单,选择“经典负载均衡器的创建按钮”

AWS Classic 负载均衡器设置

设置端口和协议配置如下

AWS Classic 负载均衡器端口和协议配置

然后分配您的安全组,为实例配置健康检查,

最后从列表中添加您的集群实例,添加标签,最后查看并单击创建完成。

访问 LB 的 DNS 名称,你会发现你的“nginx-ingress-controller”暴露了。

于 2021-01-26T05:58:46.683 回答