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

spec: allow interfaces to be included in the delegated IPAM plugin result #1121

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

ruicao93
Copy link

@ruicao93 ruicao93 commented Sep 24, 2024

Currently, the spec specifies the interfaces array should not be included in the delegated IPAM plugin result.

However, considering a common scenario where there are multiple interfaces on a Node, and each Pod use a dedicated network interface for ingress/egress traffic, the primary CNI plugin needs to know the uplink interface to install the corresponding routes. The muliple interface node is widely used in various clouds:

  • Public cloud: using multiple ENIs to meet IP allocation and dedicated security group requirements.
    • AWS: EKS
    • Alibaba cloud: ACK
    • Bytedance cloud(Volcengine): VKE
  • Private cloud: Use multiple interfaces for security consideration or better performance.
  • RDMA: multiple RDMA nics are common used on single GPU node and shared by Pods.

So we should allow the interfaces array be included to hint the uplink interface info(sandbox is emtpy) which can be consumed by the primary CNI plugin.

More discussion could be found in: cilium/cilium#34779 (comment)

@ruicao93 ruicao93 changed the title spec: interfaces can be included in the delegated IPAM plugin result spec: allow interfaces to be included in the delegated IPAM plugin result Sep 24, 2024
@ruicao93
Copy link
Author

hi @squeed, could you please help review the PR?

SPEC.md Outdated Show resolved Hide resolved
@dakehero
Copy link

dakehero commented Sep 26, 2024

  • RDMA: multiple RDMA nics are common used on single GPU node and shared by Pods.

It's a common case that different pods share a same RDMA NIC through macvlan (or ipvlan). For those nodes with multiple RDMA NICs, it's also helpful to use a single IPAM plugin to manage IPs on different devices.

Signed-off-by: Rui Cao <[email protected]>
@ruicao93
Copy link
Author

cc @joestringer

@ruicao93
Copy link
Author

@MikeZappa87 More discussions could be found in: cilium/cilium#34779 (comment)

@squeed squeed self-requested a review November 4, 2024 16:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants