What can I help you with?
DOCA Platform Framework (DPF) Documentation v25.4

API reference

Packages

operator.dpu.nvidia.com/v1alpha1

Package v1alpha1 contains API Schema definitions for the operator v1alpha1 API group

Resource Types

BFBRegistryConfiguration

Appears in: - InstallViaRedfish

Field

Description

Default

Validation

disableboolean

Disable ensures the BFB Registry is not deployed when set to true.

portinteger

Port is the port on which the BFB Registry will listen


DPFOperatorConfig

DPFOperatorConfig is the Schema for the dpfoperatorconfigs API

Appears in: - DPFOperatorConfigList

Field

Description

Default

Validation

apiVersionstring

operator.dpu.nvidia.com/v1alpha1

kindstring

DPFOperatorConfig

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPFOperatorConfigSpec

statusDPFOperatorConfigStatus


DPFOperatorConfigList

DPFOperatorConfigList contains a list of DPFOperatorConfig

Field

Description

Default

Validation

apiVersionstring

operator.dpu.nvidia.com/v1alpha1

kindstring

DPFOperatorConfigList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPFOperatorConfig array


DPFOperatorConfigSpec

DPFOperatorConfigSpec defines the desired state of DPFOperatorConfig

Appears in: - DPFOperatorConfig

Field

Description

Default

Validation

overridesOverrides

networkingNetworking

{ controlPlaneMTU:1500 }

imagePullSecretsstring array

List of secret names which are used to pull images for DPF system components and DPUServices.

These secrets must be in the same namespace as the DPF Operator Config and should be created before the config is created.

System reconciliation will not proceed until these secrets are available.

dpuServiceControllerDPUServiceControllerConfiguration

DPUServiceController is the configuration for the DPUServiceController

provisioningControllerProvisioningControllerConfiguration

ProvisioningController is the configuration for the ProvisioningController

serviceSetControllerServiceSetControllerConfiguration

ServiceSetController is the configuration for the ServiceSetController

dpuDetectorDPUDetectorConfiguration

DPUDetector is the configuration for the DPUDetector.

multusMultusConfiguration

Multus is the configuration for Multus

sriovDevicePluginSRIOVDevicePluginConfiguration

SRIOVDevicePlugin is the configuration for the SRIOVDevicePlugin

flannelFlannelConfiguration

Flannel is the configuration for Flannel

ovsCNIOVSCNIConfiguration

OVSCNI is the configuration for OVSCNI

nvipamNVIPAMConfiguration

NVIPAM is the configuration for NVIPAM

sfcControllerSFCControllerConfiguration

SFCController is the configuration for the SFCController

kamajiClusterManagerKamajiClusterManagerConfiguration

KamajiClusterManager is the configuration for the kamaji-cluster-manager

staticClusterManagerStaticClusterManagerConfiguration

StaticClusterManager is the configuration for the static-cluster-manager

ovsHelperOVSHelperConfiguration

OVSHelper is the configuration for the OVSHelper


DPFOperatorConfigStatus

DPFOperatorConfigStatus defines the observed state of DPFOperatorConfig

Appears in: - DPFOperatorConfig

Field

Description

Default

Validation

conditionsCondition array

Conditions exposes the current state of the OperatorConfig.

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


DPUDetectorConfiguration

DPUDetectorConfiguration is the configuration for the DPUDetector Component.

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the component.

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$


DPUServiceControllerConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the DPUService controller

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$


FlannelConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageFlannelImages

Images overrides the container images used by flannel

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by the Flannel

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$


FlannelImages

Appears in: - FlannelConfiguration

Field

Description

Default

Validation

flannelCNIstring

FlannelCNI must be set if FlannelImages is set.

MinLength: 1

kubeFlannelstring

KubeFlannel must be set if FlannelImages is set.

MinLength: 1


HelmChart

Underlying type:string

HelmChart is a reference to a helm chart.

Validation: - Pattern: ^(oci://|https://).+$

Appears in: - FlannelConfiguration - MultusConfiguration - NVIPAMConfiguration - OVSCNIConfiguration - OVSHelperConfiguration - SFCControllerConfiguration - SRIOVDevicePluginConfiguration - ServiceSetControllerConfiguration

Image

Underlying type:string

Image is a reference to a container image. Validation is the same as the implementation at https://github.com/containers/image/blob/93fa49b0f1fb78470512e0484012ca7ad3c5c804/docker/reference/regexp.go

Validation: - Pattern: ^((?:(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]|__|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]|__|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]{0,127}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]{32,}))?$

Appears in: - DPUDetectorConfiguration - DPUServiceControllerConfiguration - KamajiClusterManagerConfiguration - MultusConfiguration - NVIPAMConfiguration - OVSCNIConfiguration - OVSHelperConfiguration - ProvisioningControllerConfiguration - SFCControllerConfiguration - SRIOVDevicePluginConfiguration - ServiceSetControllerConfiguration - StaticClusterManagerConfiguration

InstallViaGNOI

InstallViaGNOI is the interface used to install the BFB via GNOI

Appears in: - ProvisioningInstallInterface

InstallViaRedfish

InstallViaRedfish is the interface used to install the BFB via Redfish

Appears in: - ProvisioningInstallInterface

Field

Description

Default

Validation

bfbRegistryAddressstring

BFBRegistryAddress is the address of the BFB Registry

MinLength: 1

bfbRegistryBFBRegistryConfiguration

BFBRegistry is the configuration for the BFB Registry


KamajiClusterManagerConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the HostedControlPlaneManager.

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$


MultusConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by Multus

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by Multus

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$


NVIPAMConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by NVIPAM

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by NVIPAM

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$


Networking

Networking defines the networking configuration for the system components.

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

controlPlaneMTUinteger

ControlPlaneMTU is the MTU value to be set on the management network.

The default is 1500.

1500

Maximum: 9216

Minimum: 1000

highSpeedMTUinteger

HighSpeedMTU is the MTU value to be set on the high-speed interface.

The default is 1500.

1500

Maximum: 9216

Minimum: 1000


OVSCNIConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the OVS CNI

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by the OVS CNI

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$


OVSHelperConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the OVS Helper

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by the OVS Helper

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$


Overrides

Overrides exposes a set of fields which impact the recommended behavior of the DPF Operator. These fields should only be set for advanced use cases. The fields here have no stability guarantees.

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

pausedboolean

Paused disables all reconciliation of the DPFOperatorConfig when set to true.

dpuCNIBinPathstring

DPUCNIBinPath is the path at which the CNI binaries will be installed to on the DPU.

This is /opt/cni/bin by default.

This setting does not change where kubelet is configured to use the CNI from.

dpuCNIPathstring

DPUCNIConfigPath is the path to which the CNI config files will be installed on the DPU.

This is /etc/cni/net.d by default.

This setting does not change where kubelet is configured to read the CNI config from.

dpuOpenvSwitchRunPathstring

DPUOpenvSwitchPath is the path at which the openvSwitch run directory can be found on the DPU.

This is /var/run/openvswitch by default.

This setting does not change where components are installed. Installation location fixed in the BFB.

dpuOpenvSwitchBinPathstring

DPUOpenvSwitchBinPath is the path at which the openvSwitch bin directory can be found on the DPU node.

This is /usr/bin/ by default.

This setting does not change where components are installed. Installation location fixed in the BFB.

dpuOpenvSwitchSystemSharedPathstring

DPUOpenvSwitchSystemSharedLibPath is the path at which the system lib used by OVS components can be found on the DPU.

This is /lib by default.

This setting does not change where components are installed. Installation location fixed in the BFB.

kubernetesAPIServerVIPstring

KubernetesAPIServerVIP is the VIP the Kubernetes API server is accessible at.

This setting enables specific underlying components deployed directly or indirectly by the DPF Operator to reach

the Kubernetes API Server when the ClusterIP Kubernetes Service is not functional.

If set, it should be set to an IP to ensure that components work even if DNS is not available in the cluster.

kubernetesAPIServerPortinteger

KubernetesAPIServerPort is the port the Kubernetes API server is accessible at.

This setting is usually used together with the kubernetesAPIServerVIP setting. It enables specific underlying

components deployed directly or indirectly by the DPF Operator to reach the Kubernetes API Server when the

ClusterIP Kubernetes Service is not functional.


ProvisioningControllerConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the Provisioning controller

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

bfCFGTemplateConfigMapstring

BFCFGTemplateConfigMap is the name of a configMap containing a template for the BF.cfg file used by the DPU controller.

By default the provisioning controller use a hardcoded BF.cfg e.g. https://github.com/NVIDIA/doca-platform/blob/release-v24.10/internal/provisioning/controllers/dpu/bfcfg/bf.cfg.template

Note: Replacing the bf.cfg is an advanced use case. The default bf.cfg is designed for most use cases.

bfbPVCNamestring

BFBPersistentVolumeClaimName is the name of the PersistentVolumeClaim used by dpf-provisioning-controller

MinLength: 1

dmsTimeoutinteger

DMSTimeout is the max time in seconds within which a DMS API must respond, 0 is unlimited

Minimum: 1

customCASecretNamestring

CustomCASecretName indicates the name of the Kubernetes secret object

which containing the custom CA certificate

installInterfaceProvisioningInstallInterface

InstallInterface is the interface through which the BFB is installed


ProvisioningInstallInterface

ProvisioningInstallInterface is the interface used to install the BFB

Appears in: - ProvisioningControllerConfiguration

Field

Description

Default

Validation

installViaGNOIInstallViaGNOI

InstallViaGNOI is the interface used to install the BFB via GNOI

installViaRedfishInstallViaRedfish

InstallViaRedfish is the interface used to install the BFB via Redfish


SFCControllerConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the SFC Controller

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by the SFC Controller

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$

secureFlowDeletionTimeoutDuration

SecureFlowDeletionTimeout controls the timeout for which the API server is unreachable after which all the flows

are deleted to prevent unintended packet leaks. It has effect when is greater than zero.

Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration.


SRIOVDevicePluginConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the SRIOV Device Plugin

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by the SRIOV Device Plugin

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$


ServiceSetControllerConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image overrides the container image used by the ServiceSetController

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

deployInTargetClusterboolean

DeployInCluster deploys the component in the same cluster as the DPF Operator if set to true.

helmChartHelmChart

HelmChart overrides the helm chart used by the ServiceSet controller.

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$


StaticClusterManagerConfiguration

Appears in: - DPFOperatorConfigSpec

Field

Description

Default

Validation

disableboolean

Disable ensures the component is not deployed when set to true.

imageImage

Image is the container image used by the StaticControlPlaneManager

Image overrides the container image used by the HostedControlPlaneManager.

Pattern: ^((?:(?:(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9])(?:\.(?:[a-zA-Z0-9]\|[a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]))*\|\[(?:[a-fA-F0-9:]+)\])(?::[0-9]+)?/)?[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*(?:/[a-z0-9]+(?:(?:[._]\|__\|[-]+)[a-z0-9]+)*)*)(?::([\w][\w.-]\{0,127\}))?(?:@([A-Za-z][A-Za-z0-9]*(?:[-_+.][A-Za-z][A-Za-z0-9]*)*[:][[:xdigit:]]\{32,\}))?$

provisioning.dpu.nvidia.com/v1alpha1

Package v1alpha1 contains API Schema definitions for the provisioning.dpu v1alpha1 API group

Resource Types

BFB

BFB is the Schema for the bfbs API

Appears in: - BFBList

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

BFB

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specBFBSpec

statusBFBStatus

{ phase:Initializing }


BFBList

BFBList contains a list of BFB

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

BFBList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsBFB array


BFBPhase

Underlying type:string

BFBPhase describes current state of BFB CR. Only one of the following state may be specified. Default is Initializing.

Validation: - Enum: [Initializing Downloading Ready Deleting Error]

Appears in: - BFBStatus

Field

Description

Initializing

BFB CR is created

Downloading

Downloading BFB file

Ready

Finished downloading BFB file, ready for DPU to use

Deleting

Delete BFB

Error

Error happens during BFB downloading


BFBReference

BFBReference is a reference to a specific BFB

Appears in: - DPUTemplateSpec

Field

Description

Default

Validation

namestring

Specifies name of the bfb CR to use for this DPU


BFBSpec

BFBSpec defines the content of the BFB

Appears in: - BFB

Field

Description

Default

Validation

fileNamestring

Specifies the file name where the BFB is downloaded on the volume.

Pattern: ^[A-Za-z0-9\_\-\.]+\.bfb$

urlstring

The url of the bfb image to download.

Pattern: ^(http\|https)://.+\.bfb$


BFBStatus

BFBStatus defines the observed state of BFB

Appears in: - BFB

Field

Description

Default

Validation

fileNamestring

Filename is the name of the file where the BFB can be accessed on its volume.

This is the same as .spec.Filename if set.

phaseBFBPhase

The current state of BFB.

Initializing

Enum: [Initializing Downloading Ready Deleting Error]

versionsBFBVersions

BFB versions - BSP, DOCA, UEFI and ATF

Holds detailed version information for each component within the BFB


BFBVersions

BFBVersions represents the version information for BFB components.

Appears in: - BFBStatus

Field

Description

Default

Validation

bspstring

BSP (Board Support Package) version.

This field stores the version of the BSP, which provides essential

support and drivers for the hardware platform.

docastring

DOCA version

Specifies the version of NVIDIA's Data Center-on-a-Chip Architecture (DOCA),

a platform for developing applications on DPUs

uefistring

UEFI (Unified Extensible Firmware Interface) version.

Indicates the UEFI firmware version, which is responsible for booting

the operating system and initializing hardware components

atfstring

ATF (Arm Trusted Firmware) version.

Contains the version of ATF, which provides a secure runtime environment


ClusterEndpointSpec

Appears in: - DPUClusterSpec

Field

Description

Default

Validation

keepalivedKeepalivedSpec

Keepalived configures the keepalived that will be deployed for the cluster control-plane


ClusterPhase

Underlying type:string

ClusterPhase describes current state of DPUCluster. Only one of the following state may be specified. Default is Pending.

Validation: - Enum: [Pending Creating Ready NotReady Failed]

Appears in: - DPUClusterStatus

Field

Description

Pending

Creating

Ready

NotReady

Failed


ClusterSpec

Appears in: - DPUTemplateSpec

Field

Description

Default

Validation

nodeLabelsobject (keys:string, values:string)

NodeLabels specifies the labels to be added to the node.


ConfigFile

Appears in: - DPUFlavorSpec

Field

Description

Default

Validation

pathstring

Path is the path of the file to be written.

operationDPUFlavorFileOp

Operation is the operation to be performed on the file.

Enum: [override append]

rawstring

Raw is the raw content of the file.

permissionsstring

Permissions are the permissions to be set on the file.


ContainerdConfig

Appears in: - DPUFlavorSpec

Field

Description

Default

Validation

registryEndpointstring

RegistryEndpoint is the endpoint of the container registry.


DMSAddress

DMSAddress represents the IP and Port configuration for DMS.

Appears in: - DPUNodeSpec

Field

Description

Default

Validation

ipstring

IP address in IPv4 format.

Format: ipv4

portinteger

Port number.

Minimum: 1


DPU

DPU is the Schema for the dpus API

Appears in: - DPUList

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPU

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUSpec

statusDPUStatus

{ phase:Initializing }


DPUCluster

DPUCluster is the Schema for the dpuclusters API

Appears in: - DPUClusterList

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUCluster

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUClusterSpec

statusDPUClusterStatus

{ phase:Pending }


DPUClusterList

DPUClusterList contains a list of DPUCluster

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUClusterList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUCluster array


DPUClusterSpec

DPUClusterSpec defines the desired state of DPUCluster

Appears in: - DPUCluster

Field

Description

Default

Validation

typestring

Type of the cluster with few supported values

static - existing cluster that is deployed by user. For DPUCluster of this type, the kubeconfig field must be set.

kamaji - DPF managed cluster. The kamaji-cluster-manager will create a DPU cluster on behalf of this CR.

$(others) - any string defined by ISVs, such type names must start with a prefix.

Pattern: kamaji\|static\|[^/]+/.*

maxNodesinteger

MaxNodes is the max amount of node in the cluster

1000

Maximum: 1000

Minimum: 1

versionstring

Version is the K8s control-plane version of the cluster

kubeconfigstring

Kubeconfig is the secret that contains the admin kubeconfig

clusterEndpointClusterEndpointSpec

ClusterEndpoint contains configurations of the cluster entry point


DPUClusterStatus

DPUClusterStatus defines the observed state of DPUCluster

Appears in: - DPUCluster

Field

Description

Default

Validation

phaseClusterPhase

Pending

Enum: [Pending Creating Ready NotReady Failed]

conditionsCondition array


DPUDevice

DPUDevice is the Schema for the dpudevices API

Appears in: - DPUDeviceList

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUDevice

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUDeviceSpec


DPUDeviceList

DPUDeviceList contains a list of DPUDevices

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUDeviceList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUDevice array


DPUDeviceSpec

DPUDeviceSpec defines the content of DPUDevice

Appears in: - DPUDevice

Field

Description

Default

Validation

pciAddressstring

PCIAddress is the PCI address of the device in the host system.

It's used to identify the device and should be unique.

This value is immutable and should not be changed once set.

Example: "0000-03-00", "03-00"

Pattern: ^([0-9a-fA-F]\{4\}[-])?[0-9a-fA-F]\{2\}[-][0-9a-fA-F]\{2\}$

psidstring

PSID is the Product Serial ID of the device.

It's used to track the device's lifecycle and for inventory management.

This value is immutable and should not be changed once set.

Example: "MT_0001234567"

Pattern: ^MT_\d\{10\}$

opnstring

OPN is the Ordering Part Number of the device.

It's used to track the device's compatibility with different software versions.

This value is immutable and should not be changed once set.

Example: "900-9D3B4-00SV-EA0"

Pattern: ^\d\{3\}-[A-Z0-9]\{5\}-[A-Z0-9]\{4\}-[A-Z0-9]\{3\}$

bmcIpstring

BMCIP is the IP address of the BMC (Base Management Controller) on the device.

This is used for remote management and monitoring of the device.

This value is immutable and should not be changed once set.

Example: "10.1.2.3"

Format: ipv4

numberOfPFsinteger

NumberOfPFs is the number of PFs on the device.

This value is immutable and should not be changed once set.

Example: 1

1

Minimum: 1

pf0Namestring

PF0Name is the name of the PF0 on the device.

This value is immutable and should not be changed once set.

Example: "eth0"


DPUFLavorSysctl

Appears in: - DPUFlavorSpec

Field

Description

Default

Validation

parametersstring array

Parameters are the sysctl parameters to be set.


DPUFlavor

DPUFlavor is the Schema for the dpuflavors API

Appears in: - DPUFlavorList

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUFlavor

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUFlavorSpec


DPUFlavorFileOp

Underlying type:string

DPUFlavorFileOp defines the operation to be performed on the file

Validation: - Enum: [override append]

Appears in: - ConfigFile

Field

Description

override

append


DPUFlavorGrub

Appears in: - DPUFlavorSpec

Field

Description

Default

Validation

kernelParametersstring array

KernelParameters are the kernel parameters to be set in the grub configuration.


DPUFlavorList

DPUFlavorList contains a list of DPUFlavor

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUFlavorList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUFlavor array


DPUFlavorNVConfig

Appears in: - DPUFlavorSpec

Field

Description

Default

Validation

devicestring

Device is the device to which the configuration applies. If not specified, the configuration applies to all.

parametersstring array

Parameters are the parameters to be set for the device.

hostPowerCycleRequiredboolean

HostPowerCycleRequired indicates if the host needs to be power cycled after applying the configuration.


DPUFlavorOVS

Appears in: - DPUFlavorSpec

Field

Description

Default

Validation

rawConfigScriptstring

RawConfigScript is the raw configuration script for OVS.


DPUFlavorSpec

DPUFlavorSpec defines the content of DPUFlavor

