-
Notifications
You must be signed in to change notification settings - Fork 564
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
Support for pod user namespaces #8554
Comments
How will this affect Talos Linux nodes running inside containers? And potentially, in user-namespaced/rootless containers? |
The kubernetes docs page1 linked above has been updated with more information. It now seems more explicitly clear that containerd v2 is needed.
Footnotes |
Yes, it should be ready for that, I believe there's nothing to be done on Talos OS side itself to support that. If you have a good testcase for user namespaces (e.g. something you can |
It appears that there are two feature gates that need to be enabled: I love the idea of including a testcase. The KEP states that if the runtime doesn't support user namespaces, a deployment with |
I think there some bug with kubelet, it never fails and the mappings inside the pod are completely wrong, I would have expected kubelet to fail to create or throw an error and that is not the expected behavior, tested by adding the feature gate |
More updates on this, this feature seems to give a false sense of security, if the feature gate is not enabled a pod with With the feature gate enabled and
which in indeed a red herring and might be some other issue masked by this error |
Created an issue in k8s kubernetes/kubernetes#126484 |
@smira I believe Talos should enable the above feature gates by default in v1.8.
My guess is that this error is specific to Talos's read-only environment. |
kubelet doesn't provide more info on how to debug this, so we're at a loss |
more updates:
|
Add docs and test for usernamespaces support in Kubernetes. Fixes: siderolabs#8554 Signed-off-by: Noel Georgi <git@frezbo.dev>
Add docs and test for usernamespaces support in Kubernetes. Fixes: siderolabs#8554 Signed-off-by: Noel Georgi <git@frezbo.dev>
Add docs and test for usernamespaces support in Kubernetes. Fixes: siderolabs#8554 Signed-off-by: Noel Georgi <git@frezbo.dev>
Confirmed that user namespaces is working as expected on Talos v1.8.2 after following the docs added in #9662. |
This issue is to track Talos's support for user namespaces1 in Kubernetes pods. User namespaces allow for strict separation between the root user in pods and the root user on the host. From the docs: "A process running as root in a container can run as a different (non-root) user in the host; in other words, the process has full privileges for operations inside the user namespace, but is unprivileged for operations outside the namespace."
User namespaces requires at least Linux 6.3, which it appears Talos v1.7.0 will support. The Kubernetes docs also state that "containerd v1.7 is not compatible with the userns support in Kubernetes v1.27 to v1.29." That may mean waiting for containerd 2.02, though this is unclear to me.
When user namespaces are eventually supported, it would be worth mentioning as a feature in the Talos release's changelog.
Footnotes
https://kubernetes.io/docs/concepts/workloads/pods/user-namespaces/ ↩
https://github.com/containerd/containerd/releases/tag/v2.0.0-rc.0 ↩
The text was updated successfully, but these errors were encountered: