-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
Fix containerd port exit monitoring #9580
Conversation
…e termination of the listening port. Signed-off-by: ZP-AlwaysWin <[email protected]>
Hi @ZP-AlwaysWin. Thanks for your PR. I'm waiting for a containerd member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Facing the same issue, ie containerd not listening on stream port when enabling NRI, but only on server boot it seems, containerd restart and it works |
Possible fix in NRI: containerd/nri#66 |
nri is tied to the cri plugin I believe.. would have to look deeper but have to ask.. did you try this with a default containerd config? e.g. |
@mikebrow go see the NRI PR, it explains the root cause |
@ZP-AlwaysWin This does not look to me like a real fix for the problem. I think it just hides the bad side-effects. @champtar seems to have a plausible explanation for the root cause and is working on a fix. Let's wait for that and then verify that it gets rid of the experienced misbehavior you reported here. |
@ZP-AlwaysWin One more thing, just to make it sure. You do have at least one containerd-launched plugin in |
PR needs rebase. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
Yes, I have it. |
After starting the NRI plugin, a restart of the container leads to the termination of the listening port.
#8860
config.toml
After enabling the NRI plugin and repeatedly restarting containerd, the issue occurs where the contained process exists but the port exit monitoring fails, resulting in the unavailability of exec and other commands. You can use the following script to reproduce this problem.
The root cause of the issue is believed to be the enabling of the NRI plugin, which involves multiple calls to the net library, thereby affecting the port monitoring. To address this, the solution involves moving the enabling of the NRI plugin before the port monitoring, thus avoiding any interference caused by the net library calls within the NRI. This fix will not impact the existing logic.