mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
add flag concurrent-statefulset-syncs to kube-controller-manager (#79169)
* add flag `concurrent-statefulset-syncs` to set number of concurrent workers for statefulset controller * change default value of ConcurrentStatefulSetSyncs from 1 to 5 * 1. fix doc comment of statefulset config types.go 2. add missing deps k8s.io/kubernetes/pkg/controller/statefulset/config * add missing dep k8s.io/kubernetes/pkg/controller/statefulset/config/v1alpha1 * updated bazel BUILD files * update kube-controller-manager options testcase * fix codegen * fix golint error * fix testcase
This commit is contained in:
parent
c5787856b9
commit
d29f194474
@ -599,6 +599,7 @@ API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,K
|
|||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ResourceQuotaController
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ResourceQuotaController
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,SAController
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,SAController
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ServiceController
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,ServiceController
|
||||||
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,StatefulSetController
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,TTLAfterFinishedController
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,KubeControllerManagerConfiguration,TTLAfterFinishedController
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NamespaceControllerConfiguration,ConcurrentNamespaceSyncs
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NamespaceControllerConfiguration,ConcurrentNamespaceSyncs
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NamespaceControllerConfiguration,NamespaceSyncPeriod
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,NamespaceControllerConfiguration,NamespaceSyncPeriod
|
||||||
@ -630,6 +631,7 @@ API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,S
|
|||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,SAControllerConfiguration,RootCAFile
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,SAControllerConfiguration,RootCAFile
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,SAControllerConfiguration,ServiceAccountKeyFile
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,SAControllerConfiguration,ServiceAccountKeyFile
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,ServiceControllerConfiguration,ConcurrentServiceSyncs
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,ServiceControllerConfiguration,ConcurrentServiceSyncs
|
||||||
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,StatefulSetControllerConfiguration,ConcurrentStatefulSetSyncs
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,TTLAfterFinishedControllerConfiguration,ConcurrentTTLSyncs
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,TTLAfterFinishedControllerConfiguration,ConcurrentTTLSyncs
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,EnableDynamicProvisioning
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,EnableDynamicProvisioning
|
||||||
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,EnableHostPathProvisioning
|
API rule violation: names_match,k8s.io/kube-controller-manager/config/v1alpha1,VolumeConfiguration,EnableHostPathProvisioning
|
||||||
|
@ -62,7 +62,7 @@ func startStatefulSetController(ctx ControllerContext) (http.Handler, bool, erro
|
|||||||
ctx.InformerFactory.Core().V1().PersistentVolumeClaims(),
|
ctx.InformerFactory.Core().V1().PersistentVolumeClaims(),
|
||||||
ctx.InformerFactory.Apps().V1().ControllerRevisions(),
|
ctx.InformerFactory.Apps().V1().ControllerRevisions(),
|
||||||
ctx.ClientBuilder.ClientOrDie("statefulset-controller"),
|
ctx.ClientBuilder.ClientOrDie("statefulset-controller"),
|
||||||
).Run(1, ctx.Stop)
|
).Run(int(ctx.ComponentConfig.StatefulSetController.ConcurrentStatefulSetSyncs), ctx.Stop)
|
||||||
return nil, true, nil
|
return nil, true, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,6 +28,7 @@ go_library(
|
|||||||
"replicationcontroller.go",
|
"replicationcontroller.go",
|
||||||
"resourcequotacontroller.go",
|
"resourcequotacontroller.go",
|
||||||
"serviceaccountcontroller.go",
|
"serviceaccountcontroller.go",
|
||||||
|
"statefulsetcontroller.go",
|
||||||
"ttlafterfinishedcontroller.go",
|
"ttlafterfinishedcontroller.go",
|
||||||
],
|
],
|
||||||
importpath = "k8s.io/kubernetes/cmd/kube-controller-manager/app/options",
|
importpath = "k8s.io/kubernetes/cmd/kube-controller-manager/app/options",
|
||||||
@ -52,6 +53,7 @@ go_library(
|
|||||||
"//pkg/controller/replication/config:go_default_library",
|
"//pkg/controller/replication/config:go_default_library",
|
||||||
"//pkg/controller/resourcequota/config:go_default_library",
|
"//pkg/controller/resourcequota/config:go_default_library",
|
||||||
"//pkg/controller/serviceaccount/config:go_default_library",
|
"//pkg/controller/serviceaccount/config:go_default_library",
|
||||||
|
"//pkg/controller/statefulset/config:go_default_library",
|
||||||
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
||||||
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
||||||
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
||||||
@ -110,6 +112,7 @@ go_test(
|
|||||||
"//pkg/controller/resourcequota/config:go_default_library",
|
"//pkg/controller/resourcequota/config:go_default_library",
|
||||||
"//pkg/controller/service/config:go_default_library",
|
"//pkg/controller/service/config:go_default_library",
|
||||||
"//pkg/controller/serviceaccount/config:go_default_library",
|
"//pkg/controller/serviceaccount/config:go_default_library",
|
||||||
|
"//pkg/controller/statefulset/config:go_default_library",
|
||||||
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
||||||
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
||||||
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
||||||
|
@ -63,6 +63,7 @@ type KubeControllerManagerOptions struct {
|
|||||||
CSRSigningController *CSRSigningControllerOptions
|
CSRSigningController *CSRSigningControllerOptions
|
||||||
DaemonSetController *DaemonSetControllerOptions
|
DaemonSetController *DaemonSetControllerOptions
|
||||||
DeploymentController *DeploymentControllerOptions
|
DeploymentController *DeploymentControllerOptions
|
||||||
|
StatefulSetController *StatefulSetControllerOptions
|
||||||
DeprecatedFlags *DeprecatedControllerOptions
|
DeprecatedFlags *DeprecatedControllerOptions
|
||||||
EndpointController *EndpointControllerOptions
|
EndpointController *EndpointControllerOptions
|
||||||
GarbageCollectorController *GarbageCollectorControllerOptions
|
GarbageCollectorController *GarbageCollectorControllerOptions
|
||||||
@ -114,6 +115,9 @@ func NewKubeControllerManagerOptions() (*KubeControllerManagerOptions, error) {
|
|||||||
DeploymentController: &DeploymentControllerOptions{
|
DeploymentController: &DeploymentControllerOptions{
|
||||||
&componentConfig.DeploymentController,
|
&componentConfig.DeploymentController,
|
||||||
},
|
},
|
||||||
|
StatefulSetController: &StatefulSetControllerOptions{
|
||||||
|
&componentConfig.StatefulSetController,
|
||||||
|
},
|
||||||
DeprecatedFlags: &DeprecatedControllerOptions{
|
DeprecatedFlags: &DeprecatedControllerOptions{
|
||||||
&componentConfig.DeprecatedController,
|
&componentConfig.DeprecatedController,
|
||||||
},
|
},
|
||||||
@ -216,6 +220,7 @@ func (s *KubeControllerManagerOptions) Flags(allControllers []string, disabledBy
|
|||||||
s.AttachDetachController.AddFlags(fss.FlagSet("attachdetach controller"))
|
s.AttachDetachController.AddFlags(fss.FlagSet("attachdetach controller"))
|
||||||
s.CSRSigningController.AddFlags(fss.FlagSet("csrsigning controller"))
|
s.CSRSigningController.AddFlags(fss.FlagSet("csrsigning controller"))
|
||||||
s.DeploymentController.AddFlags(fss.FlagSet("deployment controller"))
|
s.DeploymentController.AddFlags(fss.FlagSet("deployment controller"))
|
||||||
|
s.StatefulSetController.AddFlags(fss.FlagSet("statefulset controller"))
|
||||||
s.DaemonSetController.AddFlags(fss.FlagSet("daemonset controller"))
|
s.DaemonSetController.AddFlags(fss.FlagSet("daemonset controller"))
|
||||||
s.DeprecatedFlags.AddFlags(fss.FlagSet("deprecated"))
|
s.DeprecatedFlags.AddFlags(fss.FlagSet("deprecated"))
|
||||||
s.EndpointController.AddFlags(fss.FlagSet("endpoint controller"))
|
s.EndpointController.AddFlags(fss.FlagSet("endpoint controller"))
|
||||||
@ -261,6 +266,9 @@ func (s *KubeControllerManagerOptions) ApplyTo(c *kubecontrollerconfig.Config) e
|
|||||||
if err := s.DeploymentController.ApplyTo(&c.ComponentConfig.DeploymentController); err != nil {
|
if err := s.DeploymentController.ApplyTo(&c.ComponentConfig.DeploymentController); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if err := s.StatefulSetController.ApplyTo(&c.ComponentConfig.StatefulSetController); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
if err := s.DeprecatedFlags.ApplyTo(&c.ComponentConfig.DeprecatedController); err != nil {
|
if err := s.DeprecatedFlags.ApplyTo(&c.ComponentConfig.DeprecatedController); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -342,6 +350,7 @@ func (s *KubeControllerManagerOptions) Validate(allControllers []string, disable
|
|||||||
errs = append(errs, s.CSRSigningController.Validate()...)
|
errs = append(errs, s.CSRSigningController.Validate()...)
|
||||||
errs = append(errs, s.DaemonSetController.Validate()...)
|
errs = append(errs, s.DaemonSetController.Validate()...)
|
||||||
errs = append(errs, s.DeploymentController.Validate()...)
|
errs = append(errs, s.DeploymentController.Validate()...)
|
||||||
|
errs = append(errs, s.StatefulSetController.Validate()...)
|
||||||
errs = append(errs, s.DeprecatedFlags.Validate()...)
|
errs = append(errs, s.DeprecatedFlags.Validate()...)
|
||||||
errs = append(errs, s.EndpointController.Validate()...)
|
errs = append(errs, s.EndpointController.Validate()...)
|
||||||
errs = append(errs, s.GarbageCollectorController.Validate()...)
|
errs = append(errs, s.GarbageCollectorController.Validate()...)
|
||||||
|
@ -47,6 +47,7 @@ import (
|
|||||||
resourcequotaconfig "k8s.io/kubernetes/pkg/controller/resourcequota/config"
|
resourcequotaconfig "k8s.io/kubernetes/pkg/controller/resourcequota/config"
|
||||||
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
||||||
serviceaccountconfig "k8s.io/kubernetes/pkg/controller/serviceaccount/config"
|
serviceaccountconfig "k8s.io/kubernetes/pkg/controller/serviceaccount/config"
|
||||||
|
statefulsetconfig "k8s.io/kubernetes/pkg/controller/statefulset/config"
|
||||||
ttlafterfinishedconfig "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config"
|
ttlafterfinishedconfig "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config"
|
||||||
attachdetachconfig "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config"
|
attachdetachconfig "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config"
|
||||||
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
||||||
@ -71,6 +72,7 @@ func TestAddFlags(t *testing.T) {
|
|||||||
"--cluster-signing-cert-file=/cluster-signing-cert",
|
"--cluster-signing-cert-file=/cluster-signing-cert",
|
||||||
"--cluster-signing-key-file=/cluster-signing-key",
|
"--cluster-signing-key-file=/cluster-signing-key",
|
||||||
"--concurrent-deployment-syncs=10",
|
"--concurrent-deployment-syncs=10",
|
||||||
|
"--concurrent-statefulset-syncs=15",
|
||||||
"--concurrent-endpoint-syncs=10",
|
"--concurrent-endpoint-syncs=10",
|
||||||
"--concurrent-gc-syncs=30",
|
"--concurrent-gc-syncs=30",
|
||||||
"--concurrent-namespace-syncs=20",
|
"--concurrent-namespace-syncs=20",
|
||||||
@ -216,6 +218,11 @@ func TestAddFlags(t *testing.T) {
|
|||||||
DeploymentControllerSyncPeriod: metav1.Duration{Duration: 45 * time.Second},
|
DeploymentControllerSyncPeriod: metav1.Duration{Duration: 45 * time.Second},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
StatefulSetController: &StatefulSetControllerOptions{
|
||||||
|
&statefulsetconfig.StatefulSetControllerConfiguration{
|
||||||
|
ConcurrentStatefulSetSyncs: 15,
|
||||||
|
},
|
||||||
|
},
|
||||||
DeprecatedFlags: &DeprecatedControllerOptions{
|
DeprecatedFlags: &DeprecatedControllerOptions{
|
||||||
&kubectrlmgrconfig.DeprecatedControllerConfiguration{
|
&kubectrlmgrconfig.DeprecatedControllerConfiguration{
|
||||||
DeletingPodsQPS: 0.1,
|
DeletingPodsQPS: 0.1,
|
||||||
|
@ -0,0 +1,63 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2019 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package options
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
|
"github.com/spf13/pflag"
|
||||||
|
|
||||||
|
statefulsetconfig "k8s.io/kubernetes/pkg/controller/statefulset/config"
|
||||||
|
)
|
||||||
|
|
||||||
|
// StatefulSetControllerOptions holds the StatefulSetController options.
|
||||||
|
type StatefulSetControllerOptions struct {
|
||||||
|
*statefulsetconfig.StatefulSetControllerConfiguration
|
||||||
|
}
|
||||||
|
|
||||||
|
// AddFlags adds flags related to StatefulSetController for controller manager to the specified FlagSet.
|
||||||
|
func (o *StatefulSetControllerOptions) AddFlags(fs *pflag.FlagSet) {
|
||||||
|
if o == nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
fs.Int32Var(&o.ConcurrentStatefulSetSyncs, "concurrent-statefulset-syncs", o.ConcurrentStatefulSetSyncs, "The number of statefulset objects that are allowed to sync concurrently. Larger number = more responsive statefulsets, but more CPU (and network) load")
|
||||||
|
}
|
||||||
|
|
||||||
|
// ApplyTo fills up StatefulSetController config with options.
|
||||||
|
func (o *StatefulSetControllerOptions) ApplyTo(cfg *statefulsetconfig.StatefulSetControllerConfiguration) error {
|
||||||
|
if o == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
cfg.ConcurrentStatefulSetSyncs = o.ConcurrentStatefulSetSyncs
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// Validate checks validation of StatefulSetControllerOptions.
|
||||||
|
func (o *StatefulSetControllerOptions) Validate() []error {
|
||||||
|
if o == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
errs := []error{}
|
||||||
|
if o.ConcurrentStatefulSetSyncs < 1 {
|
||||||
|
errs = append(errs, fmt.Errorf("concurrent-statefulset-syncs must be greater than 0, but got %d", o.ConcurrentStatefulSetSyncs))
|
||||||
|
}
|
||||||
|
return errs
|
||||||
|
}
|
@ -90,6 +90,7 @@ pkg/controller/service
|
|||||||
pkg/controller/service/config/v1alpha1
|
pkg/controller/service/config/v1alpha1
|
||||||
pkg/controller/serviceaccount/config/v1alpha1
|
pkg/controller/serviceaccount/config/v1alpha1
|
||||||
pkg/controller/statefulset
|
pkg/controller/statefulset
|
||||||
|
pkg/controller/statefulset/config/v1alpha1
|
||||||
pkg/controller/ttl
|
pkg/controller/ttl
|
||||||
pkg/controller/ttlafterfinished/config/v1alpha1
|
pkg/controller/ttlafterfinished/config/v1alpha1
|
||||||
pkg/controller/volume/attachdetach
|
pkg/controller/volume/attachdetach
|
||||||
|
@ -27,6 +27,7 @@ go_library(
|
|||||||
"//pkg/controller/resourcequota/config:go_default_library",
|
"//pkg/controller/resourcequota/config:go_default_library",
|
||||||
"//pkg/controller/service/config:go_default_library",
|
"//pkg/controller/service/config:go_default_library",
|
||||||
"//pkg/controller/serviceaccount/config:go_default_library",
|
"//pkg/controller/serviceaccount/config:go_default_library",
|
||||||
|
"//pkg/controller/statefulset/config:go_default_library",
|
||||||
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
"//pkg/controller/ttlafterfinished/config:go_default_library",
|
||||||
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
"//pkg/controller/volume/attachdetach/config:go_default_library",
|
||||||
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
"//pkg/controller/volume/persistentvolume/config:go_default_library",
|
||||||
|
@ -35,6 +35,7 @@ import (
|
|||||||
resourcequotaconfig "k8s.io/kubernetes/pkg/controller/resourcequota/config"
|
resourcequotaconfig "k8s.io/kubernetes/pkg/controller/resourcequota/config"
|
||||||
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
serviceconfig "k8s.io/kubernetes/pkg/controller/service/config"
|
||||||
serviceaccountconfig "k8s.io/kubernetes/pkg/controller/serviceaccount/config"
|
serviceaccountconfig "k8s.io/kubernetes/pkg/controller/serviceaccount/config"
|
||||||
|
statefulsetconfig "k8s.io/kubernetes/pkg/controller/statefulset/config"
|
||||||
ttlafterfinishedconfig "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config"
|
ttlafterfinishedconfig "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config"
|
||||||
attachdetachconfig "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config"
|
attachdetachconfig "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config"
|
||||||
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
persistentvolumeconfig "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config"
|
||||||
@ -64,6 +65,9 @@ type KubeControllerManagerConfiguration struct {
|
|||||||
// DeploymentControllerConfiguration holds configuration for
|
// DeploymentControllerConfiguration holds configuration for
|
||||||
// DeploymentController related features.
|
// DeploymentController related features.
|
||||||
DeploymentController deploymentconfig.DeploymentControllerConfiguration
|
DeploymentController deploymentconfig.DeploymentControllerConfiguration
|
||||||
|
// StatefulSetControllerConfiguration holds configuration for
|
||||||
|
// StatefulSetController related features.
|
||||||
|
StatefulSetController statefulsetconfig.StatefulSetControllerConfiguration
|
||||||
// DeprecatedControllerConfiguration holds configuration for some deprecated
|
// DeprecatedControllerConfiguration holds configuration for some deprecated
|
||||||
// features.
|
// features.
|
||||||
DeprecatedController DeprecatedControllerConfiguration
|
DeprecatedController DeprecatedControllerConfiguration
|
||||||
|
@ -31,6 +31,7 @@ go_library(
|
|||||||
"//pkg/controller/resourcequota/config/v1alpha1:go_default_library",
|
"//pkg/controller/resourcequota/config/v1alpha1:go_default_library",
|
||||||
"//pkg/controller/service/config/v1alpha1:go_default_library",
|
"//pkg/controller/service/config/v1alpha1:go_default_library",
|
||||||
"//pkg/controller/serviceaccount/config/v1alpha1:go_default_library",
|
"//pkg/controller/serviceaccount/config/v1alpha1:go_default_library",
|
||||||
|
"//pkg/controller/statefulset/config/v1alpha1:go_default_library",
|
||||||
"//pkg/controller/ttlafterfinished/config/v1alpha1:go_default_library",
|
"//pkg/controller/ttlafterfinished/config/v1alpha1:go_default_library",
|
||||||
"//pkg/controller/volume/attachdetach/config/v1alpha1:go_default_library",
|
"//pkg/controller/volume/attachdetach/config/v1alpha1:go_default_library",
|
||||||
"//pkg/controller/volume/persistentvolume/config/v1alpha1:go_default_library",
|
"//pkg/controller/volume/persistentvolume/config/v1alpha1:go_default_library",
|
||||||
|
@ -39,6 +39,7 @@ import (
|
|||||||
resourcequotaconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1"
|
resourcequotaconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1"
|
||||||
serviceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/service/config/v1alpha1"
|
serviceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/service/config/v1alpha1"
|
||||||
serviceaccountconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1"
|
serviceaccountconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1"
|
||||||
|
statefulsetconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/statefulset/config/v1alpha1"
|
||||||
ttlafterfinishedconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1"
|
ttlafterfinishedconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1"
|
||||||
attachdetachconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1"
|
attachdetachconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1"
|
||||||
persistentvolumeconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1"
|
persistentvolumeconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1"
|
||||||
@ -73,6 +74,8 @@ func SetDefaults_KubeControllerManagerConfiguration(obj *kubectrlmgrconfigv1alph
|
|||||||
daemonconfigv1alpha1.RecommendedDefaultDaemonSetControllerConfiguration(&obj.DaemonSetController)
|
daemonconfigv1alpha1.RecommendedDefaultDaemonSetControllerConfiguration(&obj.DaemonSetController)
|
||||||
// Use the default RecommendedDefaultDeploymentControllerConfiguration options
|
// Use the default RecommendedDefaultDeploymentControllerConfiguration options
|
||||||
deploymentconfigv1alpha1.RecommendedDefaultDeploymentControllerConfiguration(&obj.DeploymentController)
|
deploymentconfigv1alpha1.RecommendedDefaultDeploymentControllerConfiguration(&obj.DeploymentController)
|
||||||
|
// Use the default RecommendedDefaultStatefulSetControllerConfiguration options
|
||||||
|
statefulsetconfigv1alpha1.RecommendedDefaultStatefulSetControllerConfiguration(&obj.StatefulSetController)
|
||||||
// Use the default RecommendedDefaultEndpointControllerConfiguration options
|
// Use the default RecommendedDefaultEndpointControllerConfiguration options
|
||||||
endpointconfigv1alpha1.RecommendedDefaultEndpointControllerConfiguration(&obj.EndpointController)
|
endpointconfigv1alpha1.RecommendedDefaultEndpointControllerConfiguration(&obj.EndpointController)
|
||||||
// Use the default RecommendedDefaultGenericControllerManagerConfiguration options
|
// Use the default RecommendedDefaultGenericControllerManagerConfiguration options
|
||||||
|
@ -33,6 +33,7 @@ limitations under the License.
|
|||||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1
|
||||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/service/config/v1alpha1
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/service/config/v1alpha1
|
||||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1
|
||||||
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/statefulset/config/v1alpha1
|
||||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1
|
||||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1
|
||||||
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1
|
||||||
|
@ -45,6 +45,7 @@ import (
|
|||||||
resourcequotaconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1"
|
resourcequotaconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/resourcequota/config/v1alpha1"
|
||||||
serviceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/service/config/v1alpha1"
|
serviceconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/service/config/v1alpha1"
|
||||||
serviceaccountconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1"
|
serviceaccountconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/serviceaccount/config/v1alpha1"
|
||||||
|
statefulsetconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/statefulset/config/v1alpha1"
|
||||||
ttlafterfinishedconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1"
|
ttlafterfinishedconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/ttlafterfinished/config/v1alpha1"
|
||||||
attachdetachconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1"
|
attachdetachconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/attachdetach/config/v1alpha1"
|
||||||
persistentvolumeconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1"
|
persistentvolumeconfigv1alpha1 "k8s.io/kubernetes/pkg/controller/volume/persistentvolume/config/v1alpha1"
|
||||||
@ -303,6 +304,9 @@ func autoConvert_v1alpha1_KubeControllerManagerConfiguration_To_config_KubeContr
|
|||||||
if err := deploymentconfigv1alpha1.Convert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil {
|
if err := deploymentconfigv1alpha1.Convert_v1alpha1_DeploymentControllerConfiguration_To_config_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if err := statefulsetconfigv1alpha1.Convert_v1alpha1_StatefulSetControllerConfiguration_To_config_StatefulSetControllerConfiguration(&in.StatefulSetController, &out.StatefulSetController, s); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
if err := Convert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil {
|
if err := Convert_v1alpha1_DeprecatedControllerConfiguration_To_config_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -378,6 +382,9 @@ func autoConvert_config_KubeControllerManagerConfiguration_To_v1alpha1_KubeContr
|
|||||||
if err := deploymentconfigv1alpha1.Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil {
|
if err := deploymentconfigv1alpha1.Convert_config_DeploymentControllerConfiguration_To_v1alpha1_DeploymentControllerConfiguration(&in.DeploymentController, &out.DeploymentController, s); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
if err := statefulsetconfigv1alpha1.Convert_config_StatefulSetControllerConfiguration_To_v1alpha1_StatefulSetControllerConfiguration(&in.StatefulSetController, &out.StatefulSetController, s); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
if err := Convert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil {
|
if err := Convert_config_DeprecatedControllerConfiguration_To_v1alpha1_DeprecatedControllerConfiguration(&in.DeprecatedController, &out.DeprecatedController, s); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -112,6 +112,7 @@ func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerMa
|
|||||||
out.CSRSigningController = in.CSRSigningController
|
out.CSRSigningController = in.CSRSigningController
|
||||||
out.DaemonSetController = in.DaemonSetController
|
out.DaemonSetController = in.DaemonSetController
|
||||||
out.DeploymentController = in.DeploymentController
|
out.DeploymentController = in.DeploymentController
|
||||||
|
out.StatefulSetController = in.StatefulSetController
|
||||||
out.DeprecatedController = in.DeprecatedController
|
out.DeprecatedController = in.DeprecatedController
|
||||||
out.EndpointController = in.EndpointController
|
out.EndpointController = in.EndpointController
|
||||||
in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController)
|
in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController)
|
||||||
|
@ -92,6 +92,9 @@ filegroup(
|
|||||||
|
|
||||||
filegroup(
|
filegroup(
|
||||||
name = "all-srcs",
|
name = "all-srcs",
|
||||||
srcs = [":package-srcs"],
|
srcs = [
|
||||||
|
":package-srcs",
|
||||||
|
"//pkg/controller/statefulset/config:all-srcs",
|
||||||
|
],
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
)
|
)
|
||||||
|
29
pkg/controller/statefulset/config/BUILD
Normal file
29
pkg/controller/statefulset/config/BUILD
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||||
|
|
||||||
|
go_library(
|
||||||
|
name = "go_default_library",
|
||||||
|
srcs = [
|
||||||
|
"doc.go",
|
||||||
|
"types.go",
|
||||||
|
"zz_generated.deepcopy.go",
|
||||||
|
],
|
||||||
|
importpath = "k8s.io/kubernetes/pkg/controller/statefulset/config",
|
||||||
|
visibility = ["//visibility:public"],
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "package-srcs",
|
||||||
|
srcs = glob(["**"]),
|
||||||
|
tags = ["automanaged"],
|
||||||
|
visibility = ["//visibility:private"],
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "all-srcs",
|
||||||
|
srcs = [
|
||||||
|
":package-srcs",
|
||||||
|
"//pkg/controller/statefulset/config/v1alpha1:all-srcs",
|
||||||
|
],
|
||||||
|
tags = ["automanaged"],
|
||||||
|
visibility = ["//visibility:public"],
|
||||||
|
)
|
14
pkg/controller/statefulset/config/OWNERS
Normal file
14
pkg/controller/statefulset/config/OWNERS
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
approvers:
|
||||||
|
- api-approvers
|
||||||
|
- deads2k
|
||||||
|
- luxas
|
||||||
|
- mtaufen
|
||||||
|
- sttts
|
||||||
|
- stewart-yu
|
||||||
|
reviewers:
|
||||||
|
- api-reviewers
|
||||||
|
- deads2k
|
||||||
|
- luxas
|
||||||
|
- mtaufen
|
||||||
|
- sttts
|
||||||
|
- stewart-yu
|
19
pkg/controller/statefulset/config/doc.go
Normal file
19
pkg/controller/statefulset/config/doc.go
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2019 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// +k8s:deepcopy-gen=package
|
||||||
|
|
||||||
|
package config // import "k8s.io/kubernetes/pkg/controller/statefulset/config"
|
25
pkg/controller/statefulset/config/types.go
Normal file
25
pkg/controller/statefulset/config/types.go
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2019 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package config
|
||||||
|
|
||||||
|
// StatefulSetControllerConfiguration contains elements describing StatefulSetController.
|
||||||
|
type StatefulSetControllerConfiguration struct {
|
||||||
|
// concurrentStatefulSetSyncs is the number of statefulset objects that are
|
||||||
|
// allowed to sync concurrently. Larger number = more responsive statefulsets,
|
||||||
|
// but more CPU (and network) load.
|
||||||
|
ConcurrentStatefulSetSyncs int32
|
||||||
|
}
|
36
pkg/controller/statefulset/config/v1alpha1/BUILD
Normal file
36
pkg/controller/statefulset/config/v1alpha1/BUILD
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
||||||
|
|
||||||
|
go_library(
|
||||||
|
name = "go_default_library",
|
||||||
|
srcs = [
|
||||||
|
"conversion.go",
|
||||||
|
"defaults.go",
|
||||||
|
"doc.go",
|
||||||
|
"register.go",
|
||||||
|
"zz_generated.conversion.go",
|
||||||
|
"zz_generated.deepcopy.go",
|
||||||
|
],
|
||||||
|
importpath = "k8s.io/kubernetes/pkg/controller/statefulset/config/v1alpha1",
|
||||||
|
visibility = ["//visibility:public"],
|
||||||
|
deps = [
|
||||||
|
"//pkg/controller/statefulset/config:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/conversion:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
|
"//staging/src/k8s.io/kube-controller-manager/config/v1alpha1:go_default_library",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "package-srcs",
|
||||||
|
srcs = glob(["**"]),
|
||||||
|
tags = ["automanaged"],
|
||||||
|
visibility = ["//visibility:private"],
|
||||||
|
)
|
||||||
|
|
||||||
|
filegroup(
|
||||||
|
name = "all-srcs",
|
||||||
|
srcs = [":package-srcs"],
|
||||||
|
tags = ["automanaged"],
|
||||||
|
visibility = ["//visibility:public"],
|
||||||
|
)
|
40
pkg/controller/statefulset/config/v1alpha1/conversion.go
Normal file
40
pkg/controller/statefulset/config/v1alpha1/conversion.go
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2019 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1alpha1
|
||||||
|
|
||||||
|
import (
|
||||||
|
"k8s.io/apimachinery/pkg/conversion"
|
||||||
|
"k8s.io/kube-controller-manager/config/v1alpha1"
|
||||||
|
statefulsetconfig "k8s.io/kubernetes/pkg/controller/statefulset/config"
|
||||||
|
)
|
||||||
|
|
||||||
|
// Important! The public back-and-forth conversion functions for the types in this package
|
||||||
|
// with StatefulsetControllerConfiguration types need to be manually exposed like this in order for
|
||||||
|
// other packages that reference this package to be able to call these conversion functions
|
||||||
|
// in an autogenerated manner.
|
||||||
|
// TODO: Fix the bug in conversion-gen so it automatically discovers these Convert_* functions
|
||||||
|
// in autogenerated code as well.
|
||||||
|
|
||||||
|
// Convert_v1alpha1_StatefulSetControllerConfiguration_To_config_StatefulSetControllerConfiguration is an autogenerated conversion function.
|
||||||
|
func Convert_v1alpha1_StatefulSetControllerConfiguration_To_config_StatefulSetControllerConfiguration(in *v1alpha1.StatefulSetControllerConfiguration, out *statefulsetconfig.StatefulSetControllerConfiguration, s conversion.Scope) error {
|
||||||
|
return autoConvert_v1alpha1_StatefulSetControllerConfiguration_To_config_StatefulSetControllerConfiguration(in, out, s)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Convert_config_StatefulSetControllerConfiguration_To_v1alpha1_StatefulSetControllerConfiguration is an autogenerated conversion function.
|
||||||
|
func Convert_config_StatefulSetControllerConfiguration_To_v1alpha1_StatefulSetControllerConfiguration(in *statefulsetconfig.StatefulSetControllerConfiguration, out *v1alpha1.StatefulSetControllerConfiguration, s conversion.Scope) error {
|
||||||
|
return autoConvert_config_StatefulSetControllerConfiguration_To_v1alpha1_StatefulSetControllerConfiguration(in, out, s)
|
||||||
|
}
|
36
pkg/controller/statefulset/config/v1alpha1/defaults.go
Normal file
36
pkg/controller/statefulset/config/v1alpha1/defaults.go
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2019 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1alpha1
|
||||||
|
|
||||||
|
import (
|
||||||
|
kubectrlmgrconfigv1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||||
|
)
|
||||||
|
|
||||||
|
// RecommendedDefaultStatefulSetControllerConfiguration defaults a pointer to a
|
||||||
|
// StatefulSetControllerConfiguration struct. This will set the recommended default
|
||||||
|
// values, but they may be subject to change between API versions. This function
|
||||||
|
// is intentionally not registered in the scheme as a "normal" `SetDefaults_Foo`
|
||||||
|
// function to allow consumers of this type to set whatever defaults for their
|
||||||
|
// embedded configs. Forcing consumers to use these defaults would be problematic
|
||||||
|
// as defaulting in the scheme is done as part of the conversion, and there would
|
||||||
|
// be no easy way to opt-out. Instead, if you want to use this defaulting method
|
||||||
|
// run it in your wrapper struct of this type in its `SetDefaults_` method.
|
||||||
|
func RecommendedDefaultStatefulSetControllerConfiguration(obj *kubectrlmgrconfigv1alpha1.StatefulSetControllerConfiguration) {
|
||||||
|
if obj.ConcurrentStatefulSetSyncs == 0 {
|
||||||
|
obj.ConcurrentStatefulSetSyncs = 5
|
||||||
|
}
|
||||||
|
}
|
21
pkg/controller/statefulset/config/v1alpha1/doc.go
Normal file
21
pkg/controller/statefulset/config/v1alpha1/doc.go
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2019 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// +k8s:deepcopy-gen=package
|
||||||
|
// +k8s:conversion-gen=k8s.io/kubernetes/pkg/controller/statefulset/config
|
||||||
|
// +k8s:conversion-gen-external-types=k8s.io/kube-controller-manager/config/v1alpha1
|
||||||
|
|
||||||
|
package v1alpha1 // import "k8s.io/kubernetes/pkg/controller/statefulset/config/v1alpha1"
|
31
pkg/controller/statefulset/config/v1alpha1/register.go
Normal file
31
pkg/controller/statefulset/config/v1alpha1/register.go
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2019 The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package v1alpha1
|
||||||
|
|
||||||
|
import (
|
||||||
|
"k8s.io/apimachinery/pkg/runtime"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
// SchemeBuilder is the scheme builder with scheme init functions to run for this API package
|
||||||
|
SchemeBuilder runtime.SchemeBuilder
|
||||||
|
// localSchemeBuilder extends the SchemeBuilder instance with the external types. In this package,
|
||||||
|
// defaulting and conversion init funcs are registered as well.
|
||||||
|
localSchemeBuilder = &SchemeBuilder
|
||||||
|
// AddToScheme is a global function that registers this API group & version to a scheme
|
||||||
|
AddToScheme = localSchemeBuilder.AddToScheme
|
||||||
|
)
|
101
pkg/controller/statefulset/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
101
pkg/controller/statefulset/config/v1alpha1/zz_generated.conversion.go
generated
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
// +build !ignore_autogenerated
|
||||||
|
|
||||||
|
/*
|
||||||
|
Copyright The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Code generated by conversion-gen. DO NOT EDIT.
|
||||||
|
|
||||||
|
package v1alpha1
|
||||||
|
|
||||||
|
import (
|
||||||
|
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
|
conversion "k8s.io/apimachinery/pkg/conversion"
|
||||||
|
runtime "k8s.io/apimachinery/pkg/runtime"
|
||||||
|
v1alpha1 "k8s.io/kube-controller-manager/config/v1alpha1"
|
||||||
|
config "k8s.io/kubernetes/pkg/controller/statefulset/config"
|
||||||
|
)
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
localSchemeBuilder.Register(RegisterConversions)
|
||||||
|
}
|
||||||
|
|
||||||
|
// RegisterConversions adds conversion functions to the given scheme.
|
||||||
|
// Public to allow building arbitrary schemes.
|
||||||
|
func RegisterConversions(s *runtime.Scheme) error {
|
||||||
|
if err := s.AddGeneratedConversionFunc((*v1alpha1.GroupResource)(nil), (*v1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||||
|
return Convert_v1alpha1_GroupResource_To_v1_GroupResource(a.(*v1alpha1.GroupResource), b.(*v1.GroupResource), scope)
|
||||||
|
}); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := s.AddGeneratedConversionFunc((*v1.GroupResource)(nil), (*v1alpha1.GroupResource)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||||
|
return Convert_v1_GroupResource_To_v1alpha1_GroupResource(a.(*v1.GroupResource), b.(*v1alpha1.GroupResource), scope)
|
||||||
|
}); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := s.AddGeneratedConversionFunc((*v1alpha1.StatefulSetControllerConfiguration)(nil), (*config.StatefulSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||||
|
return Convert_v1alpha1_StatefulSetControllerConfiguration_To_config_StatefulSetControllerConfiguration(a.(*v1alpha1.StatefulSetControllerConfiguration), b.(*config.StatefulSetControllerConfiguration), scope)
|
||||||
|
}); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := s.AddGeneratedConversionFunc((*config.StatefulSetControllerConfiguration)(nil), (*v1alpha1.StatefulSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||||
|
return Convert_config_StatefulSetControllerConfiguration_To_v1alpha1_StatefulSetControllerConfiguration(a.(*config.StatefulSetControllerConfiguration), b.(*v1alpha1.StatefulSetControllerConfiguration), scope)
|
||||||
|
}); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := s.AddConversionFunc((*config.StatefulSetControllerConfiguration)(nil), (*v1alpha1.StatefulSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||||
|
return Convert_config_StatefulSetControllerConfiguration_To_v1alpha1_StatefulSetControllerConfiguration(a.(*config.StatefulSetControllerConfiguration), b.(*v1alpha1.StatefulSetControllerConfiguration), scope)
|
||||||
|
}); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := s.AddConversionFunc((*v1alpha1.StatefulSetControllerConfiguration)(nil), (*config.StatefulSetControllerConfiguration)(nil), func(a, b interface{}, scope conversion.Scope) error {
|
||||||
|
return Convert_v1alpha1_StatefulSetControllerConfiguration_To_config_StatefulSetControllerConfiguration(a.(*v1alpha1.StatefulSetControllerConfiguration), b.(*config.StatefulSetControllerConfiguration), scope)
|
||||||
|
}); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||||
|
out.Group = in.Group
|
||||||
|
out.Resource = in.Resource
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// Convert_v1alpha1_GroupResource_To_v1_GroupResource is an autogenerated conversion function.
|
||||||
|
func Convert_v1alpha1_GroupResource_To_v1_GroupResource(in *v1alpha1.GroupResource, out *v1.GroupResource, s conversion.Scope) error {
|
||||||
|
return autoConvert_v1alpha1_GroupResource_To_v1_GroupResource(in, out, s)
|
||||||
|
}
|
||||||
|
|
||||||
|
func autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||||
|
out.Group = in.Group
|
||||||
|
out.Resource = in.Resource
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
// Convert_v1_GroupResource_To_v1alpha1_GroupResource is an autogenerated conversion function.
|
||||||
|
func Convert_v1_GroupResource_To_v1alpha1_GroupResource(in *v1.GroupResource, out *v1alpha1.GroupResource, s conversion.Scope) error {
|
||||||
|
return autoConvert_v1_GroupResource_To_v1alpha1_GroupResource(in, out, s)
|
||||||
|
}
|
||||||
|
|
||||||
|
func autoConvert_v1alpha1_StatefulSetControllerConfiguration_To_config_StatefulSetControllerConfiguration(in *v1alpha1.StatefulSetControllerConfiguration, out *config.StatefulSetControllerConfiguration, s conversion.Scope) error {
|
||||||
|
out.ConcurrentStatefulSetSyncs = in.ConcurrentStatefulSetSyncs
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func autoConvert_config_StatefulSetControllerConfiguration_To_v1alpha1_StatefulSetControllerConfiguration(in *config.StatefulSetControllerConfiguration, out *v1alpha1.StatefulSetControllerConfiguration, s conversion.Scope) error {
|
||||||
|
out.ConcurrentStatefulSetSyncs = in.ConcurrentStatefulSetSyncs
|
||||||
|
return nil
|
||||||
|
}
|
21
pkg/controller/statefulset/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
21
pkg/controller/statefulset/config/v1alpha1/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
// +build !ignore_autogenerated
|
||||||
|
|
||||||
|
/*
|
||||||
|
Copyright The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Code generated by deepcopy-gen. DO NOT EDIT.
|
||||||
|
|
||||||
|
package v1alpha1
|
37
pkg/controller/statefulset/config/zz_generated.deepcopy.go
generated
Normal file
37
pkg/controller/statefulset/config/zz_generated.deepcopy.go
generated
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
// +build !ignore_autogenerated
|
||||||
|
|
||||||
|
/*
|
||||||
|
Copyright The Kubernetes Authors.
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Code generated by deepcopy-gen. DO NOT EDIT.
|
||||||
|
|
||||||
|
package config
|
||||||
|
|
||||||
|
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||||
|
func (in *StatefulSetControllerConfiguration) DeepCopyInto(out *StatefulSetControllerConfiguration) {
|
||||||
|
*out = *in
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatefulSetControllerConfiguration.
|
||||||
|
func (in *StatefulSetControllerConfiguration) DeepCopy() *StatefulSetControllerConfiguration {
|
||||||
|
if in == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
out := new(StatefulSetControllerConfiguration)
|
||||||
|
in.DeepCopyInto(out)
|
||||||
|
return out
|
||||||
|
}
|
@ -102,6 +102,9 @@ type KubeControllerManagerConfiguration struct {
|
|||||||
// DeploymentControllerConfiguration holds configuration for
|
// DeploymentControllerConfiguration holds configuration for
|
||||||
// DeploymentController related features.
|
// DeploymentController related features.
|
||||||
DeploymentController DeploymentControllerConfiguration
|
DeploymentController DeploymentControllerConfiguration
|
||||||
|
// StatefulSetControllerConfiguration holds configuration for
|
||||||
|
// StatefulSetController related features.
|
||||||
|
StatefulSetController StatefulSetControllerConfiguration
|
||||||
// DeprecatedControllerConfiguration holds configuration for some deprecated
|
// DeprecatedControllerConfiguration holds configuration for some deprecated
|
||||||
// features.
|
// features.
|
||||||
DeprecatedController DeprecatedControllerConfiguration
|
DeprecatedController DeprecatedControllerConfiguration
|
||||||
@ -260,6 +263,14 @@ type DeploymentControllerConfiguration struct {
|
|||||||
DeploymentControllerSyncPeriod metav1.Duration
|
DeploymentControllerSyncPeriod metav1.Duration
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// StatefulSetControllerConfiguration contains elements describing StatefulSetController.
|
||||||
|
type StatefulSetControllerConfiguration struct {
|
||||||
|
// concurrentStatefulSetSyncs is the number of statefulset objects that are
|
||||||
|
// allowed to sync concurrently. Larger number = more responsive statefulsets,
|
||||||
|
// but more CPU (and network) load.
|
||||||
|
ConcurrentStatefulSetSyncs int32
|
||||||
|
}
|
||||||
|
|
||||||
// DeprecatedControllerConfiguration contains elements be deprecated.
|
// DeprecatedControllerConfiguration contains elements be deprecated.
|
||||||
type DeprecatedControllerConfiguration struct {
|
type DeprecatedControllerConfiguration struct {
|
||||||
// DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in
|
// DEPRECATED: deletingPodsQps is the number of nodes per second on which pods are deleted in
|
||||||
|
@ -286,6 +286,7 @@ func (in *KubeControllerManagerConfiguration) DeepCopyInto(out *KubeControllerMa
|
|||||||
out.CSRSigningController = in.CSRSigningController
|
out.CSRSigningController = in.CSRSigningController
|
||||||
out.DaemonSetController = in.DaemonSetController
|
out.DaemonSetController = in.DaemonSetController
|
||||||
out.DeploymentController = in.DeploymentController
|
out.DeploymentController = in.DeploymentController
|
||||||
|
out.StatefulSetController = in.StatefulSetController
|
||||||
out.DeprecatedController = in.DeprecatedController
|
out.DeprecatedController = in.DeprecatedController
|
||||||
out.EndpointController = in.EndpointController
|
out.EndpointController = in.EndpointController
|
||||||
in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController)
|
in.GarbageCollectorController.DeepCopyInto(&out.GarbageCollectorController)
|
||||||
@ -511,6 +512,22 @@ func (in *ServiceControllerConfiguration) DeepCopy() *ServiceControllerConfigura
|
|||||||
return out
|
return out
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||||
|
func (in *StatefulSetControllerConfiguration) DeepCopyInto(out *StatefulSetControllerConfiguration) {
|
||||||
|
*out = *in
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatefulSetControllerConfiguration.
|
||||||
|
func (in *StatefulSetControllerConfiguration) DeepCopy() *StatefulSetControllerConfiguration {
|
||||||
|
if in == nil {
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
out := new(StatefulSetControllerConfiguration)
|
||||||
|
in.DeepCopyInto(out)
|
||||||
|
return out
|
||||||
|
}
|
||||||
|
|
||||||
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
|
||||||
func (in *TTLAfterFinishedControllerConfiguration) DeepCopyInto(out *TTLAfterFinishedControllerConfiguration) {
|
func (in *TTLAfterFinishedControllerConfiguration) DeepCopyInto(out *TTLAfterFinishedControllerConfiguration) {
|
||||||
*out = *in
|
*out = *in
|
||||||
|
Loading…
Reference in New Issue
Block a user