diff --git a/config/v1alpha1/types.go b/config/v1alpha1/types.go index dee7bb1..3d040ab 100644 --- a/config/v1alpha1/types.go +++ b/config/v1alpha1/types.go @@ -111,6 +111,9 @@ type KubeControllerManagerConfiguration struct { // EndpointControllerConfiguration holds configuration for EndpointController // related features. EndpointController EndpointControllerConfiguration + // EndpointSliceControllerConfiguration holds configuration for + // EndpointSliceController related features. + EndpointSliceController EndpointSliceControllerConfiguration // GarbageCollectorControllerConfiguration holds configuration for // GarbageCollectorController related features. GarbageCollectorController GarbageCollectorControllerConfiguration @@ -297,6 +300,20 @@ type EndpointControllerConfiguration struct { EndpointUpdatesBatchPeriod metav1.Duration } +// EndpointSliceControllerConfiguration contains elements describing +// EndpointSliceController. +type EndpointSliceControllerConfiguration struct { + // concurrentServiceEndpointSyncs is the number of service endpoint syncing + // operations that will be done concurrently. Larger number = faster + // endpoint slice updating, but more CPU (and network) load. + ConcurrentServiceEndpointSyncs int32 + + // maxEndpointsPerSlice is the maximum number of endpoints that will be + // added to an EndpointSlice. More endpoints per slice will result in fewer + // and larger endpoint slices, but larger resources. + MaxEndpointsPerSlice int32 +} + // GarbageCollectorControllerConfiguration contains elements describing GarbageCollectorController. type GarbageCollectorControllerConfiguration struct { // enables the generic garbage collector. MUST be synced with the diff --git a/config/v1alpha1/zz_generated.deepcopy.go b/config/v1alpha1/zz_generated.deepcopy.go index 6c94758..e5ed6f2 100644 --- a/config/v1alpha1/zz_generated.deepcopy.go +++ b/config/v1alpha1/zz_generated.deepcopy.go @@ -140,6 +140,22 @@ func (in *EndpointControllerConfiguration) DeepCopy() *EndpointControllerConfigu return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *EndpointSliceControllerConfiguration) DeepCopyInto(out *EndpointSliceControllerConfiguration) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSliceControllerConfiguration. +func (in *EndpointSliceControllerConfiguration) DeepCopy() *EndpointSliceControllerConfiguration { + if in == nil { + return nil + } + out := new(EndpointSliceControllerConfiguration) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *GarbageCollectorControllerConfiguration) DeepCopyInto(out *GarbageCollectorControllerConfiguration) { *out = *in @@ -289,6 +305,7 @@ func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerMa out.StatefulSetController = in.StatefulSetController out.DeprecatedController = in.DeprecatedController out.EndpointController = in.EndpointController + out.EndpointSliceController = in.EndpointSliceController in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController) in.HPAController.DeepCopyInto(&out.HPAController) out.JobController = in.JobController