Commit d519741e authored by kargakis's avatar kargakis

kubelet: Fallback to api server for pod status

This commit fixes getting the logs from complete/failed pods after a kubelet restart by falling back to the api server in case we fail to resolve the pod status using the status cache.
parent 3a5768a0
......@@ -2311,7 +2311,10 @@ func (kl *Kubelet) GetKubeletContainerLogs(podFullName, containerName string, lo
}
podStatus, found := kl.statusManager.GetPodStatus(podUID)
if !found {
return fmt.Errorf("failed to get status for pod %q in namespace %q", name, namespace)
// If there is no cached status, use the status from the
// apiserver. This is useful if kubelet has recently been
// restarted.
podStatus = pod.Status
}
if err := kl.validatePodPhase(&podStatus); err != nil {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment