如何将 Load Balancer-IP 分配给 NGINX 入口?
How to assign an Load Balancer-IP to NGINX ingress?
我已经使用 Rancher on DO(DigitalOcean) 平台创建了 K8S 集群,在后台,它创建了 VPS(Droplet) 来构建 K8S 集群。
顺便,我是如何在Rancher上创建的:
并选择了 DO 插件
在 DO 平台上,您有机会创建负载均衡器以添加到 K8S 集群,如 https://www.digitalocean.com/docs/kubernetes/how-to/add-load-balancers/ 中所述。
我已经通过 helm 在 K8S 上安装了 NGINX ingress:
helm install ingress-nginx ingress-nginx/ingress-nginx --namespace nginx --set controller.publishService.enabled=true
并且 NGINX 控制器服务的状态显示:
k get service -n nginx
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ingress-nginx-controller LoadBalancer 10.43.117.7 <pending> 80:31609/TCP,443:32247/TCP 103s
ingress-nginx-controller-admission ClusterIP 10.43.55.223 <none> 443/TCP 103s
然后我创建了一个具有以下规则的负载均衡器:
之后我收到了一个IP地址。因此我的问题是,如何将 IP 分配给 ingress-nginx-controller?
LoadBalancer 类型的服务是您想要的声明,它应该会导致配置 DigitalOcean LB。实现这一愿望是云控制器的责任:订阅 LoadBalancer 类型的服务列表并使用云提供商的 API 来确保供应云提供商 LB 的代码。
https://github.com/digitalocean/digitalocean-cloud-controller-manager
您不应该自己手工制作 DigitialOcean LB。
我已经使用 Rancher on DO(DigitalOcean) 平台创建了 K8S 集群,在后台,它创建了 VPS(Droplet) 来构建 K8S 集群。
顺便,我是如何在Rancher上创建的:
并选择了 DO 插件
在 DO 平台上,您有机会创建负载均衡器以添加到 K8S 集群,如 https://www.digitalocean.com/docs/kubernetes/how-to/add-load-balancers/ 中所述。
我已经通过 helm 在 K8S 上安装了 NGINX ingress:
helm install ingress-nginx ingress-nginx/ingress-nginx --namespace nginx --set controller.publishService.enabled=true
并且 NGINX 控制器服务的状态显示:
k get service -n nginx
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
ingress-nginx-controller LoadBalancer 10.43.117.7 <pending> 80:31609/TCP,443:32247/TCP 103s
ingress-nginx-controller-admission ClusterIP 10.43.55.223 <none> 443/TCP 103s
然后我创建了一个具有以下规则的负载均衡器:
之后我收到了一个IP地址。因此我的问题是,如何将 IP 分配给 ingress-nginx-controller?
LoadBalancer 类型的服务是您想要的声明,它应该会导致配置 DigitalOcean LB。实现这一愿望是云控制器的责任:订阅 LoadBalancer 类型的服务列表并使用云提供商的 API 来确保供应云提供商 LB 的代码。
https://github.com/digitalocean/digitalocean-cloud-controller-manager
您不应该自己手工制作 DigitialOcean LB。