在GKE中为Ingress Nginx配置静态IP地址
在GKE上为Ingress Nginx配置静态外部IP
步骤1:创建GCP静态外部IP
- 通过GCP控制台操作:
- 进入「VPC网络」→「外部IP地址」页面
- 点击「保留静态地址」,设置名称(如
ingress-static-ip),选择与GKE集群一致的区域,IP版本选IPv4,完成保留
- 或使用gcloud命令行(替换
<集群区域>为实际值):gcloud compute addresses create ingress-static-ip --region=<集群区域> - 记录下生成的静态IP地址(如
1.2.3.4)
步骤2:绑定静态IP到Ingress Nginx的LoadBalancer Service
查看Ingress Nginx控制器的Service:
kubectl get svc -n ingress-nginx找到类型为
LoadBalancer的Service(默认名称为ingress-nginx-controller)编辑该Service配置:
kubectl edit svc ingress-nginx-controller -n ingress-nginx在
spec字段下添加loadBalancerIP,填入你创建的静态IP:spec: loadBalancerIP: "1.2.3.4" # 其余原有配置保持不变保存退出后,Kubernetes会自动将静态IP绑定到该Service
步骤3:验证配置
等待1-2分钟后,执行以下命令确认IP绑定成功:
kubectl get svc ingress-nginx-controller -n ingress-nginx
查看EXTERNAL-IP列是否显示你设置的静态IP
后续重新部署注意事项
如果需要删除并重新安装Ingress Nginx控制器,不要直接使用官方默认的deploy.yaml,而是先下载该文件,在其中的Service部分添加loadBalancerIP字段后,再执行kubectl apply -f 修改后的文件进行部署,即可保留静态IP。
注意:静态IP的区域必须与GKE集群所在区域完全一致,否则无法完成绑定。
内容的提问来源于stack exchange,提问作者Alan Tang
相关产品推荐
相关产品推荐

