From 49a0c57c798208d1358514d1efd59b24e5e80219 Mon Sep 17 00:00:00 2001 From: idb <71566757+idebeijer@users.noreply.github.com> Date: Fri, 24 Jan 2025 09:41:22 +0100 Subject: [PATCH] fix: add `--leader-elect` flags back by reverting https://github.com/kubernetes/autoscaler/pull/7233 (#7761) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix: move leader elect flag binding above InitFlags() * Revert https://github.com/kubernetes/autoscaler/pull/7233 https://github.com/kubernetes/autoscaler/pull/7233 broke `--leader-elect` flag by introducing `--lease-resource-name` that is redundant with `--leader-elect-resource-name` * fix: move leader election flag binding above flag parsing which happens in kube_flag.InitFlags() --------- Co-authored-by: Daniel Kłobuszewski --- cluster-autoscaler/main.go | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/cluster-autoscaler/main.go b/cluster-autoscaler/main.go index a1f816a4cf87..d5cec3a01e23 100644 --- a/cluster-autoscaler/main.go +++ b/cluster-autoscaler/main.go @@ -114,7 +114,6 @@ func multiStringFlag(name string, usage string) *MultiStringFlag { } var ( - leaseResourceName = flag.String("lease-resource-name", "cluster-autoscaler", "The lease resource to use in leader election.") clusterName = flag.String("cluster-name", "", "Autoscaled cluster name, if available") address = flag.String("address", ":8085", "The address to expose prometheus metrics.") kubernetes = flag.String("kubernetes", "", "Kubernetes master location. Leave blank for default") @@ -699,6 +698,9 @@ func main() { klog.Fatalf("Failed to add logging feature flags: %v", err) } + leaderElection := leaderElectionConfiguration() + componentopts.BindLeaderElectionFlags(&leaderElection, pflag.CommandLine) + logsapi.AddFlags(loggingConfig, pflag.CommandLine) featureGate.AddFlag(pflag.CommandLine) kube_flag.InitFlags() @@ -712,10 +714,6 @@ func main() { } } - leaderElection := defaultLeaderElectionConfiguration() - leaderElection.LeaderElect = true - componentopts.BindLeaderElectionFlags(&leaderElection, pflag.CommandLine) - logs.InitLogs() if err := logsapi.ValidateAndApply(loggingConfig, featureGate); err != nil { klog.Fatalf("Failed to validate and apply logging configuration: %v", err) @@ -795,14 +793,14 @@ func main() { } } -func defaultLeaderElectionConfiguration() componentbaseconfig.LeaderElectionConfiguration { +func leaderElectionConfiguration() componentbaseconfig.LeaderElectionConfiguration { return componentbaseconfig.LeaderElectionConfiguration{ - LeaderElect: false, + LeaderElect: true, LeaseDuration: metav1.Duration{Duration: defaultLeaseDuration}, RenewDeadline: metav1.Duration{Duration: defaultRenewDeadline}, RetryPeriod: metav1.Duration{Duration: defaultRetryPeriod}, ResourceLock: resourcelock.LeasesResourceLock, - ResourceName: *leaseResourceName, + ResourceName: "cluster-autoscaler", } }