我想在Google Cloud中更改LoadBalancer ingress-nginx-controller的IP地址。我现在已经通过LoadBalancer分配了IP地址。请参见屏幕截图。不幸的是,它没有在GKE中被采用。为什么?那是窃听器吗?GKE lb IP address change
我想在Google Cloud中更改LoadBalancer ingress-nginx-controller的IP地址。我现在已经通过LoadBalancer分配了IP地址。请参见屏幕截图。不幸的是,它没有在GKE中被采用。为什么?那是窃听器吗?GKE lb IP address change
2条答案
按热度按时间92dk7w1h1#
我已经在我的
GKE
测试集群上验证了这一点。当您Reserving a static external IP address时,它不会分配给任何VM。取决于你如何
created cluster
/reserved ip
(标准或高级),你可以得到如下错误:在此场景中,我使用了基于
us-central-1c
和reserved IP
的集群作为Network Service Tier: Premium
、Type: Regional
,并使用了集群所在的区域-us-central-1.
MyExternalIP: 34.66.79.1X8
注
Reserved IP must be in the same reagion as your cluster
选项1:-使用Helm chart
部署Nginx
服务输出:
服务描述输出:
最终输出:
选项2-在部署Nginx之前编辑Nginx YAML
根据文件:使用以下命令将您的用户初始化为cluster-admin:
下载YAML
编辑
LoadBalancer
服务并添加loadBalancerIP: <your-reserved-ip>
,如下所示:部署
kubectl apply -f deploy.yaml
。服务输出如下:描述输出:
保留IP的服务:
另外
另外请记住,当您希望强制
GKE
使用Nginx Ingress
功能(如rewrite)时,您应该在ingress
资源中添加annotations: kubernetes.io/ingress.class: nginx
。avwztpqn2#
下面的方法效果很好:
先决条件:
假设需要将静态IP分配为外部负载均衡器IP。
1.本地保存并删除Ingress负载均衡器服务。这也将删除外部负载均衡器。
1.本地保存并删除Ingress Load Balancer。
1.使用以下行重新创建Ingress Load Balancer服务。xxx.xxx.xxx.xxx =您保留的静态IP
1.重新创建入口资源