Appears in: - DPUFlavor

Field

Description

Default

Validation

grubDPUFlavorGrub

Grub contains the grub configuration for the DPUFlavor.

sysctlDPUFLavorSysctl

Sysctl contains the sysctl configuration for the DPUFlavor.

nvconfigDPUFlavorNVConfig array

NVConfig contains the configuration for the DPUFlavor.

ovsDPUFlavorOVS

OVS contains the OVS configuration for the DPUFlavor.

bfcfgParametersstring array

BFCfgParameters are the parameters to be set in the bf.cfg file.

configFilesConfigFile array

ConfigFiles are the files to be written on the DPU.

containerdConfigContainerdConfig

ContainerdConfig contains the configuration for containerd.

dpuResourcesResourceList

DPUResources indicates the minimum amount of resources needed for a BFB with that flavor to be installed on a

DPU. Using this field, the controller can understand if that flavor can be installed on a particular DPU. It

should be set to the total amount of resources the system needs + the resources that should be made available for

DPUServices to consume.

systemReservedResourcesResourceList

SystemReservedResources indicates the resources that are consumed by the system (OS, OVS, DPF system etc) and are

not made available for DPUServices to consume. DPUServices can consume the difference between DPUResources and

SystemReservedResources. This field must not be specified if dpuResources are not specified.

dpuModeDpuModeType

Specifies the DPU Mode type: one of dpu,zero-trust,nic

Enum: [dpu zero-trust nic]


DPUList

DPUList contains a list of DPU

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPU array


DPUNode

DPUNode is the Schema for the dpunodes API

Appears in: - DPUNodeList

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUNode

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUNodeSpec

statusDPUNodeStatus


DPUNodeList

DPUNodeList contains a list of DPUNode

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUNodeList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUNode array


DPUNodeSpec

DPUNodeSpec defines the desired state of DPUNode

Appears in: - DPUNode

Field

Description

Default

Validation

nodeRebootMethodNodeRebootMethod

Defines the method for rebooting the host.

One of the following options can be chosen for this field:

- "external": Reboot the host via an external means, not controlled by the

DPU controller.

- "script": Reboot the host by executing a custom script.

- "gNOI": Use the DPU's DMS interface to reboot the host.

"gNOI" is the default value.

{ gNOI:map[] }

nodeDMSAddressDMSAddress

The IP address and port where the DMS is exposed. Only applicable if dpuInstallInterface is set to gNOI.

dpusDPURef array

A map containing names of each DPUDevice attached to the node.


DPUNodeStatus

DPUNodeStatus defines the observed state of DPUNode

Appears in: - DPUNode

Field

Description

Default

Validation

conditionsCondition array

Conditions represent the latest available observations of an object's state.

Type: array

dpuInstallInterfacestring

The name of the interface which will be used to install the bfb image, can be one of gNOI,redfish

Enum: [gNOI redfish]

kubeNodeRefstring

The name of the Kubernetes Node object that this DPUNode represents.

This field is optional and only relevant if the x86 host is part of the DPF Kubernetes cluster.


DPUPhase

Underlying type:string

DPUPhase describes current state of DPU. Only one of the following state may be specified. Default is Initializing.

Validation: - Enum: [Initializing Node Effect Pending Config FW Parameters Prepare BFB OS Installing DPU Cluster Config Host Network Configuration Ready Error Deleting Rebooting Initialize Interface Checking Host Reboot Required]

Appears in: - DPUSetStatus - DPUStatus

Field

Description

Initializing

DPUInitializing is the first phase after the DPU is created.

Node Effect

DPUNodeEffect means the controller will handle the node effect provided by the user.

Pending

DPUPending means the controller is waiting for the BFB to be ready.

Prepare BFB

DPUPrepareBFB means the controller is preparing the BFB and bf.cfg to be installed to DPU

Config FW Parameters

DPUConfigFWParameters means the controller will manipulate DPU firmware, e.g., set DPU mode, check firmware version

Initialize Interface

DPUInitializeInterface means the controller will intitialize the interface used to provision the DPUs, e.g., create the DMS pod, set up RedFish account.

OS Installing

DPUOSInstalling means the controller will provision the DPU through the DMS gNOI interface.

DPU Cluster Config

DPUClusterConfig means the node configuration and Kubernetes Node join procedure are in progress .

Host Network Configuration

DPUHostNetworkConfiguration means the host network configuration is running.

Ready

DPUReady means the DPU is ready to use.

Error

DPUError means error occurred.

Deleting

DPUDeleting means the DPU CR will be deleted, controller will do some cleanup works.

Rebooting

DPURebooting means the host of DPU is rebooting.

Checking Host Reboot Required

DPUCheckingHostRebootNeed means the checking of whether the host required a reboot.


DPURef

Appears in: - DPUNodeSpec

Field

Description

Default

Validation

namestring

Name of the DPU device.

MinLength: 1


DPUSet

DPUSet is the Schema for the dpusets API

Appears in: - DPUSetList

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUSet

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUSetSpec

statusDPUSetStatus


DPUSetList

DPUSetList contains a list of DPUSet

Field

Description

Default

Validation

apiVersionstring

provisioning.dpu.nvidia.com/v1alpha1

kindstring

DPUSetList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUSet array


DPUSetSpec

DPUSetSpec defines the desired state of DPUSet

Appears in: - DPUSet

Field

Description

Default

Validation

strategyDPUSetStrategy

The rolling update strategy to use to updating existing DPUs with new ones.

dpuNodeSelectorLabelSelector

Select the DPUNodes with specific labels

dpuSelectorobject (keys:string, values:string)

Select the DPU with specific labels

dpuTemplateDPUTemplate

Object that describes the DPU that will be created if insufficient replicas are detected


DPUSetStatus

DPUSetStatus defines the observed state of DPUSet

Appears in: - DPUSet

Field

Description

Default

Validation

dpuStatisticsobject (keys:DPUPhase, values:integer)

DPUStatistics is a map of DPUPhase to the number of DPUs in that phase.


DPUSetStrategy

Appears in: - DPUSetSpec

Field

Description

Default

Validation

typeStrategyType

Can be "OnDelete" or "RollingUpdate".

OnDelete

Enum: [OnDelete RollingUpdate]

rollingUpdateRollingUpdateDPU

Rolling update config params. Present only if StrategyType = RollingUpdate.


DPUSpec

DPUSpec defines the desired state of DPU

Appears in: - DPU

Field

Description

Default

Validation

dpuNodeNamestring

Specifies the DPUNode this DPU belongs to

dpuDeviceNamestring

Specifies the name of the DPUDevice this DPU is associated with

MinLength: 1

bfbstring

Specifies name of the bfb CR to use for this DPU

pciAddressstring

The PCI device related DPU

Example: "0000-03-00", "03-00"

Pattern: ^([0-9a-fA-F]\{4\}[-])?[0-9a-fA-F]\{2\}[-][0-9a-fA-F]\{2\}$

nodeEffectNodeEffect

Specifies how changes to the DPU should affect the Node

{ drain:true }

clusterK8sCluster

Specifies details on the K8S cluster to join

dpuFlavorstring

DPUFlavor is the name of the DPUFlavor that will be used to deploy the DPU.

bmcIPstring

BMCIP is the ip address of the DPU BMC


DPUStatus

DPUStatus defines the observed state of DPU

Appears in: - DPU

Field

Description

Default

Validation

phaseDPUPhase

The current state of DPU.

Initializing

Enum: [Initializing Node Effect Pending Config FW Parameters Prepare BFB OS Installing DPU Cluster Config Host Network Configuration Ready Error Deleting Rebooting Initialize Interface Checking Host Reboot Required]

conditionsCondition array

bfbFilestring

BFBFile is the path to the BFB file

bfCFGFilestring

BFCFGFile is the path to the bf.cfg

bfbVersionstring

bfb version of this DPU

pciDevicestring

pci device information of this DPU

requiredResetboolean

whether require reset of DPU

firmwareFirmware

the firmware information of DPU

addressesNodeAddress array

The DPU node's IP addresses

dpuInstallInterfacestring

the name of the interface which will be used to install the bfb image,

and communicate with DPU, can be one of gNOI,redfish

Enum: [gNOI redfish]


DPUTemplate

DPUTemplate is a template for DPU

Appears in: - DPUSetSpec

Field

Description

Default

Validation

annotationsobject (keys:string, values:string)

Annotations specifies annotations which are added to the DPU.

specDPUTemplateSpec

Spec specifies the DPU specification.


DPUTemplateSpec

Appears in: - DPUTemplate

Field

Description

Default

Validation

bfbBFBReference

Specifies a BFB CR

nodeEffectNodeEffect

Specifies how changes to the DPU should affect the Node

{ drain:true }

clusterClusterSpec

Specifies details on the K8S cluster to join

dpuFlavorstring

DPUFlavor is the name of the DPUFlavor that will be used to deploy the DPU.


DpuModeType

Underlying type:string

DpuModeType defines the mode of the DPU

Validation: - Enum: [dpu zero-trust nic]

Appears in: - DPUFlavorSpec

Field

Description

dpu

zero-trust

nic


External

Appears in: - NodeRebootMethod

Firmware

Appears in: - DPUStatus

Field

Description

Default

Validation

bmcstring

BMC is the used BMC firmware version

nicstring

NIC is the used NIC firmware version

uefistring

UEFI is the used UEFI firmware version


GNOI

Appears in: - NodeRebootMethod

K8sCluster

Appears in: - DPUSpec

Field

Description

Default

Validation

namestring

Name is the name of the DPUs Kubernetes cluster

namespacestring

Namespace is the tenants namespace name where the Kubernetes cluster will be deployed

nodeLabelsobject (keys:string, values:string)

NodeLabels define the labels that will be added to the nodes.


KeepalivedSpec

Appears in: - ClusterEndpointSpec

Field

Description

Default

Validation

vipstring

VIP is the virtual IP owned by the keepalived instances

virtualRouterIDinteger

VirtualRouterID is the virtual_router_id in keepalived.conf

Maximum: 255

Minimum: 1

interfacestring

