SpiderMultusConfig 
A SpiderMultusConfig resource represents a best practice to generate a multus net-attach-def CR object for spiderpool to use.
For details on using this CRD, please read the SpiderMultusConfig guide .
Sample YAML 
apiVersion :   spiderpool.spidernet.io/v2beta1 
kind :   SpiderMultusConfig 
metadata : 
   name :   demo 
   namespace :   default 
   annotations : 
     multus.spidernet.io/cr-name :   "macvlan-100" 
     multus.spidernet.io/cni-version :   0.4.0 
spec : 
   cniType :   macvlan 
   macvlan : 
     master :   [ "eth0" ] 
     vlanID :   100 
     ippools : 
       ipv4 :   [ "default-pool-v4" ] 
       ipv6 :   [ "default-pool-v6" ] 
 
SpiderMultusConfig definition 
Field 
Description 
Schema 
Validation 
 
 
name 
The name of this SpiderMultusConfig resource 
string 
required 
 
namespace 
The namespace of this SpiderMultusConfig resource 
string 
required 
 
annotations 
The annotations of this SpiderMultusConfig resource 
map 
optional 
 
 
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 
 
 
Spec 
This is the SpiderReservedIP spec for users to configure.
Field 
Description 
Schema 
Validation 
Values 
Default 
 
 
cniType 
expected main CNI type 
string 
require 
macvlan,ipvlan,sriov,ovs,custom 
 
 
macvlan 
macvlan CNI configuration 
SpiderMacvlanCniConfig  
optional 
 
 
 
ipvlan 
ipvlan CNI configuration 
SpiderIPvlanCniConfig  
optional 
 
 
 
sriov 
sriov CNI configuration 
SpiderSRIOVCniConfig  
optional 
 
 
 
ovs 
ovs CNI configuration 
SpiderOvsCniConfig  
optional 
 
 
 
enableCoordinator 
enable coordinator or not 
boolean 
optional 
true,false 
true 
 
disableIPAM 
disable IPAM or not 
boolean 
optional 
true,false 
false 
 
coordinator 
coordinator CNI configuration 
CoordinatorSpec  
optional 
 
 
 
customCNI 
a string that represents custom CNI configuration 
string 
optional 
 
 
 
 
SpiderMacvlanCniConfig 
Field 
Description 
Schema 
Validation 
Values 
 
 
master 
the Interfaces on your master, you could specify a single one Interface  or multiple Interfaces to generate one bond Interface 
list of strings 
required 
 
 
vlanID 
vlan ID 
int 
optional 
[0,4094] 
 
bond 
expected bond Interface configurations 
BondConfig  
optional 
 
 
ippools 
the default IPPools in your CNI configurations 
SpiderpoolPools  
optional 
 
 
 
SpiderIPvlanCniConfig 
Field 
Description 
Schema 
Validation 
Values 
 
 
master 
the Interfaces on your master, you could specify a single one Interface  or multiple Interfaces to generate one bond Interface 
list of strings 
required 
 
 
vlanID 
vlan ID 
int 
optional 
[0,4094] 
 
bond 
expected bond Interface configurations 
BondConfig  
optional 
 
 
ippools 
the default IPPools in your CNI configurations 
SpiderpoolPools  
optional 
 
 
 
SpiderSRIOVCniConfig 
Field 
Description 
Schema 
Validation 
 
 
resourceName 
this property will create an annotation for Multus net-attach-def to cooperate with SRIOV 
string 
required 
 
vlanID 
vlan ID 
int 
optional 
 
ippools 
the default IPPools in your CNI configurations 
SpiderpoolPools  
optional 
 
 
SpiderOvsCniConfig 
Field 
Description 
Schema 
Validation 
 
 
bridge 
name of the bridge to use 
string 
required 
 
vlan 
vlan ID of attached port. Trunk port if not specified 
int 
optional 
 
trunk 
List of VLAN ID's and/or ranges of accepted VLAN ID's 
Trunk  
optional 
 
deviceID 
PCI address of a VF in valid sysfs format 
string 
optional 
 
ippools 
the default IPPools in your CNI configurations 
SpiderpoolPools  
optional 
 
 
BondConfig 
Field 
Description 
Schema 
Validation 
Values 
 
 
Name 
the expected bond interface name 
string 
required 
 
 
Mode 
bond interface mode 
int 
required 
[0,6] 
 
Options 
expected bond Interface configurations 
string 
optional 
 
 
 
Trunk 
Field 
Description 
Schema 
Validation 
Values 
 
 
minID 
the min value of vlan ID 
int 
optional 
[0,4094] 
 
maxID 
the max value of vlan ID 
int 
optional 
[0,4094] 
 
id 
the value of vlan ID 
int 
optional 
[0,4094] 
 
 
SpiderpoolPools 
Field 
Description 
Schema 
Validation 
 
 
ipv4 
the default IPv4 IPPools in your CNI configurations 
list of strings 
optional 
 
ipv6 
the default IPv6 IPPools in your CNI configurations 
list of strings 
optional