Kubernetes: spec.clusterIP: invalid value?

12/9/2015

Whether prompt, What linked in kubernetes this message:

The Service "skudns" is invalid:spec.clusterIP: invalid value '': the provided range does not match the current range

At that that DNS_SERVICE_IP = 10.3.0.10, and SERVICE_IP_RANGE = 10.3.0.0/16

My ip-address:

K8S_SERVICE_IP: 10.3.0.1
MASTER_HOST: 192.168.0.139
ETCD_ENDPOINT=ETCD_CLUSTER=http://192.169.0.139:2379,http://192.168.0.107:2379
POD_NETWORK: 10.2.0.0/16
SERVICE_IP_RANGE: 10.3.0.0/24
DNS_SERVICE_IP: 10.3.0.10
ADVERTISE_IP: 192.168.0.139
-- batazor
docker
kubernetes
skydns

1 Answer

12/9/2015

/16 means a subnet mask of 255.255.0.0 (instead of 255.255.255.0 with /24)

The error message comes from pkg/registry/service/ipallocator/allocator_test.go#L196-L198

if !network.IP.Equal(cidr.IP) || network.Mask.String() != cidr.Mask.String() {
    t.Fatalf("mismatched networks: %s : %s", network, cidr)
}

It might be possible the host network mask (seen in ipconfig if the host is Windows, or ifconfig as in this script) might be different from the cidr mask used by kubernetes.
Try with /24 just for testing.
See also issue 5 (Network comportment)

In the end, the OP batazor confirms in the comments an issue on Kubernetes side:

kubernetes updated from version 1.0.3 to 1.0.6 and got docker0 mask to 255.255.255.0 This is some sort of magic.

-- VonC
Source: StackOverflow