1 /* 2 Copyright 2019 The Kubernetes Authors. 3 4 Licensed under the Apache License, Version 2.0 (the "License"); 5 you may not use this file except in compliance with the License. 6 You may obtain a copy of the License at 7 8 http://www.apache.org/licenses/LICENSE-2.0 9 10 Unless required by applicable law or agreed to in writing, software 11 distributed under the License is distributed on an "AS IS" BASIS, 12 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 See the License for the specific language governing permissions and 14 limitations under the License. 15 */ 16 17 package config 18 19 // NodeIPAMControllerConfiguration contains elements describing NodeIPAMController. 20 type NodeIPAMControllerConfiguration struct { 21 // serviceCIDR is CIDR Range for Services in cluster. 22 ServiceCIDR string 23 // secondaryServiceCIDR is CIDR Range for Services in cluster. This is used in dual stack clusters. SecondaryServiceCIDR must be of different IP family than ServiceCIDR 24 SecondaryServiceCIDR string 25 // NodeCIDRMaskSize is the mask size for node cidr in single-stack cluster. 26 // This can be used only with single stack clusters and is incompatible with dual stack clusters. 27 NodeCIDRMaskSize int32 28 // NodeCIDRMaskSizeIPv4 is the mask size for IPv4 node cidr in dual-stack cluster. 29 // This can be used only with dual stack clusters and is incompatible with single stack clusters. 30 NodeCIDRMaskSizeIPv4 int32 31 // NodeCIDRMaskSizeIPv6 is the mask size for IPv6 node cidr in dual-stack cluster. 32 // This can be used only with dual stack clusters and is incompatible with single stack clusters. 33 NodeCIDRMaskSizeIPv6 int32 34 } 35