-
Notifications
You must be signed in to change notification settings - Fork 6.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
Add support for CRI-O user namespaces #8268
Add support for CRI-O user namespaces #8268
Conversation
Thanks for your pull request. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). 📝 Please follow instructions at https://git.k8s.io/community/CLA.md#the-contributor-license-agreement to sign the CLA. It may take a couple minutes for the CLA signature to be fully registered; after that, please reply here with a new comment and we'll verify. Thanks.
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. I understand the commands that are listed here. |
|
Welcome @nmasse-itix! |
Hi @nmasse-itix. Thanks for your PR. I'm waiting for a kubernetes-sigs 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. |
Hi @nmasse-itix , awsome work! Please sign the CLA so we can accept this contribution: https://api.easycla.lfx.linuxfoundation.org/v2/repository-provider/github/sign/20677499/43613404/8268/#/?version=2 Also, please address the linting issues identified by the CI. /ok-to-test |
Thanks for the warm welcome ! I signed the CLA a couple of minutes ago and I fixed the issues pointed by yamllint. |
/check-cla @nmasse-itix hum strange I think I saw your name somewhere while working for Credit Mutuel / EID with Openshift or 3scale or another RH product 😉 |
Definitely possible... 😀 |
The CI tests are failing because of a timeout with packer. And the CLA is now signed. /retest |
I've retried the debian10 job, weird that the CLA bot isn't picking up your email signing |
@nmasse-itix Ok I think you need to rebase master, as you are encountering the calico checksum ninja change done by the calico team and fixed by @cristicalin a few days ago. |
My rebase went wrong. Let me try to fix this. |
3be3f21
to
687408c
Compare
Rebase should be ok now. |
@nmasse-itix thanks for this. There is still the matter of the linuxfoundation CLA , would you mind signing it so we can accept the patch set ? |
That is a different CLA, one which you had already signed. Please check this: https://git.k8s.io/community/CLA.md#the-contributor-license-agreement |
ok, sorry for the misunderstanding. How can I ask the bot to recheck ? /check-cla ? |
yes, that's much better now ! |
👍 /lgtm |
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.
@nmasse-itix Thank you, great contrib 👍
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: floryut, nmasse-itix The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
* add support for cri-o user namespaces * comply with yamllint rules
* add support for cri-o user namespaces * comply with yamllint rules
This Pull Request is about adding support for user namespaces for CRI-O.
Description
Support for user namespaces in CRI-O has been introduced with cri-o/cri-o#3944 and refined in cri-o/cri-o#4281.
As explained in cri-o/cri-o#4281, there is a configuration option in crio.conf to enable this feature.
This PR does two things:
allowed_annotations
directive.This behavior is controlled by the
crio_runtimes[*].allowed_annotations
variable (default value: empty) and thecrio_remap_enable
variable (default value: false).The default values introduce no change to existing deployments.
Documentation
cri-o.md
has been updated.Testing
In your
group_vars/all/crio.yaml
, add:Then, create a pod like this:
On the Kubernetes node running this pod, use the
lsns
command to list user namespaces.In the following example, I created two pods that have their own namespace and their own uid/gid space.
Cleanup with:
Tested configurations
Caveats
There is packaging glitch with CRI-O 1.22 (containers/common#789) which should be fixed later. In the meantime, I had to comment the
[machine]
section in/usr/share/containers/containers.conf
.Also, with CRI-O 1.22, I could not manage to have the "map-to-root" feature working (
io.kubernetes.cri-o.userns-mode: "auto:map-to-root=true"
) while it was working on CRI-O 1.21/kind feature