The annotations of this SpiderMultusConfig resource
map
optional
Metadata.annotations
You can also set annotations for this SpiderMultusConfig resource, then the corresponding Multus net-attach-def resource will inherit these annotations too.
And you can also use special annotation multus.spidernet.io/cr-name and multus.spidernet.io/cni-version to customize the corresponding Multus net-attach-def resource name and CNI version.
Field
Description
Schema
Validation
Default
multus.spidernet.io/cr-name
The customized Multus net-attach-def resource name
string
optional
multus.spidernet.io/cni-version
The customized Multus net-attach-def resource CNI version
string
optional
0.3.1
cni.spidernet.io/cniconfig-name
The customized CNI config name
string
optional
Spec
This is the SpiderReservedIP spec for users to configure.
Deprecated: use ipam.enabled instead. disable IPAM. when set to be true, any configuration of CNI's ippools field will be ignored. If ipam.enabled is set, it takes precedence over this field
coordinator CNI configuration. Unset fields inherit the global default from SpiderCoordinator; set fields here override the default for this SpiderMultusConfig and its generated NetworkAttachmentDefinition, including policyRoutes.
The eni-vlan CNI only serves the IaaS sub-ENI scenario: the VLAN ID and MAC address are dynamically allocated by the IaaS provider and delivered through the spiderpool IPAM plugin, so there is no vlanID field. When validateIaasNetConfig is enabled, the eni-vlan plugin performs an ARP-based pre-flight validation of the cloud-assigned IP/VLAN/MAC triple with the real IP/MAC before configuring the Pod IP and fails closed on validation failure. The eni-vlan CNI strongly depends on the spiderpool IPAM plugin, so disabling IPAM is forbidden. In this mode the IPAM-stage gateway detection and IP conflict detection cannot work and must be globally disabled through the Helm values ipam.enableGatewayDetection and ipam.enableIPConflictDetection.
Field
Description
Schema
Validation
Values
Default
master
the parent NIC(s) on the node used to create the VLAN sub-interface
list of strings
required
mtu
mtu of the Interface
int
optional
>= 0
0
validateIaasNetConfig
perform the pre-flight validation of the cloud-assigned IP/VLAN/MAC triple (ARP probe with the real IP/MAC) before configuring the Pod IP
this property will create an annotation for Multus net-attach-def to cooperate with SRIOV
string
required
vlanID
vlan ID
int
optional
mtu
mtu of the vf Interface, the max mtu can't be over than the PF Interface
int
optional
minTxRateMbps
change the allowed minimum transmit bandwidth, in Mbps, for the VF. Setting this to 0 disables rate limiting. The min_tx_rate value should be <= max_tx_rate. Support of this feature depends on NICs and drivers
int
optional
maxTxRateMbps
change the allowed maximum transmit bandwidth, in Mbps, for the VF. Setting this to 0 disables rate limiting
int
optional
rdmaIsolation
enable RDMA CNI plugin is intended to be run as a chained CNI plugin. it ensures isolation of RDMA traffic from other workloads in the system by moving the associated RDMA interfaces of the provided network interface to the container'snetwork namespace path
this property will create an annotation for Multus net-attach-def to cooperate with ib-sriov
string
required
pkey
InfiniBand pkey for VF, this field is used by ib-kubernetes to add pkey with guid to InfiniBand subnet manager client e.g. Mellanox UFM
string
optional
linkState
Enforces link state for the VF. Allowed values: auto, enable [default], disable
string
optional
rdmaIsolation
enable RDMA CNI plugin is intended to be run as a chained CNI plugin. it ensures isolation of RDMA traffic from other workloads in the system by moving the associated RDMA interfaces of the provided network interface to the container'snetwork namespace path
bool
optional
ibKubernetesEnabled
Enforces ib-sriov-cni to work with ib-kubernetes , default to false