Skip to content

Commit 16b75f6

Browse files
committed
docs: add cni-plugins
Signed-off-by: Sunyanan Choochotkaew <[email protected]>
1 parent 541e9ab commit 16b75f6

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Supported CNI Plugins
2+
3+
The Multi-NIC CNI controller supports a limited set of common CNI plugins by parsing `.spec.plugin.args`.
4+
5+
Below is the list of supported CNIs and their corresponding arguments:
6+
7+
| CNI Type | Supported Arguments |
8+
|------------|----------------------------------------------------------|
9+
| `ipvlan` | `master`, `mode`, `mtu` |
10+
| `macvlan` | `master`, `mode`, `mtu` |
11+
| `awsipvlan`| `primaryIP`, `podIP`, `master`, `mode`, `mtu` |
12+
| `sriov` | SriovNetworkNodePolicy:<br>`resourceName`, `priority`, `mtu`, `numVfs`, `isRdma`, `needVhostNet` <br><br>NetworkAttachmentDefinition:<br>`vlan`, `vlanQos`, `spoofchk`, `trust`, `min_tx_rate`, `max_tx_rate` |
13+
| `mellanox` | *None* |
14+
15+
To add support for a new CNI plugin, please refer to [this example issue](https://github.com/foundation-model-stack/multi-nic-cni/issues/179).
16+
17+
Support must be implemented in the [plugin module](https://github.com/foundation-model-stack/multi-nic-cni/blob/main/internal/plugin) by adding a corresponding `GetConfig` function.

document/docs/user_guide/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ subnet|cluster-wide subnet for all hosts and pods|CIDR range|currently support o
114114
hostBlock|number of address bits for host indexing| int (n) | the number of assignable host = 2^n
115115
ipam|ipam plugin config| string | ipam can be single-NIC IPAM (e.g., whereabouts, VPC-native IPAM) or multi-NIC IPAM (e.g., [Multi-NIC IPAM Plugin](../concept/multi-nic-ipam.md#ipam-configuration))
116116
multiNicIPAM| indicator of ipam type | bool | **true** if ipam returns multiple IPs from *masters* key of NetworkAttachmentDefinition config at once, **false** if ipam returns only single IP from static config in ipam block
117-
plugin|main plugin config|[NetConf](https://pkg.go.dev/github.com/containernetworking/cni/pkg/types#NetConf) + plugin-specific arguments | main plugin integration must implement [Plugin](https://github.com/foundation-model-stack/multi-nic-cni/blob/main/plugin/plugin.go) with GetConfig function
117+
plugin|main plugin config|[NetConf](https://pkg.go.dev/github.com/containernetworking/cni/pkg/types#NetConf) + plugin-specific arguments | see [supported CNI plugins](../concept/cni-plugins.md) for the list of supported CNI plugins and their arguments
118118
attachPolicy|attachment policy|policy|[strategy](../concept/policy.md) with corresponding arguments to select host NICs to be master of secondary interfaces on Pod
119119
namespaces|list of namespaces to apply the network definitions (i.e., to create NetworkAttachmentDefinition resource)|[]string|apply to all namespace if not specified. new item can be added to the list by `kubectl edit` to create new NetworkAttachmentDefinition. the created NetworkAttachmentDefinition must be deleted manually if needed.
120120

0 commit comments

Comments
 (0)