Spectrum-X CRDs and API Reference

A Spectrum-X Kubernetes deployment uses CRDs from several NVIDIA operators working together. This page documents the Spectrum-X Operator CRDs (v1alpha2 — SpectrumXRailPoolConfig). For the other CRDs, see the linked references. For the full stack of operators, drivers, and CNIs that own these CRDs and how they depend on each other, see Architecture and Components.

CRD

Owner

Role

NicClusterPolicy

NVIDIA Network Operator

Cluster-wide operator configuration. Enables NIC Configuration Operator, NV-IPAM, Spectrum-X Operator, and secondary network components.

NicConfigurationTemplate

NIC Configuration Operator

Per-NIC firmware and Spectrum-X settings (link type, numVfs, multiplane mode, RA version). See Spectrum-X NIC Configuration.

NicInterfaceNameTemplate

NIC Configuration Operator

Predictable rail / plane-based netdev and RDMA names driven by udev rules.

CIDRPool

NV-IPAM

Per-rail IP allocation pool consumed by SpectrumXRailPoolConfig.

SpectrumXRailPoolConfig

Spectrum-X Operator

Rail topology, PF selection, IPAM binding, and DRA / SR-IOV resource exposure (full API below).

ResourceClaimTemplate

Kubernetes DRA

Pod-to-GPU+VF binding via Dynamic Resource Allocation (Kubernetes upstream resource).

Packages:

spectrumx.nvidia.com/v1alpha2

Package v1alpha2 contains API Schema definitions for the spectrumx v1alpha2 API group.

Resource Types:

SpectrumXRailPoolConfig

SpectrumXRailPoolConfig is the Schema for the spectrumxrailpoolconfigs API.

Field

Description

apiVersion

spectrumx.nvidia.com/v1alpha2

kind

SpectrumXRailPoolConfig

metadata

Standard object metadata. Refer to the Kubernetes API documentation for the fields of the metadata field.

Desired state of the SpectrumXRailPoolConfig.

Observed state of the SpectrumXRailPoolConfig.

SpectrumXRailPoolConfigSpec

(Appears on: SpectrumXRailPoolConfig)

SpectrumXRailPoolConfigSpec defines the desired state of SpectrumXRailPoolConfig.

Field

Description

draEnabled
bool

(Optional) Enables Dynamic Resource Allocation (DRA) for the configured Spectrum-X nodes. Defaults to true.

nodeSelector
map[string]string

(Optional) Label selector that identifies the Spectrum-X nodes the configuration applies to.

maxUnavailable

(Optional) Either an integer count or a percentage of nodes in the pool that can be configured in parallel. Defaults to 1.

networkNamespace
string

(Optional) Namespace of the NetworkAttachmentDefinition custom resource.

numVfs
int

Number of VFs to configure on each PF. Must be >= 1.

railTopology

Rails topology list. Must contain at least one entry.

SpectrumXRailPoolConfigStatus

(Appears on: SpectrumXRailPoolConfig)

SpectrumXRailPoolConfigStatus defines the observed state of SpectrumXRailPoolConfig.

Field

Description

syncStatus
string

Synchronization status. One of Unknown, InProgress, Failed, Succeeded.

observedGeneration
int64

The most recent generation observed by the controller.

RailTopology

(Appears on: SpectrumXRailPoolConfigSpec)

RailTopology describes a single rail in the Spectrum-X pool. Only one of cidrPoolRef or ipam may be specified.

Field

Description

name
string

Rail topology name. Must be non-empty.

nicSelector

PF selector identifying the NICs that belong to this rail.

cidrPoolRef
string

(Optional) Reference to a CIDR Pool resource. Mutually exclusive with ipam.

ipam
string

(Optional) Advanced IPAM configuration. Mutually exclusive with cidrPoolRef.

mtu
int

MTU for the rail. Must be >= 0.

NicSelector

(Appears on: RailTopology)

NicSelector selects the physical functions that participate in a rail.

Field

Description

pfNames
[]string

List of PF names. Must contain at least one entry.