Skip to content
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

IPs return by CNI plugins no longer "assigned" to a default interface if no interface is provided #1359

Open
Brian-McM opened this issue Nov 22, 2024 · 2 comments

Comments

@Brian-McM
Copy link

Brian-McM commented Nov 22, 2024

What happend:
IPs returned by the CNI plugin that don't have an interface index are dropped and not assigned to any interface in 4.1

What you expected to happen:
These IPs to continue to be assigned to a default interface

How to reproduce it (as minimally and precisely as possible):
Use a CNI plugin that returns IPs without an interface index, like calico

Anything else we need to know?:
This PR changed to use the CreateNetworkStatuses which doesn't have a reasonable default. I've created this issue there to request a reasonable default and fail if the IPs can't be assigned to an interface, instead of dropping them.

Environment:
Multus 4.1

  • Multus version: 4.1
  • Kubernetes version (use kubectl version): any
  • Primary CNI for Kubernetes cluster: calico
@dougbtv
Copy link
Member

dougbtv commented Dec 9, 2024

Do you get this behavior in https://github.com/k8snetworkplumbingwg/multus-cni/releases/tag/v4.1.4 ? This is hot off the press.

4.1.3 should have all the fixes available from the client library, though.

@Brian-McM
Copy link
Author

Thanks for the response @dougbtv, I haven't tried out the latest version but the problem seems to be in the network-attachment-definition-client which is available in 4.1.3.

I've dug through that multus code and verified that the issue is there and modifying the calico cni plugin to return the interface indices with the IPs (through a naive solution) fixes the issue.

Also to be clear, this breaks the multi nics feature for the enterprise solution, which relies on the annotations multus provides to assign the IPs to the calico managed interfaces, which are no longer there.

I'm discussing this in the other ticket I referenced with @maiqueb.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants