Configuration
June 30, 2026 ยท View on GitHub
Instructions for global configuration and environment arguments of Spiderpool.
Configmap Configuration
Configmap "spiderpool-conf" is the global configuration of Spiderpool.
apiVersion: v1
kind: ConfigMap
metadata:
name: spiderpool-conf
namespace: kube-system
data:
conf.yml: |
ipamUnixSocketPath: /var/run/spidernet/spiderpool.sock
enableIPv4: true
enableIPv6: true
enableStatefulSet: true
enableKubevirtStaticIP: true
enableSpiderSubnet: true
enableIPConflictDetection: true
enableGatewayDetection: true
clusterSubnetDefaultFlexibleIPNumber: 1
tuneSysctlConfig: {{ .Values.spiderpoolAgent.tuneSysctlConfig }}
podResourceInject:
enabled: false
namespacesExclude:
- kube-system
- spiderpool
namespacesInclude: []
iaasNetworkProvider:
serverUrl: ""
agent:
networkResourcePlugin:
enabled: false
kubeletRootDir: /var/lib/kubelet
devicePluginAffinity:
nodeSelector: {}
resourceAdvertisement:
subENI:
rules: []
masterNIC:
rules: []
ipamUnixSocketPath(string): Spiderpool agent listens to this UNIX socket file and handles IPAM requests from IPAM plugin.enableIPv4(bool):true: Enable IPv4 IP allocation capability of Spiderpool.false: Disable IPv4 IP allocation capability of Spiderpool.
enableIPv6(bool):true: Enable IPv6 IP allocation capability of Spiderpool.false: Disable IPv6 IP allocation capability of Spiderpool.
enableStatefulSet(bool):true: Enable StatefulSet static IP capability of Spiderpool.false: Disable StatefulSet static IP capability of Spiderpool.
enableKubevirtStaticIP(bool):true: Enable kubevirt VM static IP capability of Spiderpool.false: Disable kubevirt VM static IP capability of Spiderpool.
enableSpiderSubnet(bool):true: Enable SpiderSubnet capability of Spiderpool.false: Disable SpiderSubnet capability of Spiderpool.
enableIPConflictDetection(bool):true: Enable IP conflict detection capability of Spiderpool.false: Disable IP conflict detection capability of Spiderpool.
enableGatewayDetection(bool):true: Enable gateway detection capability of Spiderpool.false: Disable gateway detection capability of Spiderpool.
clusterSubnetDefaultFlexibleIPNumber(int): Global SpiderSubnet default flexible IP number. It takes effect across the cluster.podResourceInject(object): Pod resource inject capability of Spiderpool.enabled(bool):true: Enable pod resource inject capability of Spiderpool.false: Disable pod resource inject capability of Spiderpool.
namespacesExclude(array): Exclude the namespaces of the pod resource inject.namespacesInclude(array): Include the namespaces of the pod resource inject.
iaasNetworkProvider(object): IaaS Network Provider integration configuration.serverUrl(string): Base URL for the provider HTTP API. If empty, provider mode is disabled.
agent.networkResourcePlugin(object): Spiderpool agent network resource plugin configuration rendered from HelmspiderpoolAgent.networkResourcePlugin.enabled(bool): Enable or disable spiderpool-agent network resource advertisement.kubeletRootDir(string): Kubelet root directory used to derive the agent'sdevice-pluginsandplugins_registryhostPath mounts. The default is/var/lib/kubelet.devicePluginAffinity.nodeSelector(object): Kubernetes label selector for nodes that advertise Spiderpool network resources. Empty selector matches all nodes. UsematchLabelsandmatchExpressionsoperators such asIn,NotIn,Exists, andDoesNotExistto include or exclude nodes.resourceAdvertisement.subENI(object): Auxiliary ENI slot advertisement configuration.rulescontains resource advertisement rules. Empty rules disable Sub-ENI advertisement.defaultMaxCountis the default total schedulable slot capacity, andnodeSelectoris an optional Kubernetes label selector for nodes that advertise each sub-ENI resource.resourceAdvertisement.masterNIC(object): Physical master NIC advertisement configuration. Emptyrulesdisable master NIC advertisement.defaultMaxCountis the virtual capacity advertised for each selected master NIC and defaults to10000;nodeSelectoris an optional Kubernetes label selector for nodes that advertise each master NIC resource.
Pod resource injection is controlled by podResourceInject.enabled. When enabled, the Pod webhook checks existing Multus annotations for VLAN SpiderMultusConfig references whose vlanID is unset. The injected resource quantity equals the number of eligible references.