-
Notifications
You must be signed in to change notification settings - Fork 54
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
Additional checks for cni 0.4.0 failing (atleast with the bridge plugin) #74
Comments
@mrunalp Is this from a unit test? ocicnitool? e.g. is there a way I can reproduce?
After cniADD, info about the interface is cached (in case cniDel is needed and e.g. oci doesn't have access to the info anymore to supply it to cniDel.) It looks like CRI-O calls |
@mccv1r0 The check is from the code in ocicni that I have pasted in the first comment. It looks like the check is failing for the bridge plugin so it probably needs to be fixed upstream for it. |
I see the code. But what is failing? e.g. what context? I can add and check the cniVersion 0.4.0 config you provided above just fine using ocicnitool (upstream master branch):
Notice Inside the netns, "check" finds what it expects:
Thus, check passes. When the code fails for you, what are you running? A CI test? k8s? What versions? Perhaps (and this is just a guess, I need more info) the CNI and/or CNI Plugins being used need to be updated? |
@mccv1r0 I am running a local k8s cluster with cri-o master and k8s master with the version of ocicni vendored in cri-o master. I am using v0.8.6 for the CNI plugins. What version are the plugins in your test above? |
@mrunalp I used the CNI plugins master branch. But check has been in for well over a year. I tried again with v0.8.6 and things work as shown above. Is k8s pointing CNI to the proper netns? |
I was testing with cc: @haircommander |
I also tested with that set to false and no change for me :/ |
I ran into same issue today with upstream k8s master and crio master. |
do you have cycles to look into it @harche |
@haircommander Little busy with 4.7 bugs right now, but I can definitely look at it after that. Would that be fine? |
yeah that's fine! |
I just faced similar issue trying to migrate from containerd to cri-o, it seems containerd isn't calling CNI CHECK ( Line 731 in 4fcbe80
workaround is to use cniVersion 0.3.1 here 2 CNI plugins bug fixes: containernetworking/plugins#885 / containernetworking/plugins#887 |
But after those fixes, the issue goes away @champtar ? |
@haircommander for my use case involving |
There is also the option to disable check in the CNI config file itself. We anticipated that some configurations might fail check due to complicated chains. But, bugs are possible too :-/. |
Thanks @squeed ! just tried, but |
That's not good! Note that disableCheck only works for config lists, not for singular configs. Maybe that's the issue? |
I'm using multus and using a singular config, if I try to put the multus config in a list
I get |
Works ok if I move the |
for posterity: this should have been fixed with cni bridge plugin 1.2.0: containernetworking/plugins#809 @champtar I think you're hitting a different issue. are you still encountering it? if so, can you open a new issue please? |
Here is the config I am trying to use in CRI-O:
However, I see that the additional checks in ocicni for version 0.4.0 and higher start failing:
If I compile the check out, then pods come up fine for me:
Is this something we have to fix in ocicni or upstream in the bridge plugin?
The text was updated successfully, but these errors were encountered: