如何配置LoadBalancer来检索临时IP而不是静态IP?
我需要这个,所以我不必等待GOOGLE从1个IP地址增加配额...(这已经是漫长的一天了……)
Normal EnsuringLoadBalancer 3m (x7 over 8m) service-controller Ensuring load balancer
Warning CreatingLoadBalancerFailed 3m (x7 over 8m) service-controller Error creating load balancer (will retry): failed to ensure load balancer for service default/subzero-react: failed to ensure a static IP for load balancer (*****************(default/subzero-react)): error creating gce static IP address: googleapi: Error 403: Quota 'STATIC_ADDRESSES' exceeded. Limit: 1.0 in region us-central1., quotaExceeded
在删除loadBalancerIp
字段并重新创建服务后,它仍然处于待处理状态。
这是kubectl get service ****** -o yaml
的输出:
kubectl get service **** -o yaml
apiVersion: v1
kind: Service
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app":"api"},"name":"subzero-react","namespace":"default"},"spec":{"ports":[{"name":"http","port":80}],"selector":{"app":"initial-pp3subzero"},"type":"LoadBalancer"}}
creationTimestamp: 2018-11-19T18:04:24Z
labels:
app: api
name: *****************
namespace: default
resourceVersion: "584211"
selfLink: /api/v1/namespaces/default/services/**********
uid: 8c140d40-ec25-11e8-b7b3-42010a8000c2
spec:
clusterIP: 10.7.242.176
externalTrafficPolicy: Cluster
ports:
- name: http
nodePort: 31853
port: 80
protocol: TCP
targetPort: 80
selector:
app: ******************
sessionAffinity: None
type: LoadBalancer
status:
loadBalancer: {}
答案 0 :(得分:2)
要在具有Kubernetes的GCP负载均衡器上不分配静态IP(默认行为),通常不需要在loadBalancerIP
服务规范中指定任何内容,如here和{{3}所述}。
您可以删除服务并在没有loadBalancerIP
的情况下重新创建它,也可以对其进行修补:
$ kubectl patch service <service-name> -p '{"spec": { "loadBalancerIP": null }}'