Enabling the EndpointSliceMirroring controller, adding related config

Kubernetes-commit: e701cb020533d657850738e74df8b9147a3caef0
This commit is contained in:
Rob Scott 2020-06-26 16:17:22 -07:00 committed by Kubernetes Publisher
parent 9ba2372040
commit 0ec4be8283
2 changed files with 42 additions and 0 deletions

View File

@ -114,6 +114,9 @@ type KubeControllerManagerConfiguration struct {
// EndpointSliceControllerConfiguration holds configuration for
// EndpointSliceController related features.
EndpointSliceController EndpointSliceControllerConfiguration
// EndpointSliceMirroringControllerConfiguration holds configuration for
// EndpointSliceMirroringController related features.
EndpointSliceMirroringController EndpointSliceMirroringControllerConfiguration
// GarbageCollectorControllerConfiguration holds configuration for
// GarbageCollectorController related features.
GarbageCollectorController GarbageCollectorControllerConfiguration
@ -319,6 +322,27 @@ type EndpointSliceControllerConfiguration struct {
EndpointUpdatesBatchPeriod metav1.Duration
}
// EndpointSliceMirroringControllerConfiguration contains elements describing
// EndpointSliceMirroringController.
type EndpointSliceMirroringControllerConfiguration struct {
// mirroringConcurrentServiceEndpointSyncs 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.
MirroringConcurrentServiceEndpointSyncs int32
// mirroringMaxEndpointsPerSubset is the maximum number of endpoints that
// will be mirrored to an EndpointSlice for an EndpointSubset.
MirroringMaxEndpointsPerSubset int32
// mirroringEndpointUpdatesBatchPeriod can be used to batch EndpointSlice
// updates. All updates triggered by EndpointSlice changes will be delayed
// by up to 'mirroringEndpointUpdatesBatchPeriod'. If other addresses in the
// same Endpoints resource change in that period, they will be batched to a
// single EndpointSlice update. Default 0 value means that each Endpoints
// update triggers an EndpointSlice update.
MirroringEndpointUpdatesBatchPeriod metav1.Duration
}
// GarbageCollectorControllerConfiguration contains elements describing GarbageCollectorController.
type GarbageCollectorControllerConfiguration struct {
// enables the generic garbage collector. MUST be synced with the

View File

@ -157,6 +157,23 @@ func (in *EndpointSliceControllerConfiguration) DeepCopy() *EndpointSliceControl
return out
}
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *EndpointSliceMirroringControllerConfiguration) DeepCopyInto(out *EndpointSliceMirroringControllerConfiguration) {
*out = *in
out.MirroringEndpointUpdatesBatchPeriod = in.MirroringEndpointUpdatesBatchPeriod
return
}
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSliceMirroringControllerConfiguration.
func (in *EndpointSliceMirroringControllerConfiguration) DeepCopy() *EndpointSliceMirroringControllerConfiguration {
if in == nil {
return nil
}
out := new(EndpointSliceMirroringControllerConfiguration)
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
@ -307,6 +324,7 @@ func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerMa
out.DeprecatedController = in.DeprecatedController
out.EndpointController = in.EndpointController
out.EndpointSliceController = in.EndpointSliceController
out.EndpointSliceMirroringController = in.EndpointSliceMirroringController
in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController)
in.HPAController.DeepCopyInto(&out.HPAController)
out.JobController = in.JobController