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
[release/1.7] Fix CRI snapshotter root path when not under containerd root #10096
[release/1.7] Fix CRI snapshotter root path when not under containerd root #10096
Conversation
Signed-off-by: Derek McGowan <derek@mcg.dev> (cherry picked from commit 4e56939) Signed-off-by: Kern Walster <walster@amazon.com>
Allows external plugins to define exports. Signed-off-by: Derek McGowan <derek@mcg.dev> (cherry picked from commit e4639ad) Signed-off-by: Kern Walster <walster@amazon.com>
Some of the snapshotters that allow you to change their root location were already doing this, this just makes all of them follow the same pattern. Signed-off-by: Danny Canter <danny@dcantah.dev> (cherry picked from commit 32caaee) Signed-off-by: Kern Walster <walster@amazon.com>
Currently it didn't take into account that certain snapshots can explicitly have their root directories placed at a different location. This changes it to use the RootPath method of the snapshotter if it implements it. Without this change, cadvisor is not able to get filesystem usage information, which prevents the kubelet from doing image garbage collection and enforcing ephemeral storage limits. Signed-off-by: Danny Canter <danny@dcantah.dev> (cherry picked from commit 6aeec45) Signed-off-by: Kern Walster <walster@amazon.com>
Hi @Kern--. 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. |
Platform string `toml:"platform"` | ||
Exports map[string]string `toml:"exports"` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we really need these? It's better to keep the existing configs for compatibility.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We do need Exports
, but we don't need Platform
.
I kept the Platform
change because it was implemented before Exports
and so I thought it would be cleaner (for a vague sense of the word "clean") to take both rather than just the newer piece that I needed.
I can remove the Platform
backport if needed.
Thanks! |
Fixes #10095 in 1.7
This PR backports 4 changes:
root
key for snapshotter root if present.The result of this is that you can tell containerd about a remote snapshotter's root like:
which will be correctly reported by CRI which unblocks the kubelet from enforcing ephemeral-storage limits and doing image garbage collection.