From a0344d64b31417de424ae599df3112f7174551cd Mon Sep 17 00:00:00 2001 From: Timofey Titovets Date: Mon, 4 Dec 2023 22:01:51 +0100 Subject: [PATCH] fix: status.go - ignore terminating pods as leaders Signed-off-by: Timofey Titovets --- internal/ingress/status/status.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/internal/ingress/status/status.go b/internal/ingress/status/status.go index b20be5930..b2daa6ed3 100644 --- a/internal/ingress/status/status.go +++ b/internal/ingress/status/status.go @@ -270,7 +270,18 @@ func (s *statusSync) isRunningMultiplePods() bool { return false } - return len(pods.Items) > 1 + runningPods := make([]apiv1.Pod, 0) + for i := range pods.Items { + pod := pods.Items[i] + if pod.GetDeletionTimestamp() != nil { + klog.InfoS("POD is terminating", "pod", klog.KObj(&pod), "node", pod.Spec.NodeName) + continue + } + + runningPods = append(runningPods, pod) + } + + return len(runningPods) > 1 } // standardizeLoadBalancerIngresses sorts the list of loadbalancer by