Skip to content

Commit 18c0d0a

Browse files
authored
Merge pull request #96456 from openshift-cherrypick-robot/cherry-pick-93993-to-enterprise-4.19
[enterprise-4.19] Ocpbugs 55628 - No documentation existing so secondary network bond-cni
2 parents 164a379 + 530c9b0 commit 18c0d0a

File tree

3 files changed

+100
-0
lines changed

3 files changed

+100
-0
lines changed
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * networking/multiple_networks/configuring-additional-network.adoc
4+
5+
:_mod-docs-content-type: REFERENCE
6+
[id="nw-multus-bond-cni-object_{context}"]
7+
= Configuration for a Bond CNI secondary network
8+
9+
The Bond Container Network Interface (Bond CNI) enables the aggregation of multiple network interfaces into a single logical "bonded" interface within a container, enhancing network redundancy and fault tolerance. Only SR-IOV Virtual Functions (VFs) are supported for bonding with this plugin.
10+
11+
The following table describes the configuration parameters for the Bond CNI plugin:
12+
13+
.Bond CNI plugin JSON configuration object
14+
[cols=".^2,.^2,.^6",options="header"]
15+
|====
16+
|Field|Type|Description
17+
18+
19+
|`name`
20+
|`string`
21+
|Specifies the name given to this CNI network attachment definition. This name is used to identify and reference the interface within the container.
22+
23+
|`cniVersion`
24+
|`string`
25+
|The CNI specification version.
26+
27+
|`type`
28+
|`string`
29+
|Specifies the name of the CNI plugin to configure: `bond`.
30+
31+
|`miimon`
32+
|`string`
33+
|Specifies the address resolution protocol (ARP) link monitoring frequency in milliseconds. This parameter defines how often the bond interface sends ARP requests to check the availability of its aggregated interfaces.
34+
35+
|`mtu`
36+
|`integer`
37+
|Optional: Specifies the maximum transmission unit (MTU) of the bond. The default is 1500.
38+
39+
|`failOverMac`
40+
|`integer`
41+
|Optional: Specifies the `failOverMac` setting for the bond. Default is 0.
42+
43+
|`mode`
44+
|`string`
45+
|Specifies the bonding policy.
46+
47+
|`linksInContainer`
48+
|`boolean`
49+
|Optional: Specifies whether the network interfaces intended for bonding are expected to be created and available directly within the container's network namespace when the bond starts. If `false` which is the default, the CNI plugin looks for these interfaces on the host system first before attempting to form the bond.
50+
51+
|`links`
52+
|`object`
53+
|Specifies the interfaces to be bonded.
54+
55+
|`ipam`
56+
|`object`
57+
|The configuration object for the IPAM CNI plugin. The plugin manages IP address assignment for the attachment definition.
58+
59+
|====
60+
61+
[id="nw-multus-bond-cni-config-example_{context}"]
62+
== Bond CNI plugin configuration example
63+
64+
The following example configures a secondary network named `bond-net1`:
65+
66+
[source,json]
67+
----
68+
{
69+
"type": "bond",
70+
"cniVersion": "0.3.1",
71+
"name": "bond-net1",
72+
"mode": "active-backup",
73+
"failOverMac": 1,
74+
"linksInContainer": true,
75+
"miimon": "100",
76+
"mtu": 1500,
77+
"links": [
78+
{"name": "net1"},
79+
{"name": "net2"}
80+
],
81+
"ipam": {
82+
"type": "host-local",
83+
"subnet": "10.56.217.0/24",
84+
"routes": [{
85+
"dst": "0.0.0.0/0"
86+
}],
87+
"gateway": "10.56.217.1"
88+
}
89+
}
90+
----

networking/multiple_networks/secondary_networks/creating-secondary-nwt-other-cni.adoc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,13 @@ The specific configuration fields for secondary networks are described in the fo
1111
// Configuration for a bridge secondary network
1212
include::modules/nw-multus-bridge-object.adoc[leveloffset=+1]
1313

14+
// Configuration for a bond-cni secondary network
15+
include::modules/nw-multus-bond-cni-object.adoc[leveloffset=+1]
16+
17+
[role="_additional-resources"]
18+
.Additional resources
19+
* xref:../../../networking/hardware_networks/using-pod-level-bonding.adoc#nw-sriov-cfg-bond-interface-with-virtual-functions_using-pod-level-bonding[Configuring a bond interface from two SR-IOV interfaces]
20+
1421
// Configuration for a host device secondary network
1522
include::modules/nw-multus-host-device-object.adoc[leveloffset=+1]
1623

networking/multiple_networks/understanding-multiple-networks.adoc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ networks in your cluster:
5757

5858
* *bridge*: xref:../../networking/multiple_networks/secondary_networks/creating-secondary-nwt-other-cni.adoc#nw-multus-bridge-object_configuring-additional-network-cni[Configure a bridge-based secondary network] to allow pods on the same host to communicate with each other and the host.
5959

60+
* *bond-cni*: xref:../../networking/multiple_networks/secondary_networks/creating-secondary-nwt-other-cni.adoc#nw-multus-bond-cni-object_configuring-additional-network-cni[Configure a Bond CNI secondary network] to provide a method for aggregating multiple network interfaces into a single logical _bonded_ interface.
61+
6062
* *host-device*: xref:../../networking/multiple_networks/secondary_networks/creating-secondary-nwt-other-cni.adoc#nw-multus-host-device-object_configuring-additional-network-cni[Configure a host-device secondary network] to allow pods access to a physical Ethernet network device on the host system.
6163

6264
* *ipvlan*: xref:../../networking/multiple_networks/secondary_networks/creating-secondary-nwt-other-cni.adoc#nw-multus-ipvlan-object_configuring-additional-network-cni[Configure an ipvlan-based secondary network] to allow pods on a host to communicate with other hosts and pods on those hosts, similar to a macvlan-based secondary network. Unlike a macvlan-based secondary network, each pod shares the same MAC address as the parent physical network interface.
@@ -74,6 +76,7 @@ networks in your cluster:
7476
// UserDefinedNetwork and NetworkAttachmentDefinition support matrix
7577
include::modules/support-matrix-for-udn-nad.adoc[leveloffset=+1]
7678

79+
[role="_additional-resources"]
7780
.Additional resources
7881

7982
* xref:../../networking/ovn_kubernetes_network_provider/enabling-multicast.adoc#nw-ovn-kubernetes-enabling-multicast[Enabling multicast for a project]

0 commit comments

Comments
 (0)