-
Notifications
You must be signed in to change notification settings - Fork 38.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
kubelet not restarting pod from static manifest (v1.5.2) #40331
Comments
+1 to this, as noted in #40109 |
I've now seen this happen repeatedly, and have had colleagues report it as well. |
@colemickens hopefully you saw my "fix" |
+1. Just ran into this as well. Restarting the kubelet seems to get around it. |
I have also encountered the same problem in azure and aliyun cloud. When i added
into hyperkube-controller.yaml by vim, controller pod failed to renew until I restarted kubelet. |
I've seen this as well.
I think there's a bug where we exit early from the manifest loop and then entire goroutine wedges or dies. |
Makes it hard to debug static pods. |
The kubelet should be ignoring files prefixed with a dot. Seems like this might be a bug? cc @kubernetes/sig-node-bugs |
I remember there was a PR fixed this. Let me find it. |
another related issue #46171 |
#45111 fixed the bug where kubelet did not ignore the "." files properly. This PR was not cherry picked to 1.6. By the way, kubelet does not include filename or source when generating the pod UID, so the temporary file generated by the editor can have the same UID as original pod. Removing the temp file causes the pod to be removed as well. This is part of what causes the confusion. I have a fix for this (#43420), but it's a pre-1.0 bug. Fixing it would causes pods to be restarted when upgrading kubelet in-place, and I'm not sure how much value it adds since the dot file issue has been fixed. |
ping @thockin for closing fixed issue. |
When I helped close some other stale issues days ago, I always ping Tim to batch close them. So I also ping him again here :) |
I think it makes more sense to ping the people who are already involved (e.g., on this thread) to close the issue. I don't know think we should treat @thockin like a bot ;) |
:D |
Oh I checked with @thockin and he did sign up to help close issues like this to encourage people to triage issues :-| |
Thanks Yuju! |
Kubernetes
1.5.2
.kubelet
runs under docker with static manifests forkube-{apiserver,controller-manager,scheduler}
.I just tweaked the
--v
flag on mycontroller-manager
manifest:kubelet
killed the running instancekubelet
failed to start a new instanceEven after
sudo systemctl restart kubelet
... I can see kubelet die, come back up in a new container... but it didn't restartkube-controller-manager
.It seems like it might be getting confused by a dotfile created by
vim
? But I don't understand why it would fail to parse the swap file as a manifest and then proceed to tear down the controller-manager container it was creating...Full
kubelet
log including a couple different attempts to modify the manifest and/or restart kubelet: http://termbin.com/xr12The text was updated successfully, but these errors were encountered: