diff --git a/cmd/kube-apiserver/app/options/options.go b/cmd/kube-apiserver/app/options/options.go index 59e2b966250..23088142a70 100644 --- a/cmd/kube-apiserver/app/options/options.go +++ b/cmd/kube-apiserver/app/options/options.go @@ -115,6 +115,8 @@ func NewServerRunOptions() *ServerRunOptions { }, ServiceNodePortRange: kubeoptions.DefaultServiceNodePortRange, } + s.ServiceClusterIPRange = kubeoptions.DefaultServiceIPCIDR + // Overwrite the default for storage data format. s.Etcd.DefaultStorageMediaType = "application/vnd.kubernetes.protobuf" diff --git a/cmd/kube-apiserver/app/options/options_test.go b/cmd/kube-apiserver/app/options/options_test.go index c437c7a18b1..65372401b32 100644 --- a/cmd/kube-apiserver/app/options/options_test.go +++ b/cmd/kube-apiserver/app/options/options_test.go @@ -101,6 +101,7 @@ func TestAddFlags(t *testing.T) { // This is a snapshot of expected options parsed by args. expected := &ServerRunOptions{ ServiceNodePortRange: kubeoptions.DefaultServiceNodePortRange, + ServiceClusterIPRange: kubeoptions.DefaultServiceIPCIDR, MasterCount: 5, EndpointReconcilerType: string(reconcilers.MasterCountReconcilerType), AllowPrivileged: false, diff --git a/pkg/kubeapiserver/options/options.go b/pkg/kubeapiserver/options/options.go index acc1c91f9f2..f7e6eedaf71 100644 --- a/pkg/kubeapiserver/options/options.go +++ b/pkg/kubeapiserver/options/options.go @@ -17,8 +17,13 @@ limitations under the License. package options import ( + "net" + utilnet "k8s.io/apimachinery/pkg/util/net" ) // DefaultServiceNodePortRange is the default port range for NodePort services. var DefaultServiceNodePortRange = utilnet.PortRange{Base: 30000, Size: 2768} + +// DefaultServiceIPCIDR is a CIDR notation of IP range from which to allocate service cluster IPs +var DefaultServiceIPCIDR net.IPNet = net.IPNet{IP: net.ParseIP("10.0.0.0"), Mask: net.CIDRMask(24, 32)} diff --git a/pkg/master/services.go b/pkg/master/services.go index 9b9f16b3127..44bb15edffc 100644 --- a/pkg/master/services.go +++ b/pkg/master/services.go @@ -21,7 +21,7 @@ import ( "net" "github.com/golang/glog" - + kubeoptions "k8s.io/kubernetes/pkg/kubeapiserver/options" "k8s.io/kubernetes/pkg/registry/core/service/ipallocator" ) @@ -30,13 +30,8 @@ import ( func DefaultServiceIPRange(passedServiceClusterIPRange net.IPNet) (net.IPNet, net.IP, error) { serviceClusterIPRange := passedServiceClusterIPRange if passedServiceClusterIPRange.IP == nil { - defaultNet := "10.0.0.0/24" - glog.Infof("Network range for service cluster IPs is unspecified. Defaulting to %v.", defaultNet) - _, defaultServiceClusterIPRange, err := net.ParseCIDR(defaultNet) - if err != nil { - return net.IPNet{}, net.IP{}, err - } - serviceClusterIPRange = *defaultServiceClusterIPRange + glog.Infof("Network range for service cluster IPs is unspecified. Defaulting to %v.", kubeoptions.DefaultServiceIPCIDR) + serviceClusterIPRange = kubeoptions.DefaultServiceIPCIDR } if size := ipallocator.RangeSize(&serviceClusterIPRange); size < 8 { return net.IPNet{}, net.IP{}, fmt.Errorf("The service cluster IP range must be at least %d IP addresses", 8)