Why won't kubernetes v1.5 recognize service.spec.loadBalancerIp?

4/1/2017

I'm running kubernetes v1.5 (api reference here). The field service.spec.loadBalancerIp should exist but I keep getting the following error when I attempt to set it.

error: error validating ".../service.yaml": error validating data: found invalid field loadBalancerIp for v1.ServiceSpec; if you choose to ignore these errors, turn validation off with --validate=false

service.yaml:

kind: Service
apiVersion: v1
metadata:
  name: some-service
spec:
  type: LoadBalancer
  loadBalancerIp: xx.xx.xx.xx
  selector:
    deployment: some-deployment
  ports:
    - protocol: TCP
      port: 80

kubectl version output:

Client Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.4", GitCommit:"7243c69eb523aa4377bce883e7c0dd76b84709a1", GitTreeState:"clean", BuildDate:"2017-03-07T23:53:09Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.4", GitCommit:"7243c69eb523aa4377bce883e7c0dd76b84709a1", GitTreeState:"clean", BuildDate:"2017-03-07T23:34:32Z", GoVersion:"go1.7.4", Compiler:"gc", Platform:"linux/amd64"}

I'm running my cluster on gke.

Any thoughts?

-- Peter Berg
google-kubernetes-engine
kubernetes

1 Answer

4/2/2017

You have a typo in your spec. It should be loadBalancerIP, not loadBalancerIp. Note the uppercase P

-- jaxxstorm
Source: StackOverflow