Interface specifies on which interface the VIP should be assigned

MinLength: 1

nodeSelectorobject (keys:string, values:string)

NodeSelector is used to specify a subnet of control plane nodes to deploy keepalived instances.

Note: keepalived instances are always deployed on control plane nodes


NodeEffect

NodeEffect is the effect the DPU has on Nodes during provisioning. Only one of Taint, NoEffect, CustomLabel, Drain, CustomAction, Hold can be set.

Appears in: - DPUSpec - DPUTemplateSpec - DPUs

Field

Description

Default

Validation

taintTaint

Add specify taint on the DPU node

noEffectboolean

Do not do any action on the DPU node

customLabelobject (keys:string, values:string)

Add specify labels on the DPU node

drainboolean

Drain the K8s host node by NodeMaintenance operator

customActionstring

Name of a config map which contains a pod yaml definition to run which will apply the nodeEffect.

The pod is expected to exit when node effect is done, if pod terminates with error then DPU would move to an error phase

holdboolean

Places annotation wait-for-external-nodeeffect and waits for it to be removed

this is the default behavior in a non K8S environment


NodeRebootMethod

NodeRebootMethod defines the desired reboot method

Appears in: - DPUNodeSpec

Field

Description

Default

Validation

gNOIGNOI

Use the DPU's DMS interface to reboot the host.

externalExternal

Reboot the host via an external means, not controlled by the DPU controller.

scriptScript

Reboot the host by executing a custom script. This field defined which ConfigMap store the custom script.

The ConfigMap should include a pod template of Job object under the pod-template key.

That pod template will be put in a Job object to be executed.


RollingUpdateDPU

RollingUpdateDPU is the rolling update strategy for a DPUSet.

Appears in: - DPUSetStrategy

Field

Description

Default

Validation

maxUnavailableIntOrString

MaxUnavailable is the maximum number of DPUs that can be unavailable during the update.


Script

Appears in: - NodeRebootMethod

Field

Description

Default

Validation

namestring

MinLength: 1


StrategyType

Underlying type:string

StrategyType describes strategy to use to reprovision existing DPUs. Default is "OnDelete".

Validation: - Enum: [OnDelete RollingUpdate]

Appears in: - DPUSetStrategy

Field

Description

OnDelete

New DPU CR will only be created when you manually delete old DPU CR.

RollingUpdate

Gradually scale down the old DPUs and scale up the new one.

storage.dpu.nvidia.com/v1alpha1

Package v1alpha1 contains API Schema definitions for the storage v1alpha1 API group

Resource Types

BdevAttrs

BdevAttrs represents the attributes of the underlying block device

Appears in: - VolumeAttachmentStatusDPU

Field

Description

Default

Validation

nvmeNsIDinteger

The namespace ID within the NVME controller

nvmeUUIDstring

The nvme namespace UUID


CSIReference

CSIReference reference to CSI object

Appears in: - VolumeSpecDPU

Field

Description

Default

Validation

csiDriverNamestring

storageClassNamestring

pvcRefObjectRef


CapacityRange

CapacityRange represents the capacity of the required storage space in bytes

Appears in: - VolumeRequest

Field

Description

Default

Validation

requestQuantity

limitQuantity


FSdevAttrs

FSdevAttrs represents the attributes of the underlying filesystem device

Appears in: - VolumeAttachmentStatusDPU

Field

Description

Default

Validation

filesystemTagstring

Filesystem tag identified by SNAP on the host (used for the mount). Relevant for volume of type filesystem


ObjectRef

ObjectRef reference to the object

Appears in: - CSIReference - VolumeAttachmentSpec - VolumeSource - VolumeSpec

Field

Description

Default

Validation

kindstring

apiVersionstring

namestring

namespacestring


SVVolumeAttachment

SVVolumeAttachment captures the intent to attach/detach the specified Volume to/from the specified node.

Appears in: - SVVolumeAttachmentList

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

SVVolumeAttachment

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specVolumeAttachmentSpec

statusVolumeAttachmentStatus


SVVolumeAttachmentList

SVVolumeAttachmentList contains a list of SVVolumeAttachment

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

SVVolumeAttachmentList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsSVVolumeAttachment array


StoragePolicy

StoragePolicy represents a storage policy which maps between policy into a list of storage vendors.

Appears in: - StoragePolicyList

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

StoragePolicy

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specStoragePolicySpec

statusStoragePolicyStatus


StoragePolicyList

StoragePolicyList contains a list of StoragePolicy

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

StoragePolicyList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsStoragePolicy array


StoragePolicySpec

StoragePolicySpec defines the desired state of StoragePolicy

Appears in: - StoragePolicy

Field

Description

Default

Validation

storageVendorsstring array

List of storage vendors

storageParametersobject (keys:string, values:string)

List of storage parameters supported by the policy, values are string only

storageSelectionAlgStorageSelectionAlgType

Algorithm used to select the storage vendor. Default: LocalNVolumes

LocalNVolumes

Enum: [Random LocalNVolumes]


StoragePolicyStatus

StoragePolicyStatus defines the observed state of StoragePolicy

Appears in: - StoragePolicy

Field

Description

Default

Validation

stateStorageVendorState

A storage policy is valid if all provided storage vendors have a StorageVendor object with a valid storage class object

Enum: [Valid Invalid]

messagestring

Informative message when the state is invalid


StorageSelectionAlgType

Underlying type:string

StorageSelectionAlgType represents the type of storage selection algorithm

Validation: - Enum: [Random LocalNVolumes]

Appears in: - StoragePolicySpec

Field

Description

Random

Random selection across the vendors defined in the StoragePolicy list.

LocalNVolumes

Load-balancing on the number of volumes belonging to the StoragePolicy.

The vendor (in the StoragePolicy list) with the minimal number of volumes should be selected.


StorageVendor

StorageVendor represents a storage vendor. Each storage vendor must have exactly one NVIDIA StorageVendor custom resource object.

Appears in: - StorageVendorList

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

StorageVendor

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specStorageVendorSpec


StorageVendorList

StorageVendorList contains a list of StorageVendor

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

StorageVendorList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsStorageVendor array


StorageVendorSpec

StorageVendorSpec defines the desired state of StorageVendor

Appears in: - StorageVendor

Field

Description

Default

Validation

storageClassNamestring

Storage vendor class name, deployed on the DPU K8S cluster.

pluginNamestring

Storage vendor DPU plugin name


StorageVendorState

Underlying type:string

StorageVendorState represents the state of storage vendor

Validation: - Enum: [Valid Invalid]

Appears in: - StoragePolicyStatus

Field

Description

Valid

Vaild means all provided storage vendors (storageVendors)

have a StorageVendor object with a valid storage class object

Invalid

Invalid means one or more provided storage vendors (storageVendors) do not

have a StorageVendor object with a valid storage class object


Volume

Volume represents a persistent volume on the DPU cluster. It maps between the tenant K8S persistent volume (PV) object on the tenant cluster into the actual volume on the DPU cluster.

Appears in: - VolumeList

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

Volume

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specVolumeSpec

statusVolumeStatus


VolumeAttachment

VolumeAttachment captures the intent to attach/detach the specified NV-Volume to/from the specified node.

Appears in: - VolumeAttachmentList

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

VolumeAttachment

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specVolumeAttachmentSpec

statusVolumeAttachmentStatus


VolumeAttachmentList

VolumeAttachmentList contains a list of VolumeAttachment

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

VolumeAttachmentList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsVolumeAttachment array


VolumeAttachmentSpec

VolumeAttachmentSpec defines the desired state of VolumeAttachment

Appears in: - VolumeAttachment

Field

Description

Default

Validation

nodeNamestring

The name of the node that the volume should be attached to

sourceVolumeSource

Reference to the NV-Volume object

volumeAttachmentRefObjectRef

Reference to the SV-VolumeAttachment object

parametersobject (keys:string, values:string)

Opaque static publish properties of the volume returned by the plugin


VolumeAttachmentStatus

VolumeAttachmentStatus defines the observed state of VolumeAttachment

Appears in: - VolumeAttachment

Field

Description

Default

Validation

storageAttachedboolean

Indicates the volume is successfully attached to the target storage system

messagestring

The last error encountered during the attach operation, if any

dpuVolumeAttachmentStatusDPU

Details about the DPU attachment


VolumeAttachmentStatusDPU

VolumeAttachmentStatusDPU describe the information of DPU volume

Appears in: - VolumeAttachmentStatus

Field

Description

Default

Validation

attachedboolean

Indicates the volume is successfully attached to the DPU node

pciDeviceAddressstring

PCI device address in the following format: (bus:device.function)

deviceNamestring

The name of the device that was created by the storage vendor plugin

bdevAttrsBdevAttrs

The attributes of the underlying block device

fsdevAttrsFSdevAttrs

The attributes of the underlying filesystem device


VolumeList

VolumeList contains a list of Volume

Field

Description

Default

Validation

apiVersionstring

storage.dpu.nvidia.com/v1alpha1

kindstring

VolumeList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsVolume array


VolumeRequest

VolumeRequest represents the volume's requirements

Appears in: - VolumeSpec

Field

Description

Default

Validation

capacityRangeCapacityRange

The capacity of the required storage space in bytes

accessModesPersistentVolumeAccessMode array

Contains the types of access modes required

volumeModePersistentVolumeMode

volumeMode defines what type of volume is required by the claim.

Value of Filesystem is implied when not included in claim spec.


VolumeSource

VolumeSource references to the NV-Volume object

Appears in: - VolumeAttachmentSpec

Field

Description

Default

Validation

volumeRefObjectRef

Reference to the NV-Volume object


VolumeSpec

VolumeSpec defines the desired state of Volume

Appears in: - Volume

Field

Description

Default

Validation

storageParametersobject (keys:string, values:string)

List of storage parameters supported by the policy, values are string only

requestVolumeRequest

The capacity of the required storage space in bytes

storagePolicyRefObjectRef

Reference to the StoragePolicy object

storagePolicyParametersobject (keys:string, values:string)

List of storage parameters supported by the policy, values are string only

volumeVolumeSpecDPU

Describe volume information in DPU cluster


VolumeSpecDPU

VolumeSpecDPU describe volume information in DPU cluster

Appears in: - VolumeSpec

Field

Description

Default

Validation

idstring

capacityQuantity

accessModesPersistentVolumeAccessMode array

reclaimPolicyPersistentVolumeReclaimPolicy

Enum: [Delete Retain]

storageVendorNamestring

storageVendorPluginNamestring

volumeAttributesobject (keys:string, values:string)

csiReferenceCSIReference


VolumeState

Underlying type:string

VolumeState represents the state of volume

Validation: - Enum: [InProgress Available]

Appears in: - VolumeStatus

Field

Description

InProgress

InProgress means the some of related resource is still in progress

Available

Available means that all related resources are created


VolumeStatus

VolumeStatus defines the observed state of Volume

Appears in: - Volume

Field

Description

Default

Validation

stateVolumeState

The state of a Volume object

Enum: [InProgress Available]

svc.dpu.nvidia.com/v1alpha1

Package v1alpha1 contains API Schema definitions for the svc.dpf v1alpha1 API group

Package v1alpha1 contains API Schema definitions for the sfc v1alpha1 API group

Resource Types

ApplicationSource

ApplicationSource specifies the source of the Helm chart.

Appears in: - HelmChart

Field

Description

Default

Validation

repoURLstring

RepoURL specifies the URL to the repository that contains the application Helm chart.

The URL must begin with either 'oci://' or 'https://', ensuring it points to a valid

OCI registry or a web-based repository.

