From 760416356008fc627e8d342a7c20d71d000bbbc3 Mon Sep 17 00:00:00 2001 From: Jing Xu Date: Mon, 13 Feb 2017 14:01:52 -0800 Subject: [PATCH] Change default reconciler sync period to 1 minute When default reconciler sync period is set to 5 second, we often see rateLimit issue for a large cluster. This PR is change the period to 1 minute to mitigate this problem. Make this period longer means that there might be some period of time that the cached information in master's attach_detach_controller is out of date. The node might use this information to mount to the wrong device. For GCE PD, since device path is uniquely associated with volume id, so mount operation will just fail because of this outdated information. For AWS, before kubelet might mount to the wrong volume because device path could be reused immediately once it is available. But after PR #38818, device path will only be reused after all device paths have been explored. That means it is very unlikely that kubelet will mount to a wrong volume that is using the old device path that had been assigned to the same node. --- cmd/kube-controller-manager/app/options/options.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/kube-controller-manager/app/options/options.go b/cmd/kube-controller-manager/app/options/options.go index 9d612dbca57..e9fd82f4aa2 100644 --- a/cmd/kube-controller-manager/app/options/options.go +++ b/cmd/kube-controller-manager/app/options/options.go @@ -103,7 +103,7 @@ func NewCMServer() *CMServer { ConcurrentGCSyncs: 20, ClusterSigningCertFile: "/etc/kubernetes/ca/ca.pem", ClusterSigningKeyFile: "/etc/kubernetes/ca/ca.key", - ReconcilerSyncLoopPeriod: metav1.Duration{Duration: 5 * time.Second}, + ReconcilerSyncLoopPeriod: metav1.Duration{Duration: 60 * time.Second}, EnableTaintManager: true, }, }