Network Operator API reference v1alpha1
Packages:
configuration.net.nvidia.com/v1alpha1
Package v1alpha1 contains API Schema definitions for the configuration.net v1alpha1 API group
Resource Types:
ConfigurationTemplateSpec
(Appears on: NicConfigurationTemplateSpec, NicDeviceConfigurationSpec)
ConfigurationTemplateSpec is a set of configurations for the NICs
Field |
Description |
|---|---|
|
Number of VFs to be configured |
|
LinkType to be configured, Ethernet|Infiniband |
|
PCI performance optimization settings |
|
RoCE optimization settings |
|
GPU Direct optimization settings |
|
Spectrum-X optimization settings. Works only with linkType==Ethernet && numVfs==0. Other optimizations must be skipped or disabled. RawNvConfig must be empty. |
|
List of arbitrary nv config parameters |
FirmwareTemplateSpec
(Appears on: NicDeviceSpec, NicFirmwareTemplateSpec)
FirmwareTemplateSpec specifies a FW update policy for a given FW source ref
Field |
Description |
|---|---|
|
NicFirmwareSourceRef refers to existing NicFirmwareSource CR on where to get the FW from |
|
UpdatePolicy indicates whether the operator needs to validate installed FW or upgrade it |
GpuDirectOptimizedSpec
(Appears on: ConfigurationTemplateSpec)
GpuDirectOptimizedSpec specifies GPU Direct optimization settings
Field |
Description |
|---|---|
|
Optimize GPU Direct |
|
GPU direct environment, e.g. Baremetal |
LinkTypeEnum (string alias)
(Appears on: ConfigurationTemplateSpec)
LinkTypeEnum described the link type (Ethernet / Infiniband)
NicConfigurationTemplate
NicConfigurationTemplate is the Schema for the nicconfigurationtemplates API
Field |
Description |
|---|---|
|
Refer to the Kubernetes API documentation for the fields of the |
Defines the desired state of NICs |
|
|
Defines the observed state of NicConfigurationTemplate |
NicConfigurationTemplateSpec
(Appears on: NicConfigurationTemplate)
NicConfigurationTemplateSpec defines the desired state of NicConfigurationTemplate
Field |
Description |
|---|---|
|
NodeSelector contains labels required on the node. When empty, the template will be applied to matching devices on all nodes. |
|
NIC selector configuration |
|
(Optional) ResetToDefault specifies whether node agent needs to perform a reset flow The following operations will be performed: * Nvconfig reset of all non-volatile configurations - Mstconfig -d reset for each PF - Mstconfig -d set ADVANCED_PCI_SETTINGS=1 * Node reboot - Applies new NIC NV config - Will undo any runtime configuration previously performed for the device/driver |
|
Configuration template to be applied to matching devices |
NicDevice
NicDevice is the Schema for the nicdevices API
Field |
Description |
|---|---|
|
Refer to the Kubernetes API documentation for the fields of the |
|
|
|
NicDeviceConfigurationSpec
(Appears on: NicDeviceSpec)
NicDeviceConfigurationSpec contains desired configuration of the NIC
Field |
Description |
|---|---|
|
ResetToDefault specifies whether node agent needs to perform a reset flow. The following operations will be performed: * Nvconfig reset of all non-volatile configurations - Mstconfig -d reset for each PF - Mstconfig -d set ADVANCED_PCI_SETTINGS=1 * Node reboot - Applies new NIC NV config - Will undo any runtime configuration previously performed for the device/driver |
|
Configuration template applied from the NicConfigurationTemplate CR |
NicDeviceInterfaceNameSpec
(Appears on: NicDeviceSpec)
Field |
Description |
|---|---|
|
NicIndex is the index of the NIC in the flattened list of NICs based on the Template |
|
RailIndex is the index of the rail where the given NIC belongs to based on the Template |
|
PlaneIndices is the indices of the planes for the given NIC based on the Template |
|
— Parameters from the NicInterfaceNameTemplate CR — RdmaDevicePrefix specifies the prefix for the rdma device name |
|
NetDevicePrefix specifies the prefix for the net device name |
NicDevicePortSpec
(Appears on: NicDeviceStatus)
NicDevicePortSpec describes the ports of the NIC
Field |
Description |
|---|---|
|
PCI is a PCI address of the port, e.g. 0000:3b:00.0 |
|
NetworkInterface is the name of the network interface for this port, e.g. eth1 |
|
RdmaInterface is the name of the rdma interface for this port, e.g. mlx5_1 |
NicDeviceSpec
(Appears on: NicDevice)
NicDeviceSpec defines the desired state of NicDevice
Field |
Description |
|---|---|
|
Configuration specifies the configuration requested by NicConfigurationTemplate |
|
Firmware specifies the fw upgrade policy requested by NicFirmwareTemplate |
|
InterfaceNameTemplate specifies the interface name template to be applied to the NIC |
NicDeviceStatus
(Appears on: NicDevice)
NicDeviceStatus defines the observed state of NicDevice
Field |
Description |
|---|---|
|
Node where the device is located |
|
Type of device, e.g. ConnectX7 |
|
Serial number of the device, e.g. MT2116X09299 |
|
Part number of the device, e.g. MCX713106AEHEA_QP1 |
|
Product Serial ID of the device, e.g. MT_0000000221 |
|
Firmware version currently installed on the device, e.g. 22.31.1014 |
|
DPU indicates if the device is a BlueField in DPU mode |
|
ModelName is the model name of the device, e.g. ConnectX-6 or BlueField-3 |
|
SuperNIC indicates if the device is a SuperNIC |
|
List of ports for the device |
|
List of conditions observed for the device |
NicFirmwareSource
NicFirmwareSource is the Schema for the nicfirmwaresources API
Field |
Description |
|---|---|
|
Refer to the Kubernetes API documentation for the fields of the |
|
NicFirmwareSourceSpec
(Appears on: NicFirmwareSource)
NicFirmwareSourceSpec represents a list of url sources for FW
Field |
Description |
|---|---|
|
(Optional) BinUrlSources represents a list of url sources for ConnectX Firmware |
|
(Optional) BFBUrlSource represents a url source for BlueField Bundle |
|
(Optional) DocaSpcXCCUrlSource represents a url source for DOCA SPC-X CC .deb package for ubuntu 22.04 Will be removed in the future, once Doca SPC-X CC algorithm will be publicly available |
NicFirmwareSourceStatus
(Appears on: NicFirmwareSource)
NicFirmwareSourceStatus represents the status of the FW from given sources, e.g. version available for PSIDs
Field |
Description |
|---|---|
|
State represents the firmware processing state |
|
Reason shows an error message if occurred |
|
Versions is a map of available FW binaries versions to PSIDs a PSID should have only a single FW version available for it |
|
BFBVersions represents the FW versions available in the provided BFB bundle |
|
DocaSpcXCCVersion represents the FW versions available in the provided DOCA SPC-X CC .deb package for ubuntu 22.04 |
NicFirmwareTemplate
NicFirmwareTemplate is the Schema for the nicfirmwaretemplates API
Field |
Description |
|---|---|
|
Refer to the Kubernetes API documentation for the fields of the |
|
NicFirmwareTemplateSpec
(Appears on: NicFirmwareTemplate)
NicFirmwareTemplateSpec defines the FW templates and node/nic selectors for it
Field |
Description |
|---|---|
|
NodeSelector contains labels required on the node. When empty, the template will be applied to matching devices on all nodes. |
|
NIC selector configuration |
|
Firmware update template |
NicInterfaceNameTemplate
NicInterfaceNameTemplate is the Schema for the nicinterfacenametemplates API
Field |
Description |
|---|---|
|
Refer to the Kubernetes API documentation for the fields of the |
NicInterfaceNameTemplateSpec
(Appears on: NicInterfaceNameTemplate)
NicInterfaceNameTemplateSpec defines the desired state of NicInterfaceNameTemplate
Field |
Description |
|---|---|
|
NodeSelector contains labels required on the node. When empty, the template will be applied to matching devices on all nodes. |
|
PfsPerNic specifies the number of PFs per NIC Used to calculate the number of planes per NIC |
|
RdmaDevicePrefix specifies the prefix for the rdma device name %nic_id%, %plane_id% and %rail_id% placeholders can be used to construct the device name %nic_id% is the index of the NIC in the flattened list of NICs %plane_id% is the index of the plane of the specific NIC %rail_id% is the index of the rail where the given NIC belongs to |
|
NetDevicePrefix specifies the prefix for the net device name %nic_id%, %plane_id% and %rail_id% placeholders can be used to construct the device name %nic_id% is the index of the NIC in the flattened list of NICs %plane_id% is the index of the plane of the specific NIC %rail_id% is the index of the rail where the given NIC belongs to |
|
RailPciAddresses defines the PCI address to rail mapping and order The first dimension is the rail index, the second dimension is the PCI addresses of the NICs in the rail. The PCI addresses must be sorted in the order of the rails. Example: [[“0000:1a:00.0”, “0000:2a:00.0”], [“0000:3a:00.0”, “0000:4a:00.0”]] specifies 2 rails with 2 NICs each. |
NicInterfaceNameTemplateStatus
(Appears on: NicInterfaceNameTemplate)
NicInterfaceNameTemplateStatus defines the observed state of NicInterfaceNameTemplate
NicSelectorSpec
(Appears on: NicConfigurationTemplateSpec, NicFirmwareTemplateSpec)
NicSelectorSpec is a desired configuration for NICs
Field |
Description |
|---|---|
|
Type of the NIC to be selected, e.g. 101d,1015,a2d6 etc. |
|
Array of PCI addresses to be selected, e.g. “0000:03:00.0” |
|
Serial numbers of the NICs to be selected, e.g. MT2116X09299 |
NicTemplateStatus
(Appears on: NicConfigurationTemplate, NicFirmwareTemplate)
NicTemplateStatus defines the observed state of NicConfigurationTemplate and NicFirmwareTemplate
Field |
Description |
|---|---|
|
NicDevice CRs matching this configuration / firmware template |
NvConfigParam
(Appears on: ConfigurationTemplateSpec)
Field |
Description |
|---|---|
|
Name of the arbitrary nvconfig parameter |
|
Value of the arbitrary nvconfig parameter |
PciPerformanceOptimizedSpec
(Appears on: ConfigurationTemplateSpec)
PciPerformanceOptimizedSpec specifies PCI performance optimization settings
Field |
Description |
|---|---|
|
Specifies whether to enable PCI performance optimization |
|
Specifies the PCIe Max Accumulative Outstanding read bytes |
|
Specifies the size of a single PCI read request in bytes |
QosSpec
(Appears on: RoceOptimizedSpec)
QosSpec specifies Quality of Service settings
Field |
Description |
|---|---|
|
Trust mode for QoS settings, e.g. trust-dscp |
|
Priority-based Flow Control configuration, e.g. “0,0,0,1,0,0,0,0” |
|
8-bit value for type of service |
RoceOptimizedSpec
(Appears on: ConfigurationTemplateSpec)
RoceOptimizedSpec specifies RoCE optimization settings
Field |
Description |
|---|---|
|
Optimize RoCE |
|
Quality of Service settings |
SpectrumXOptimizedSpec
(Appears on: ConfigurationTemplateSpec)
SpectrumXOptimizedSpec enables Spectrum-X specific optimizations
Field |
Description |
|---|---|
|
Optimize Spectrum X |
|
Version of the Spectrum-X architecture to optimize for |
|
(Optional) Overlay mode to be configured Can be “l3” or “none” |
|
(Optional) Multiplane mode to be configured Can be “none”, “swplb”, “hwplb”, or “uniplane” |
|
(Optional) Number of planes to be configured |