Pattern: ^(oci://\|https://).+$

pathstring

Path is the location of the chart inside the repo.

versionstring

Version is a semver tag for the Chart's version.

MinLength: 1

chartstring

Chart is the name of the helm chart.

releaseNamestring

ReleaseName is the name to give to the release generate from the DPUService.


ConfigPort

ConfigPort defines the configuration of a single port within a DPUService. Each port must have a unique name within the service.

Appears in: - ConfigPorts - DPUServiceStatus

Field

Description

Default

Validation

namestring

Name is a unique identifier for the port within the DPUService.

This name is used for reference inside the service.

MinLength: 1

Pattern: ^[a-z0-9-]+$

portinteger

Port is the port number that will be exposed by the service.

Must be within the valid range of TCP/UDP ports (1-65535).

protocolProtocol

Protocol specifies the transport protocol used by the port.

Supported values: TCP, UDP

Enum: [TCP UDP]

nodePortinteger

NodePort is the external port assigned on each node in the cluster.

If not set, Kubernetes will automatically allocate a NodePort.

Constraints:

- Can only be set when ServiceType is "NodePort".

- Must be within the clusters valid NodePort range (Kubernetes default is 30000-32767).


ConfigPorts

ConfigPorts defines the desired state of port configurations for a DPUService. This struct determines how ports are exposed from the DPU to the host cluster. A DPUService can only have a single ServiceType across all ports.

Validation: - If any port has a NodePort assigned, ServiceType must be "NodePort".

Appears in: - DPUServiceSpec - ServiceConfiguration

Field

Description

Default

Validation

serviceTypeServiceType

ServiceType specifies the type of Kubernetes Service to create.

All ports within this ConfigPorts will have the same ServiceType.

The value is immutable and cannot be changed after creation.

Supported values:

- "NodePort": Exposes ports externally on a node.

- "ClusterIP": Exposes ports internally within the cluster.

- "None": Internal-only service with no cluster IP.

Default: "NodePort"

NodePort

Enum: [NodePort ClusterIP None]

portsConfigPort array

Ports defines the list of port configurations that will be exposed by the DPUService.

Each port must specify a name, port number, and protocol.

Constraints:

- If ServiceType is "NodePort", ports may optionally specify a NodePort.

- If ServiceType is "None" or "ClusterIP", ports cannot specify a NodePort.


DPUDeployment

DPUDeployment is the Schema for the dpudeployments API. This object connects DPUServices with specific BFBs and DPUServiceChains.

Appears in: - DPUDeploymentList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUDeployment

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUDeploymentSpec

statusDPUDeploymentStatus


DPUDeploymentList

DPUDeploymentList contains a list of DPUDeployment

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUDeploymentList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUDeployment array


DPUDeploymentPort

DPUDeploymentPort defines how a port can be configured

Appears in: - DPUDeploymentSwitch

Field

Description

Default

Validation

serviceDPUDeploymentService

Service holds configuration that helps configure the Service Function Chain and identify a port associated with

a DPUService

serviceInterfaceServiceIfc

ServiceInterface holds configuration that helps configure the Service Function Chain and identify a user defined

port


DPUDeploymentService

DPUDeploymentService is the struct used for referencing an interface.

Appears in: - DPUDeploymentPort

Field

Description

Default

Validation

namestring

Name is the name of the service as defined in the DPUDeployment Spec

interfacestring

Interface name is the name of the interface as defined in the DPUServiceTemplate

ipamIPAM

IPAM defines the IPAM configuration that is configured in the Service Function Chain


DPUDeploymentServiceConfiguration

DPUDeploymentServiceConfiguration describes the configuration of a particular Service

Appears in: - DPUDeploymentSpec

Field

Description

Default

Validation

serviceTemplatestring

ServiceTemplate is the name of the DPUServiceTemplate object to be used for this Service. It must be in the same

namespace as the DPUDeployment.

serviceConfigurationstring

ServiceConfiguration is the name of the DPUServiceConfiguration object to be used for this Service. It must be

in the same namespace as the DPUDeployment.


DPUDeploymentSpec

DPUDeploymentSpec defines the desired state of DPUDeployment

Appears in: - DPUDeployment

Field

Description

Default

Validation

dpusDPUs

DPUs contains the DPU related configuration

servicesobject (keys:string, values:DPUDeploymentServiceConfiguration)

Services contains the DPUDeploymentService related configuration. The key is the deploymentServiceName and the value is its

configuration. All underlying objects must specify the same deploymentServiceName in order to be able to be consumed by the

DPUDeployment.

serviceChainsServiceChains

ServiceChains contains the configuration related to the DPUServiceChains that the DPUDeployment creates.

revisionHistoryLimitinteger

The maximum number of revisions that can be retained during upgrades.

Defaults to 10.

10


DPUDeploymentStatus

DPUDeploymentStatus defines the observed state of DPUDeployment

Appears in: - DPUDeployment

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


DPUDeploymentSwitch

DPUDeploymentSwitch holds the ports that are connected in switch topology

Appears in: - ServiceChains

Field

Description

Default

Validation

portsDPUDeploymentPort array

Ports contains the ports of the switch

MaxItems: 50

MinItems: 1


DPUService

DPUService is the Schema for the dpuservices API

Appears in: - DPUServiceList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUService

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceSpec

statusDPUServiceStatus


DPUServiceChain

DPUServiceChain is the Schema for the DPUServiceChain API

Appears in: - DPUServiceChainList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceChain

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceChainSpec

statusDPUServiceChainStatus


DPUServiceChainList

DPUServiceChainList contains a list of DPUServiceChain

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceChainList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUServiceChain array


DPUServiceChainSpec

DPUServiceChainSpec defines the desired state of DPUServiceChainSpec

Appears in: - DPUServiceChain

Field

Description

Default

Validation

clusterSelectorLabelSelector

Select the Clusters with specific labels, ServiceChainSet CRs will be created only for these Clusters

templateServiceChainSetSpecTemplate

Template describes the ServiceChainSet that will be created for each selected Cluster.


DPUServiceChainStatus

DPUServiceChainStatus defines the observed state of DPUServiceChain

Appears in: - DPUServiceChain

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


DPUServiceConfiguration

DPUServiceConfiguration is the Schema for the dpuserviceconfigurations API. This object is intended to be used in conjunction with a DPUDeployment object. This object is the template from which the DPUService will be created. It contains all configuration options from the user to be provided to the service itself via the helm chart values. This object doesn't allow configuration of nodeSelector and resources in purpose as these are delegated to the DPUDeployment and DPUServiceTemplate accordingly.

Appears in: - DPUServiceConfigurationList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceConfiguration

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceConfigurationSpec

statusDPUServiceConfigurationStatus


DPUServiceConfigurationList

DPUServiceConfigurationList contains a list of DPUServiceConfiguration

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceConfigurationList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUServiceConfiguration array


DPUServiceConfigurationServiceDaemonSetValues

DPUServiceConfigurationServiceDaemonSetValues reflects the Helm related configuration

Appears in: - ServiceConfiguration

Field

Description

Default

Validation

updateStrategyDaemonSetUpdateStrategy

UpdateStrategy specifies the DeaemonSet update strategy for the ServiceDaemonset.

labelsobject (keys:string, values:string)

Labels specifies labels which are added to the ServiceDaemonSet.

MaxProperties: 50

annotationsobject (keys:string, values:string)

Annotations specifies annotations which are added to the ServiceDaemonSet.

MaxProperties: 50

resourcesResourceList

Resources specifies resources which are added to the ServiceDaemonSet.


DPUServiceConfigurationSpec

DPUServiceConfigurationSpec defines the desired state of DPUServiceConfiguration

Appears in: - DPUServiceConfiguration

Field

Description

Default

Validation

deploymentServiceNamestring

DeploymentServiceName is the name of the DPU service this configuration refers to. It must match

.spec.deploymentServiceName of a DPUServiceTemplate object and one of the keys in .spec.services of a

DPUDeployment object.

serviceConfigurationServiceConfiguration

ServiceConfiguration contains fields that are configured on the generated DPUService.

interfacesServiceInterfaceTemplate array

Interfaces specifies the DPUServiceInterface to be generated for the generated DPUService.

MaxItems: 50

MinItems: 1

upgradePolicyUpgradePolicy

UpgradePolicy contains the configuration for the upgrade process

{ }


DPUServiceConfigurationStatus

DPUServiceConfigurationStatus defines the observed state of DPUServiceConfiguration

Appears in: - DPUServiceConfiguration

DPUServiceCredentialRequest

DPUServiceCredentialRequest is the Schema for the dpuserviceCredentialRequests API

Appears in: - DPUServiceCredentialRequestList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceCredentialRequest

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceCredentialRequestSpec

statusDPUServiceCredentialRequestStatus


DPUServiceCredentialRequestList

DPUServiceCredentialRequestList contains a list of DPUServiceCredentialRequest

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceCredentialRequestList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUServiceCredentialRequest array


DPUServiceCredentialRequestSpec

DPUServiceCredentialRequestSpec defines the desired state of DPUServiceCredentialRequest

Appears in: - DPUServiceCredentialRequest

Field

Description

Default

Validation

serviceAccountNamespacedName

ServiceAccount defines the needed information to create the service account.

durationDuration

Duration is the duration for which the token will be valid.

Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration.

e.g. "1h", "1m", "1s", "1ms", "1.5h", "2h45m".

Value duration must not be less than 10 minutes.

Note: The maximum TTL for a token is 24 hours, after which the token

will be rotated.

Pattern: ^([0-9]+(\.[0-9]+)?(ms\|s\|m\|h))+$

Type: string

targetClusterNamespacedName

TargetCluster defines the target cluster where the service account will

be created, and where a token for that service account will be requested.

If not provided, the token will be requested for the same cluster where

the DPUServiceCredentialRequest object is created.

typestring

Type is the type of the secret that will be created.

The supported types are kubeconfig and tokenFile.

If kubeconfig is selected, the secret will contain a kubeconfig file,

that can be used to access the cluster.

If tokenFile is selected, the secret will contain a token file and several

environment variables that can be used to access the cluster. It can be used

with https://github.com/kubernetes/client-go/blob/v11.0.0/rest/config.go#L52

to create a client that will handle file rotation.

Enum: [kubeconfig tokenFile]

secretNamespacedName

Secret defines the needed information to create the secret.

The secret will be of the type specified in the spec.type field.

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.


DPUServiceCredentialRequestStatus

DPUServiceCredentialRequestStatus defines the observed state of DPUServiceCredentialRequest

Appears in: - DPUServiceCredentialRequest

Field

Description

Default

Validation

conditionsCondition array

Conditions defines current service state.

serviceAccountstring

ServiceAccount is the namespaced name of the ServiceAccount resource created by

the controller for the DPUServiceCredentialRequest.

targetClusterstring

TargetCluster is the cluster where the service account was created.

It has to be persisted in the status to be able to delete the service account

when the DPUServiceCredentialRequest is updated.

expirationTimestampTime

ExpirationTimestamp is the time when the token will expire.

issuedAtTime

IssuedAt is the time when the token was issued.

secretstring

Sercet is the namespaced name of the Secret resource created by the controller for

the DPUServiceCredentialRequest.


DPUServiceIPAM

DPUServiceIPAM is the Schema for the dpuserviceipams API

Appears in: - DPUServiceIPAMList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceIPAM

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceIPAMSpec

statusDPUServiceIPAMStatus


DPUServiceIPAMList

DPUServiceIPAMList contains a list of DPUServiceIPAM

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceIPAMList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUServiceIPAM array


DPUServiceIPAMSpec

DPUServiceIPAMSpec defines the desired state of DPUServiceIPAM

Appears in: - DPUServiceIPAM

Field

Description

Default

Validation

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

ipv4NetworkIPV4Network

IPV4Network is the configuration related to splitting a network into subnets per node, each with their own gateway.

ipv4SubnetIPV4Subnet

IPV4Subnet is the configuration related to splitting a subnet into blocks per node. In this setup, there is a

single gateway.

clusterSelectorLabelSelector

ClusterSelector determines in which clusters the DPUServiceIPAM controller should apply the configuration.

nodeSelectorNodeSelector

NodeSelector determines in which DPU nodes the DPUServiceIPAM controller should apply the configuration.


DPUServiceIPAMStatus

DPUServiceIPAMStatus defines the observed state of DPUServiceIPAM

Appears in: - DPUServiceIPAM

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


DPUServiceInterface

DPUServiceInterface is the Schema for the DPUServiceInterface API

Appears in: - DPUServiceInterfaceList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceInterface

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceInterfaceSpec

statusDPUServiceInterfaceStatus


DPUServiceInterfaceList

DPUServiceInterfaceList contains a list of DPUServiceInterface

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceInterfaceList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUServiceInterface array


DPUServiceInterfaceSpec

DPUServiceInterfaceSpec defines the desired state of DPUServiceInterfaceSpec

Appears in: - DPUServiceInterface

Field

Description

Default

Validation

clusterSelectorLabelSelector

Select the Clusters with specific labels, ServiceInterfaceSet CRs will be created only for these Clusters

templateServiceInterfaceSetSpecTemplate

Template describes the ServiceInterfaceSet that will be created for each selected Cluster.


DPUServiceInterfaceStatus

DPUServiceInterfaceStatus defines the observed state of DPUServiceInterface

Appears in: - DPUServiceInterface

Field

Description

Default

Validation

conditionsCondition array

Conditions defines current service state.

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


DPUServiceList

DPUServiceList contains a list of DPUService

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUService array


DPUServiceNAD

DPUServiceNAD is the Schema for the dpuservicenads API.

Appears in: - DPUServiceNADList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceNAD

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceNADSpec

statusDPUServiceNADStatus


DPUServiceNADList

DPUServiceNADList contains a list of DPUServiceNAD.

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceNADList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUServiceNAD array


DPUServiceNADSpec

DPUServiceNADSpec defines the desired state of DPUServiceNAD.

Appears in: - DPUServiceNAD

Field

Description

Default

Validation

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

resourceTypestring

Enum: [vf sf veth]

bridgestring

mtuinteger

ipamboolean


DPUServiceNADStatus

DPUServiceNADStatus defines the observed state of DPUServiceNAD.

Appears in: - DPUServiceNAD

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object


DPUServiceSpec

DPUServiceSpec defines the desired state of DPUService

Appears in: - DPUService

Field

Description

Default

Validation

helmChartHelmChart

HelmChart reflects the Helm related configuration

serviceIDstring

ServiceID is the ID of the service that the DPUService is associated with.

serviceDaemonSetServiceDaemonSetValues

ServiceDaemonSet specifies the configuration for the ServiceDaemonSet.

deployInClusterboolean

DeployInCluster indicates if the DPUService Helm Chart will be deployed on

the Host cluster. Default to false.

interfacesstring array

Interfaces specifies the DPUServiceInterface names that the DPUService

uses in the same namespace.

MaxItems: 50

MinItems: 1

pausedboolean

Paused indicates that the DPUService is paused.

Underlying resources are also paused when this is set to true.

No deletion of resources will occur when this is set to true.

configPortsConfigPorts

ConfigPorts defines the desired state of port configurations for a DPUService.

This struct determines how ports are exposed from the DPU to the host cluster.

A DPUService can only have a single ServiceType across all ports.


DPUServiceStatus

DPUServiceStatus defines the observed state of DPUService

Appears in: - DPUService

Field

Description

Default

Validation

conditionsCondition array

Conditions defines current service state.

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.

configPortsobject (keys:string, values:ConfigPort)

ConfigPorts defines the observed state of the config ports.

It contains the actual port numbers that are exposed on the DPUService per cluster.


DPUServiceTemplate

DPUServiceTemplate is the Schema for the DPUServiceTemplate API. This object is intended to be used in conjunction with a DPUDeployment object. This object is the template from which the DPUService will be created. It contains configuration options related to resources required by the service to be deployed. The rest of the configuration options must be defined in a DPUServiceConfiguration object.

Appears in: - DPUServiceTemplateList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceTemplate

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUServiceTemplateSpec

statusDPUServiceTemplateStatus


DPUServiceTemplateList

DPUServiceTemplateList contains a list of DPUServiceTemplate

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

DPUServiceTemplateList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUServiceTemplate array


DPUServiceTemplateSpec

DPUServiceTemplateSpec defines the desired state of DPUServiceTemplate

Appears in: - DPUServiceTemplate

Field

Description

Default

Validation

deploymentServiceNamestring

DeploymentServiceName is the name of the DPU service this configuration refers to. It must match

.spec.deploymentServiceName of a DPUServiceConfiguration object and one of the keys in .spec.services of a

DPUDeployment object.

helmChartHelmChart

HelmChart reflects the Helm related configuration. The user is supposed to configure the values that are static

across any DPUServiceConfiguration used with this DPUServiceTemplate in a DPUDeployment. These values act as a

baseline and are merged with values specified in the DPUServiceConfiguration. In case of conflict, the

DPUServiceConfiguration values take precedence.

resourceRequirementsResourceList

ResourceRequirements contains the overall resources required by this particular service to run on a single node


DPUServiceTemplateStatus

DPUServiceTemplateStatus defines the observed state of DPUServiceTemplate

Appears in: - DPUServiceTemplate

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.

versionsobject (keys:string, values:string)

Versions reflects the required versions the generated DPUService needs in order to function correctly.


DPUSet

DPUSet contains configuration for the DPUSet to be created by the DPUDeployment

Appears in: - DPUs

Field

Description

Default

Validation

nameSuffixstring

NameSuffix is the suffix to be added to the name of the DPUSet object created by the DPUDeployment.

MaxLength: 63

MinLength: 1

nodeSelectorLabelSelector

NodeSelector defines the nodes that the DPUSet should target

dpuSelectorobject (keys:string, values:string)

DPUSelector defines the DPUs that the DPUSet should target

dpuAnnotationsobject (keys:string, values:string)

DPUAnnotations is the annotations to be added to the DPU object created by the DPUSet.

MaxProperties: 50


DPUs

DPUs contains the DPU related configuration

Appears in: - DPUDeploymentSpec

Field

Description

Default

Validation

bfbstring

BFB is the name of the BFB object to be used in this DPUDeployment. It must be in the same namespace as the

DPUDeployment.

flavorstring

Flavor is the name of the DPUFlavor object to be used in this DPUDeployment. It must be in the same namespace as

the DPUDeployment.

dpuSetsDPUSet array

DPUSets contains configuration for each DPUSet that is going to be created by the DPUDeployment

MaxItems: 50

MinItems: 1

nodeEffectNodeEffect

NodeEffect is the effect the DPU has on Nodes during provisioning.


HelmChart

HelmChart reflects the helm related configuration

Appears in: - DPUServiceSpec - DPUServiceTemplateSpec

Field

Description

Default

Validation

sourceApplicationSource

Source specifies information about the Helm chart

valuesRawExtension

Values specifies Helm values to be passed to Helm template, defined as a map. This takes precedence over Values.


IPAM

Underlying type:struct{MatchLabels map[string]string "json:\"matchLabels\""; DefaultGateway bool "json:\"defaultGateway,omitempty\""; SetDefaultRoute bool "json:\"setDefaultRoute,omitempty\""}

IPAM defines the IPAM configuration

Appears in: - DPUDeploymentService - ServiceIfc

IPV4Network

IPV4Network describes the configuration relevant to splitting a network into subnet per node (i.e. different gateway and broadcast IP per node).

Appears in: - DPUServiceIPAMSpec

Field

Description

Default

Validation

networkstring

Network is the CIDR from which subnets should be allocated per node.

gatewayIndexinteger

GatewayIndex determines which IP in the subnet extracted from the CIDR should be the gateway IP. For point to

point networks (/31), one needs to leave this empty to make use of both the IPs.

prefixSizeinteger

PrefixSize is the size of the subnet that should be allocated per node.

exclusionsstring array

Exclusions is a list of IPs that should be excluded when splitting the CIDR into subnets per node.

allocationsobject (keys:string, values:string)

Allocations describes the subnets that should be assigned in each DPU node.

defaultGatewayboolean

DefaultGateway adds gateway as default gateway in the routes list if true.

routesRoute array

Routes is the static routes list using the gateway specified in the spec.


IPV4Subnet

IPV4Subnet describes the configuration relevant to splitting a subnet to a subnet block per node (i.e. same gateway and broadcast IP across all nodes).

Appears in: - DPUServiceIPAMSpec

Field

Description

Default

Validation

subnetstring

Subnet is the CIDR from which blocks should be allocated per node

gatewaystring

Gateway is the IP in the subnet that should be the gateway of the subnet.

perNodeIPCountinteger

PerNodeIPCount is the number of IPs that should be allocated per node.

defaultGatewayboolean

if true, add gateway as default gateway in the routes list

DefaultGateway adds gateway as default gateway in the routes list if true.

routesRoute array

Routes is the static routes list using the gateway specified in the spec.


NamespacedName

NamespacedName contains enough information to locate the referenced Kubernetes resource object in any namespace.

Appears in: - DPUServiceCredentialRequestSpec

Field

Description

Default

Validation

namestring

Name of the object.

namespacestring

Namespace of the object, if not provided the object will be looked up in

the same namespace as the referring object


ObjectMeta

ObjectMeta holds metadata like labels and annotations.

Appears in: - DPUServiceCredentialRequestSpec - DPUServiceIPAMSpec - DPUServiceNADSpec - ServiceChainSetSpecTemplate - ServiceChainSpecTemplate - ServiceInterfaceSetSpecTemplate - ServiceInterfaceSpecTemplate

Field

Description

Default

Validation

labelsobject (keys:string, values:string)

Labels is a map of string keys and values.

annotationsobject (keys:string, values:string)

Annotations is a map of string keys and values.


PF

PF defines the PF configuration

Appears in: - ServiceInterfaceSpec

Field

Description

Default

Validation

pfIDinteger

The PF ID

virtualNetworkstring

VirtualNetwork is the VirtualNetwork name in the same namespace


Physical

Physical Identifies a physical interface

Appears in: - ServiceInterfaceSpec

Field

Description

Default

Validation

interfaceNamestring

The interface name


Port

Port defines the port configuration

Appears in: - Switch

Field

Description

Default

Validation

serviceInterfaceServiceIfc


Route

Route contains static route parameters

Appears in: - IPV4Network - IPV4Subnet

Field

Description

Default

Validation

dststring

The destination of the route, in CIDR notation


ServiceChain

ServiceChain is the Schema for the servicechains API

Appears in: - ServiceChainList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceChain

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specServiceChainSpec

statusServiceChainStatus


ServiceChainList

ServiceChainList contains a list of ServiceChain

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceChainList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsServiceChain array


ServiceChainSet

ServiceChainSet is the Schema for the servicechainsets API

Appears in: - ServiceChainSetList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceChainSet

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specServiceChainSetSpec

statusServiceChainSetStatus


ServiceChainSetList

ServiceChainSetList contains a list of ServiceChainSet

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceChainSetList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsServiceChainSet array


ServiceChainSetSpec

ServiceChainSetSpec defines the desired state of ServiceChainSet

Appears in: - ServiceChainSet - ServiceChainSetSpecTemplate

Field

Description

Default

Validation

nodeSelectorLabelSelector

Select the Nodes with specific labels, ServiceChain CRs will be created

only for these Nodes

templateServiceChainSpecTemplate

ServiceChainSpecTemplate holds the template for the ServiceChainSpec


ServiceChainSetSpecTemplate

ServiceChainSetSpecTemplate describes the data a ServiceChainSet should have when created from a template.

Appears in: - DPUServiceChainSpec

Field

Description

Default

Validation

specServiceChainSetSpec

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.


ServiceChainSetStatus

ServiceChainSetStatus defines the observed state of ServiceChainSet

Appears in: - ServiceChainSet

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.

numberAppliedinteger

The number of nodes where the service chain is applied and is supposed to be applied.

numberReadyinteger

The number of nodes where the service chain is applied and ready.


ServiceChainSpec

ServiceChainSpec defines the desired state of ServiceChain

Appears in: - ServiceChain - ServiceChainSpecTemplate

Field

Description

Default

Validation

nodestring

Node where this ServiceChain applies to

switchesSwitch array

The switches of the ServiceChain, order is significant

MaxItems: 50

MinItems: 1


ServiceChainSpecTemplate

ServiceChainSpecTemplate defines the template from which ServiceChainSpecs are created

Appears in: - ServiceChainSetSpec

Field

Description

Default

Validation

specServiceChainSpec

ServiceChainSpec is the spec for the ServiceChainSpec

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.


ServiceChainStatus

ServiceChainStatus defines the observed state of ServiceChain

Appears in: - ServiceChain

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


ServiceChains

Appears in: - DPUDeploymentSpec

Field

Description

Default

Validation

upgradePolicyUpgradePolicy

UpgradePolicy contains the configuration for the upgrade process

{ }

switchesDPUDeploymentSwitch array

Switches is the list of switches that form the service chain

MaxItems: 50

MinItems: 1


ServiceConfiguration

ServiceConfiguration contains fields that are configured on the generated DPUService.

Appears in: - DPUServiceConfigurationSpec

Field

Description

Default

Validation

helmChartServiceConfigurationHelmChart

HelmChart reflects the Helm related configuration. The user is supposed to configure values specific to that

DPUServiceConfiguration used in a DPUDeployment and should not specify values that could be shared across multiple

DPUDeployments using different DPUServiceConfigurations. These values are merged with values specified in the

DPUServiceTemplate. In case of conflict, the DPUServiceConfiguration values take precedence.

serviceDaemonSetDPUServiceConfigurationServiceDaemonSetValues

ServiceDaemonSet contains settings related to the underlying DaemonSet that is part of the Helm chart

deployInClusterboolean

DeployInCluster indicates if the DPUService Helm Chart will be deployed on the Host cluster. Default to false.

configPortsConfigPorts

ConfigPorts defines the desired state of port configurations for a DPUService.

This struct determines how ports are exposed from the DPU to the host cluster.

A DPUService can only have a single ServiceType across all ports.


ServiceConfigurationHelmChart

ServiceConfigurationHelmChart reflects the helm related configuration

Appears in: - ServiceConfiguration

Field

Description

Default

Validation

valuesRawExtension

Values specifies Helm values to be passed to Helm template, defined as a map. This takes precedence over Values.


ServiceDaemonSetValues

ServiceDaemonSetValues specifies the configuration for the ServiceDaemonSet.

Appears in: - DPUServiceSpec

Field

Description

Default

Validation

nodeSelectorNodeSelector

NodeSelector specifies which Nodes to deploy the ServiceDaemonSet to.

updateStrategyDaemonSetUpdateStrategy

UpdateStrategy specifies the DeaemonSet update strategy for the ServiceDaemonset.

labelsobject (keys:string, values:string)

Labels specifies labels which are added to the ServiceDaemonSet.

annotationsobject (keys:string, values:string)

Annotations specifies annotations which are added to the ServiceDaemonSet.

resourcesResourceList

Resources specifies resources which are added to the ServiceDaemonSet.


ServiceDef

ServiceDef Identifies the service and network for the ServiceInterface

Appears in: - ServiceInterfaceSpec

Field

Description

Default

Validation

serviceIDstring

ServiceID is the DPU Service Identifier

networkstring

Network is the Network Attachment Definition in the form of "namespace/name"

or just "name" if the namespace is the same as the ServiceInterface.

interfaceNamestring

The interface name

virtualNetworkstring

VirtualNetwork is the VirtualNetwork name in the same namespace


ServiceIfc

ServiceIfc defines the service interface configuration

Appears in: - DPUDeploymentPort - Port

Field

Description

Default

Validation

matchLabelsobject (keys:string, values:string)

Labels matching service interface

MaxProperties: 50

MinProperties: 1

ipamIPAM

IPAM defines the IPAM configuration when referencing a serviceInterface of type 'service'


ServiceInterface

ServiceInterface is the Schema for the serviceinterfaces API

Appears in: - ServiceInterfaceList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceInterface

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specServiceInterfaceSpec

statusServiceInterfaceStatus


ServiceInterfaceList

ServiceInterfaceList contains a list of ServiceInterface

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceInterfaceList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsServiceInterface array


ServiceInterfaceSet

ServiceInterfaceSet is the Schema for the serviceinterfacesets API

Appears in: - ServiceInterfaceSetList

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceInterfaceSet

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specServiceInterfaceSetSpec

statusServiceInterfaceSetStatus


ServiceInterfaceSetList

ServiceInterfaceSetList contains a list of ServiceInterfaceSet

Field

Description

Default

Validation

apiVersionstring

svc.dpu.nvidia.com/v1alpha1

kindstring

ServiceInterfaceSetList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsServiceInterfaceSet array


ServiceInterfaceSetSpec

ServiceInterfaceSetSpec defines the desired state of ServiceInterfaceSet

Appears in: - ServiceInterfaceSet - ServiceInterfaceSetSpecTemplate

Field

Description

Default

Validation

nodeSelectorLabelSelector

Select the Nodes with specific labels, ServiceInterface CRs will be

created only for these Nodes

templateServiceInterfaceSpecTemplate

Template holds the template for the serviceInterfaceSpec


ServiceInterfaceSetSpecTemplate

ServiceInterfaceSetSpecTemplate describes the data a ServiceInterfaceSet should have when created from a template.

Appears in: - DPUServiceInterfaceSpec

Field

Description

Default

Validation

specServiceInterfaceSetSpec

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.


ServiceInterfaceSetStatus

ServiceInterfaceSetStatus defines the observed state of ServiceInterfaceSet

Appears in: - ServiceInterfaceSet

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.

numberAppliedinteger

The number of nodes where the service chain is applied and is supposed to be applied.

numberReadyinteger

The number of nodes where the service chain is applied and ready.


ServiceInterfaceSpec

ServiceInterfaceSpec defines the desired state of ServiceInterface

Appears in: - ServiceInterface - ServiceInterfaceSpecTemplate

Field

Description

Default

Validation

nodestring

Node where this interface exists

interfaceTypestring

The interface type ("vlan", "physical", "pf", "vf", "ovn", "service")

Enum: [vlan physical pf vf ovn service]

physicalPhysical

The physical interface definition

vlanVLAN

The VLAN definition

vfVF

The VF definition

pfPF

The PF definition

serviceServiceDef

The Service definition


ServiceInterfaceSpecTemplate

ServiceInterfaceSpecTemplate defines the template from which ServiceInterfaceSpecs are created

Appears in: - ServiceInterfaceSetSpec

Field

Description

Default

Validation

specServiceInterfaceSpec

ServiceInterfaceSpec is the spec for the ServiceInterfaceSpec

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.


ServiceInterfaceStatus

ServiceInterfaceStatus defines the observed state of ServiceInterface

Appears in: - ServiceInterface

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


ServiceInterfaceTemplate

ServiceInterfaceTemplate contains the information related to an interface of the DPUService

Appears in: - DPUServiceConfigurationSpec

Field

Description

Default

Validation

namestring

Name is the name of the interface

networkstring

Network is the Network Attachment Definition in the form of "namespace/name"

or just "name" if the namespace is the same as the namespace the pod is running.

virtualNetworkstring

VirtualNetwork is the VirtualNetwork name in the same namespace


Switch

Switch defines the switch configuration

Appears in: - ServiceChainSpec

Field

Description

Default

Validation

portsPort array

Ports of the switch

MaxItems: 50

MinItems: 1


UpgradePolicy

Appears in: - DPUServiceConfigurationSpec - ServiceChains

Field

Description

Default

Validation

applyNodeEffectboolean

ApplyNodeEffect specifies if the node effect should be applied during the

upgrade. It signals the reconciler that this object upgrade is disruptive.

Hence a new revision of the object should be created and node effect should

be applied.

true


VF

VF defines the VF configuration

Appears in: - ServiceInterfaceSpec

Field

Description

Default

Validation

vfIDinteger

The VF ID

pfIDinteger

The PF ID

parentInterfaceRefstring

The parent interface reference

TODO: Figure out what this field is supposed to be

virtualNetworkstring

VirtualNetwork is the VirtualNetwork name in the same namespace


VLAN

VLAN defines the VLAN configuration

Appears in: - ServiceInterfaceSpec

Field

Description

Default

Validation

vlanIDinteger

The VLAN ID

parentInterfaceRefstring

The parent interface reference

TODO: Figure out what this field is supposed to be

vpc.dpu.nvidia.com/v1alpha1

Package v1alpha1 contains API Schema definitions for the storage v1alpha1 API group

Resource Types

BridgedNetworkIPAMIPv4Spec

BridgedNetworkIPAMIPv4Spec contains IPv4 IPAM configuration for bridged network

Appears in: - BridgedNetworkIPAMSpec

Field

Description

Default

Validation

dhcpboolean

DHCP if set, enables DHCP for the network

subnetstring

Subnet is the network subnet in CIDR format to use for DHCP. the first IP in the subnet is the gateway.


BridgedNetworkIPAMSpec

BridgedNetworkIPAMSpec contains IPAM configuration for bridged network

Appears in: - BridgedNetworkSpec

Field

Description

Default

Validation

ipv4BridgedNetworkIPAMIPv4Spec

IPv4 contains the IPv4 IPAM configuration


BridgedNetworkSpec

BridgedNetworkSpec contains configuration for bridged network

Appears in: - DPUVirtualNetworkSpec

Field

Description

Default

Validation

ipamBridgedNetworkIPAMSpec

IPAM contains the IPAM configuration for the bridged network


DPUVPC

DPUVPC is the Schema for the dpuvpc API

Appears in: - DPUVPCList

Field

Description

Default

Validation

apiVersionstring

vpc.dpu.nvidia.com/v1alpha1

kindstring

DPUVPC

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUVPCSpec

statusDPUVPCStatus


DPUVPCList

DPUVPCList contains a list of DPUVPC

Field

Description

Default

Validation

apiVersionstring

vpc.dpu.nvidia.com/v1alpha1

kindstring

DPUVPCList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUVPC array


DPUVPCSpec

DPUVPCSpec defines the desired state of DPUVPCSpec

Appears in: - DPUVPC

Field

Description

Default

Validation

tenantstring

Tenant which owns the VPC.

nodeSelectorLabelSelector

NodeSelector Selects the DPU Nodes with specific labels which belong to this VPC.

isolationClassNamestring

IsolationClassName is the name of the isolation class to use for the VPC

interNetworkAccessboolean

InterNetworkAccess defines if virtual networks within the VPC are routed or not.

if set to false, communication between virtual networks is not allowed.


DPUVPCStatus

DPUVPCStatus defines the observed state of DPUVPC

Appears in: - DPUVPC

Field

Description

Default

Validation

virtualNetworksVirtualNetworkStatus array

VirtualNetworks contains the virtual networks that belong to this VPC

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


DPUVirtualNetwork

DPUVirtualNetwork is the Schema for the dpuvirtualnetwork API

Appears in: - DPUVirtualNetworkList

Field

Description

Default

Validation

apiVersionstring

vpc.dpu.nvidia.com/v1alpha1

kindstring

DPUVirtualNetwork

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specDPUVirtualNetworkSpec

statusDPUVirtualNetworkStatus


DPUVirtualNetworkList

DPUVirtualNetworkList contains a list of DPUVirtualNetwork

Field

Description

Default

Validation

apiVersionstring

vpc.dpu.nvidia.com/v1alpha1

kindstring

DPUVirtualNetworkList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsDPUVirtualNetwork array


DPUVirtualNetworkSpec

DPUVirtualNetworkSpec defines the desired state of DPUVirtualNetworkSpec

Appears in: - DPUVirtualNetwork

Field

Description

Default

Validation

nodeSelectorLabelSelector

NodeSelector Selects the DPU Nodes with specific labels which can belong to the virtual network.

vpcNamestring

vpcName is the name of the DPUVPC the virtual network belongs within the same namespace.

typeNetworkType

Type of the virtual network

Enum: [Bridged]

externallyRoutedboolean

ExternallyRouted defines if the virtual network can be routed externally

masqueradeboolean

Masquerade defines if the virtual network should masquerade the traffic before egressing to external networks.

valid only if ExternallyRouted is true

true

bridgedNetworkBridgedNetworkSpec

BridgedNetwork contains the bridged network configuration


DPUVirtualNetworkStatus

DPUVirtualNetworkStatus defines the observed state of DPUVirtualNetwork

Appears in: - DPUVirtualNetwork

Field

Description

Default

Validation

conditionsCondition array

Conditions reflect the status of the object

observedGenerationinteger

ObservedGeneration records the Generation observed on the object the last time it was patched.


IsolationClass

IsolationClass is the Schema for the isolationclass API

Appears in: - IsolationClassList

Field

Description

Default

Validation

apiVersionstring

vpc.dpu.nvidia.com/v1alpha1

kindstring

IsolationClass

metadataObjectMeta

Refer to Kubernetes API documentation for fields of metadata.

specIsolationClassSpec

statusIsolationClassStatus


IsolationClassList

IsolationClassList contains a list of IsolationClass

Field

Description

Default

Validation

apiVersionstring

vpc.dpu.nvidia.com/v1alpha1

kindstring

IsolationClassList

metadataListMeta

Refer to Kubernetes API documentation for fields of metadata.

itemsIsolationClass array


IsolationClassSpec

IsolationClassSpec defines the configuration of IsolationClass

Appears in: - IsolationClass

Field

Description

Default

Validation

provisionerstring

Provisioner indicates the type of the provisioner.

parametersobject (keys:string, values:string)

Parameters holds the parameters for the provisioner


IsolationClassStatus

IsolationClassStatus defines the status of IsolationClass

Appears in: - IsolationClass

NetworkType

Underlying type:string

NetworkType represents the type of the virtual network

Validation: - Enum: [Bridged]

Appears in: - DPUVirtualNetworkSpec

Field

Description

Bridged

BridgedVirtualNetworkType represents a bridged virtual network


VirtualNetworkStatus

VirtualNetworkStatus is the status of a virtual network

Appears in: - DPUVPCStatus

Field

Description

Default

Validation

namestring

the name of the virtual network

© Copyright 2025, NVIDIA. Last updated on May 20, 2025.