From b70c361fc9793ba8eb2c77c1757b8816495854c6 Mon Sep 17 00:00:00 2001 From: Lalatendu Mohanty Date: Wed, 29 Jan 2025 14:02:53 -0500 Subject: [PATCH] UPSTREAM: : Fix leaderelection settings This is a manual backport of https://github.com/openshift/operator-framework-operator-controller/pull/249 to fix leaderelection settings Signed-off-by: Lalatendu Mohanty --- cmd/manager/main.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/cmd/manager/main.go b/cmd/manager/main.go index 82f9e3c8..bd5ad0f5 100644 --- a/cmd/manager/main.go +++ b/cmd/manager/main.go @@ -42,6 +42,7 @@ import ( _ "k8s.io/client-go/plugin/pkg/client/auth" "k8s.io/klog/v2" "k8s.io/klog/v2/textlogger" + "k8s.io/utils/ptr" ctrl "sigs.k8s.io/controller-runtime" crcache "sigs.k8s.io/controller-runtime/pkg/cache" "sigs.k8s.io/controller-runtime/pkg/certwatcher" @@ -203,8 +204,14 @@ func main() { HealthProbeBindAddress: probeAddr, LeaderElection: enableLeaderElection, LeaderElectionID: "catalogd-operator-lock", - WebhookServer: webhookServer, - Cache: cacheOptions, + // Recommended Leader Election values + // https://github.com/openshift/enhancements/blob/61581dcd985130357d6e4b0e72b87ee35394bf6e/CONVENTIONS.md#handling-kube-apiserver-disruption + LeaseDuration: ptr.To(137 * time.Second), + RenewDeadline: ptr.To(107 * time.Second), + RetryPeriod: ptr.To(26 * time.Second), + + WebhookServer: webhookServer, + Cache: cacheOptions, }) if err != nil { setupLog.Error(err, "unable to create manager")