exclude terminating pods
@@ -351,6 +351,11 @@ func (k *Kubernetes) findPods(r recordRequest, zone string) (pods []msg.Service,
continue
}
+ // exclude pods in the process of termination
+ if !p.ObjectMeta.DeletionTimestamp.IsZero() {
+ continue
+ }
+
// check for matching ip and namespace
if ip == p.Status.PodIP && match(namespace, p.Namespace) {
s := msg.Service{Key: strings.Join([]string{zonePath, Pod, namespace, podname}, "/"), Host: ip, TTL: k.ttl}
