Documentation
¶
Overview ¶
Package v1 contains API Schema definitions for the clusterpolicy v1 API group +kubebuilder:object:generate=true +groupName=nvidia.com
Index ¶
- Variables
- func ImagePath(spec interface{}) (string, error)
- func ImagePullPolicy(pullPolicy string) corev1.PullPolicy
- type CUDAValidatorSpec
- type ClusterPolicy
- type ClusterPolicyList
- type ClusterPolicySpec
- type ClusterPolicyStatus
- type DCGMExporterMetricsConfig
- type DCGMExporterSpec
- type DCGMSpec
- type DaemonsetsSpec
- type DevicePluginConfig
- type DevicePluginSpec
- type DriverCertConfigSpec
- type DriverLicensingConfigSpec
- type DriverManagerSpec
- type DriverRepoConfigSpec
- type DriverSpec
- type DriverValidatorSpec
- type GPUDirectRDMASpec
- type GPUDirectStorageSpec
- type GPUFeatureDiscoverySpec
- type InitContainerSpec
- type KernelModuleConfigSpec
- type MIGGPUClientsConfigSpec
- type MIGManagerSpec
- type MIGPartedConfigSpec
- type MIGSpec
- type MIGStrategy
- type NodeStatusExporterSpec
- type OperatorSpec
- type PSPSpec
- type PluginValidatorSpec
- type RollingUpdateSpec
- type Runtime
- type RuntimeClass
- type SandboxDevicePluginSpec
- type SandboxWorkloadsSpec
- type State
- type ToolkitSpec
- type ToolkitValidatorSpec
- type VFIOManagerSpec
- type VFIOPCIValidatorSpec
- type VGPUDeviceManagerSpec
- type VGPUDevicesConfigSpec
- type VGPUDevicesValidatorSpec
- type VGPUManagerSpec
- type VGPUManagerValidatorSpec
- type ValidatorSpec
- type VirtualTopologyConfigSpec
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "nvidia.com", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func ImagePullPolicy ¶
func ImagePullPolicy(pullPolicy string) corev1.PullPolicy
ImagePullPolicy sets image pull policy
Types ¶
type CUDAValidatorSpec ¶
type CUDAValidatorSpec struct {
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
CUDAValidatorSpec defines validator spec for CUDA validation workload pod
func (*CUDAValidatorSpec) DeepCopy ¶
func (in *CUDAValidatorSpec) DeepCopy() *CUDAValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CUDAValidatorSpec.
func (*CUDAValidatorSpec) DeepCopyInto ¶
func (in *CUDAValidatorSpec) DeepCopyInto(out *CUDAValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterPolicy ¶
type ClusterPolicy struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ClusterPolicySpec `json:"spec,omitempty"`
Status ClusterPolicyStatus `json:"status,omitempty"`
}
ClusterPolicy is the Schema for the clusterpolicies API
func (*ClusterPolicy) DeepCopy ¶
func (in *ClusterPolicy) DeepCopy() *ClusterPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPolicy.
func (*ClusterPolicy) DeepCopyInto ¶
func (in *ClusterPolicy) DeepCopyInto(out *ClusterPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterPolicy) DeepCopyObject ¶
func (in *ClusterPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterPolicy) SetStatus ¶ added in v1.10.0
func (p *ClusterPolicy) SetStatus(s State, ns string)
SetStatus sets state and namespace of ClusterPolicy instance
type ClusterPolicyList ¶
type ClusterPolicyList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ClusterPolicy `json:"items"`
}
ClusterPolicyList contains a list of ClusterPolicy
func (*ClusterPolicyList) DeepCopy ¶
func (in *ClusterPolicyList) DeepCopy() *ClusterPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPolicyList.
func (*ClusterPolicyList) DeepCopyInto ¶
func (in *ClusterPolicyList) DeepCopyInto(out *ClusterPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterPolicyList) DeepCopyObject ¶
func (in *ClusterPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterPolicySpec ¶
type ClusterPolicySpec struct {
// Operator component spec
Operator OperatorSpec `json:"operator"`
// Daemonset defines common configuration for all Daemonsets
Daemonsets DaemonsetsSpec `json:"daemonsets"`
// Driver component spec
Driver DriverSpec `json:"driver"`
// Toolkit component spec
Toolkit ToolkitSpec `json:"toolkit"`
// DevicePlugin component spec
DevicePlugin DevicePluginSpec `json:"devicePlugin"`
// DCGMExporter spec
DCGMExporter DCGMExporterSpec `json:"dcgmExporter"`
// DCGM component spec
DCGM DCGMSpec `json:"dcgm"`
// NodeStatusExporter spec
NodeStatusExporter NodeStatusExporterSpec `json:"nodeStatusExporter"`
// GPUFeatureDiscovery spec
GPUFeatureDiscovery GPUFeatureDiscoverySpec `json:"gfd"`
// MIG spec
MIG MIGSpec `json:"mig,omitempty"`
// MIGManager for configuration to deploy MIG Manager
MIGManager MIGManagerSpec `json:"migManager,omitempty"`
// PSP defines spec for handling PodSecurityPolicies
PSP PSPSpec `json:"psp,omitempty"`
// Validator defines the spec for operator-validator daemonset
Validator ValidatorSpec `json:"validator,omitempty"`
// GPUDirectStorage defines the spec for GDS components(Experimental)
GPUDirectStorage *GPUDirectStorageSpec `json:"gds,omitempty"`
// SandboxWorkloads defines the spec for handling sandbox workloads (i.e. Virtual Machines)
SandboxWorkloads SandboxWorkloadsSpec `json:"sandboxWorkloads,omitempty"`
// VFIOManager for configuration to deploy VFIO-PCI Manager
VFIOManager VFIOManagerSpec `json:"vfioManager,omitempty"`
// SandboxDevicePlugin component spec
SandboxDevicePlugin SandboxDevicePluginSpec `json:"sandboxDevicePlugin,omitempty"`
// VGPUManager component spec
VGPUManager VGPUManagerSpec `json:"vgpuManager,omitempty"`
// VGPUDeviceManager spec
VGPUDeviceManager VGPUDeviceManagerSpec `json:"vgpuDeviceManager,omitempty"`
}
ClusterPolicySpec defines the desired state of ClusterPolicy
func (*ClusterPolicySpec) DeepCopy ¶
func (in *ClusterPolicySpec) DeepCopy() *ClusterPolicySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPolicySpec.
func (*ClusterPolicySpec) DeepCopyInto ¶
func (in *ClusterPolicySpec) DeepCopyInto(out *ClusterPolicySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterPolicyStatus ¶
type ClusterPolicyStatus struct {
// +kubebuilder:validation:Enum=ignored;ready;notReady
// State indicates status of ClusterPolicy
State State `json:"state"`
// Namespace indicates a namespace in which the operator is installed
Namespace string `json:"namespace,omitempty"`
}
ClusterPolicyStatus defines the observed state of ClusterPolicy
func (*ClusterPolicyStatus) DeepCopy ¶
func (in *ClusterPolicyStatus) DeepCopy() *ClusterPolicyStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPolicyStatus.
func (*ClusterPolicyStatus) DeepCopyInto ¶
func (in *ClusterPolicyStatus) DeepCopyInto(out *ClusterPolicyStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DCGMExporterMetricsConfig ¶ added in v1.8.0
type DCGMExporterMetricsConfig struct {
// ConfigMap name with file dcgm-metrics.csv for metrics to be collected by NVIDIA DCGM Exporter
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap name with file dcgm-metrics.csv"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Name string `json:"name,omitempty"`
}
DCGMExporterMetricsConfig defines metrics to be collected by NVIDIA DCGM Exporter
func (*DCGMExporterMetricsConfig) DeepCopy ¶ added in v1.8.0
func (in *DCGMExporterMetricsConfig) DeepCopy() *DCGMExporterMetricsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DCGMExporterMetricsConfig.
func (*DCGMExporterMetricsConfig) DeepCopyInto ¶ added in v1.8.0
func (in *DCGMExporterMetricsConfig) DeepCopyInto(out *DCGMExporterMetricsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DCGMExporterSpec ¶
type DCGMExporterSpec struct {
// NVIDIA DCGM Exporter image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA DCGM Exporter image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA DCGM Exporter image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// Optional: Custom metrics configuration for NVIDIA DCGM Exporter
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Custom Metrics Configuration For DCGM Exporter"
MetricsConfig *DCGMExporterMetricsConfig `json:"config,omitempty"`
}
DCGMExporterSpec defines the properties for NVIDIA DCGM Exporter deployment
func (*DCGMExporterSpec) DeepCopy ¶
func (in *DCGMExporterSpec) DeepCopy() *DCGMExporterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DCGMExporterSpec.
func (*DCGMExporterSpec) DeepCopyInto ¶
func (in *DCGMExporterSpec) DeepCopyInto(out *DCGMExporterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DCGMSpec ¶ added in v1.8.0
type DCGMSpec struct {
// Enabled indicates if deployment of NVIDIA DCGM Hostengine as a separate pod is enabled.
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable NVIDIA DCGM hostengine as a separate Pod"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// NVIDIA DCGM image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA DCGM image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA DCGM image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// HostPort represents host port that needs to be bound for DCGM engine (Default: 5555)
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Host port to bind for DCGM engine"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:number"
HostPort int32 `json:"hostPort,omitempty"`
}
DCGMSpec defines the properties for NVIDIA DCGM deployment
func (*DCGMSpec) DeepCopy ¶ added in v1.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DCGMSpec.
func (*DCGMSpec) DeepCopyInto ¶ added in v1.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DaemonsetsSpec ¶ added in v1.8.0
type DaemonsetsSpec struct {
// Optional: Set tolerations
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Tolerations"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:io.kubernetes:Tolerations"
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="PriorityClassName"
PriorityClassName string `json:"priorityClassName,omitempty"`
}
DaemonsetsSpec indicates common configuration for all Daemonsets managed by GPU Operator
func (*DaemonsetsSpec) DeepCopy ¶ added in v1.8.0
func (in *DaemonsetsSpec) DeepCopy() *DaemonsetsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DaemonsetsSpec.
func (*DaemonsetsSpec) DeepCopyInto ¶ added in v1.8.0
func (in *DaemonsetsSpec) DeepCopyInto(out *DaemonsetsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevicePluginConfig ¶ added in v1.11.0
type DevicePluginConfig struct {
// ConfigMap name for NVIDIA Device Plugin config including shared config between plugin and GFD
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap name for NVIDIA Device Plugin including shared config between plugin and GFD"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Name string `json:"name,omitempty"`
// Default config name within the ConfigMap for the NVIDIA Device Plugin config
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Default config name within the ConfigMap for the NVIDIA Device Plugin config"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Default string `json:"default,omitempty"`
}
DevicePluginConfig defines ConfigMap name for NVIDIA Device Plugin config
func (*DevicePluginConfig) DeepCopy ¶ added in v1.11.0
func (in *DevicePluginConfig) DeepCopy() *DevicePluginConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevicePluginConfig.
func (*DevicePluginConfig) DeepCopyInto ¶ added in v1.11.0
func (in *DevicePluginConfig) DeepCopyInto(out *DevicePluginConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DevicePluginSpec ¶
type DevicePluginSpec struct {
// NVIDIA Device Plugin image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA Device Plugin image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA Device Plugin image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// Optional: Configuration for the NVIDIA Device Plugin via the ConfigMap
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Configuration for the NVIDIA Device Plugin via the ConfigMap"
Config *DevicePluginConfig `json:"config,omitempty"`
}
DevicePluginSpec defines the properties for NVIDIA Device Plugin deployment
func (*DevicePluginSpec) DeepCopy ¶
func (in *DevicePluginSpec) DeepCopy() *DevicePluginSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DevicePluginSpec.
func (*DevicePluginSpec) DeepCopyInto ¶
func (in *DevicePluginSpec) DeepCopyInto(out *DevicePluginSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DriverCertConfigSpec ¶ added in v1.9.0
type DriverCertConfigSpec struct {
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Name string `json:"name,omitempty"`
}
DriverCertConfigSpec defines custom certificates configuration for NVIDIA Driver container
func (*DriverCertConfigSpec) DeepCopy ¶ added in v1.9.0
func (in *DriverCertConfigSpec) DeepCopy() *DriverCertConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DriverCertConfigSpec.
func (*DriverCertConfigSpec) DeepCopyInto ¶ added in v1.9.0
func (in *DriverCertConfigSpec) DeepCopyInto(out *DriverCertConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DriverLicensingConfigSpec ¶
type DriverLicensingConfigSpec struct {
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
ConfigMapName string `json:"configMapName,omitempty"`
// NLSEnabled indicates if NVIDIA Licensing System is used for licensing.
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable NVIDIA Licensing System licensing"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
NLSEnabled *bool `json:"nlsEnabled,omitempty"`
}
DriverLicensingConfigSpec defines licensing server configuration for NVIDIA Driver container
func (*DriverLicensingConfigSpec) DeepCopy ¶
func (in *DriverLicensingConfigSpec) DeepCopy() *DriverLicensingConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DriverLicensingConfigSpec.
func (*DriverLicensingConfigSpec) DeepCopyInto ¶
func (in *DriverLicensingConfigSpec) DeepCopyInto(out *DriverLicensingConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DriverLicensingConfigSpec) IsNLSEnabled ¶ added in v1.8.1
func (l *DriverLicensingConfigSpec) IsNLSEnabled() bool
IsNLSEnabled returns true if NLS should be used for licensing the driver
type DriverManagerSpec ¶ added in v1.8.0
type DriverManagerSpec struct {
// Repository represents Driver Managerrepository path
Repository string `json:"repository,omitempty"`
// Image represents NVIDIA Driver Manager image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// Version represents NVIDIA Driver Manager image tag(version)
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
DriverManagerSpec describes configuration for NVIDIA Driver Manager(initContainer)
func (*DriverManagerSpec) DeepCopy ¶ added in v1.8.0
func (in *DriverManagerSpec) DeepCopy() *DriverManagerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DriverManagerSpec.
func (*DriverManagerSpec) DeepCopyInto ¶ added in v1.8.0
func (in *DriverManagerSpec) DeepCopyInto(out *DriverManagerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DriverRepoConfigSpec ¶
type DriverRepoConfigSpec struct {
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
ConfigMapName string `json:"configMapName,omitempty"`
}
DriverRepoConfigSpec defines custom repo configuration for NVIDIA Driver container
func (*DriverRepoConfigSpec) DeepCopy ¶
func (in *DriverRepoConfigSpec) DeepCopy() *DriverRepoConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DriverRepoConfigSpec.
func (*DriverRepoConfigSpec) DeepCopyInto ¶
func (in *DriverRepoConfigSpec) DeepCopyInto(out *DriverRepoConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DriverSpec ¶
type DriverSpec struct {
// Enabled indicates if deployment of NVIDIA Driver through operator is enabled
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable NVIDIA Driver deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
GPUDirectRDMA *GPUDirectRDMASpec `json:"rdma,omitempty"`
// NVIDIA Driver image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA Driver image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA Driver image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Manager represents configuration for NVIDIA Driver Manager initContainer
Manager DriverManagerSpec `json:"manager,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// Optional: Custom repo configuration for NVIDIA Driver container
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Custom Repo Configuration For NVIDIA Driver Container"
RepoConfig *DriverRepoConfigSpec `json:"repoConfig,omitempty"`
// Optional: Custom certificates configuration for NVIDIA Driver container
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Custom Certificates Configuration For NVIDIA Driver Container"
CertConfig *DriverCertConfigSpec `json:"certConfig,omitempty"`
// Optional: Licensing configuration for NVIDIA vGPU licensing
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Licensing Configuration For NVIDIA vGPU Driver Container"
LicensingConfig *DriverLicensingConfigSpec `json:"licensingConfig,omitempty"`
// Optional: Virtual Topology Daemon configuration for NVIDIA vGPU drivers
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Custom Virtual Topology Daemon Configuration For vGPU Driver Container"
VirtualTopology *VirtualTopologyConfigSpec `json:"virtualTopology,omitempty"`
// Optional: Kernel module configuration parameters for the NVIDIA Driver
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Kernel module configuration parameters for the NVIDIA driver"
KernelModuleConfig *KernelModuleConfigSpec `json:"kernelModuleConfig,omitempty"`
// Optional: Configuration for rolling update of NVIDIA Driver DaemonSet pods
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Rolling update configuration for NVIDIA Driver DaemonSet pods"
RollingUpdate *RollingUpdateSpec `json:"rollingUpdate,omitempty"`
}
DriverSpec defines the properties for NVIDIA Driver deployment
func (*DriverSpec) DeepCopy ¶
func (in *DriverSpec) DeepCopy() *DriverSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DriverSpec.
func (*DriverSpec) DeepCopyInto ¶
func (in *DriverSpec) DeepCopyInto(out *DriverSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DriverSpec) IsDriverEnabled ¶
func (d *DriverSpec) IsDriverEnabled() bool
IsDriverEnabled returns true if driver install is enabled(default) through gpu-operator
type DriverValidatorSpec ¶
type DriverValidatorSpec struct {
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
DriverValidatorSpec defines validator spec for NVIDIA Driver validation
func (*DriverValidatorSpec) DeepCopy ¶
func (in *DriverValidatorSpec) DeepCopy() *DriverValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DriverValidatorSpec.
func (*DriverValidatorSpec) DeepCopyInto ¶
func (in *DriverValidatorSpec) DeepCopyInto(out *DriverValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GPUDirectRDMASpec ¶ added in v1.8.0
type GPUDirectRDMASpec struct {
// Enabled indicates if GPUDirect RDMA is enabled through GPU operator
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable GPUDirect RDMA through GPU operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// UseHostMOFED indicates to use MOFED drivers directly installed on the host to enable GPUDirect RDMA
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Use MOFED drivers directly installed on the host to enable GPUDirect RDMA"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
UseHostMOFED *bool `json:"useHostMofed,omitempty"`
}
GPUDirectRDMASpec defines the properties for nvidia-peermem deployment
func (*GPUDirectRDMASpec) DeepCopy ¶ added in v1.8.0
func (in *GPUDirectRDMASpec) DeepCopy() *GPUDirectRDMASpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GPUDirectRDMASpec.
func (*GPUDirectRDMASpec) DeepCopyInto ¶ added in v1.8.0
func (in *GPUDirectRDMASpec) DeepCopyInto(out *GPUDirectRDMASpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GPUDirectRDMASpec) IsEnabled ¶ added in v1.8.0
func (g *GPUDirectRDMASpec) IsEnabled() bool
IsEnabled returns true if GPUDirect RDMA are enabled through gpu-perator
type GPUDirectStorageSpec ¶ added in v1.10.0
type GPUDirectStorageSpec struct {
// Enabled indicates if GPUDirect Storage is enabled through GPU operator
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable GPUDirect Storage through GPU operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// NVIDIA GPUDirect Storage Driver image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA GPUDirect Storage Driver image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA GPUDirect Storage Driver image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
GPUDirectStorageSpec defines the properties for NVIDIA GPUDirect Storage Driver deployment(Experimental)
func (*GPUDirectStorageSpec) DeepCopy ¶ added in v1.10.0
func (in *GPUDirectStorageSpec) DeepCopy() *GPUDirectStorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GPUDirectStorageSpec.
func (*GPUDirectStorageSpec) DeepCopyInto ¶ added in v1.10.0
func (in *GPUDirectStorageSpec) DeepCopyInto(out *GPUDirectStorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GPUDirectStorageSpec) IsEnabled ¶ added in v1.10.0
func (gds *GPUDirectStorageSpec) IsEnabled() bool
IsEnabled returns true if GPUDirect Storage are enabled through gpu-perator
type GPUFeatureDiscoverySpec ¶
type GPUFeatureDiscoverySpec struct {
// GFD image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// GFD image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// GFD image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
GPUFeatureDiscoverySpec defines the properties for GPU Feature Discovery Plugin
func (*GPUFeatureDiscoverySpec) DeepCopy ¶
func (in *GPUFeatureDiscoverySpec) DeepCopy() *GPUFeatureDiscoverySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GPUFeatureDiscoverySpec.
func (*GPUFeatureDiscoverySpec) DeepCopyInto ¶
func (in *GPUFeatureDiscoverySpec) DeepCopyInto(out *GPUFeatureDiscoverySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InitContainerSpec ¶
type InitContainerSpec struct {
// Repository represents image repository path
Repository string `json:"repository,omitempty"`
// Image represents image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// Version represents image tag(version)
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
}
InitContainerSpec describes configuration for initContainer image used with all components
func (*InitContainerSpec) DeepCopy ¶
func (in *InitContainerSpec) DeepCopy() *InitContainerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitContainerSpec.
func (*InitContainerSpec) DeepCopyInto ¶
func (in *InitContainerSpec) DeepCopyInto(out *InitContainerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KernelModuleConfigSpec ¶ added in v1.10.0
type KernelModuleConfigSpec struct {
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Name string `json:"name,omitempty"`
}
KernelModuleConfigSpec defines custom configuration parameters for the NVIDIA Driver
func (*KernelModuleConfigSpec) DeepCopy ¶ added in v1.10.0
func (in *KernelModuleConfigSpec) DeepCopy() *KernelModuleConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KernelModuleConfigSpec.
func (*KernelModuleConfigSpec) DeepCopyInto ¶ added in v1.10.0
func (in *KernelModuleConfigSpec) DeepCopyInto(out *KernelModuleConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MIGGPUClientsConfigSpec ¶ added in v1.9.0
type MIGGPUClientsConfigSpec struct {
// ConfigMap name
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Name string `json:"name,omitempty"`
}
MIGGPUClientsConfigSpec defines custom gpu-clients config for NVIDIA MIG Manager container
func (*MIGGPUClientsConfigSpec) DeepCopy ¶ added in v1.9.0
func (in *MIGGPUClientsConfigSpec) DeepCopy() *MIGGPUClientsConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MIGGPUClientsConfigSpec.
func (*MIGGPUClientsConfigSpec) DeepCopyInto ¶ added in v1.9.0
func (in *MIGGPUClientsConfigSpec) DeepCopyInto(out *MIGGPUClientsConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MIGManagerSpec ¶
type MIGManagerSpec struct {
// Enabled indicates if deployment of NVIDIA MIG Manager is enabled
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable NVIDIA MIG Manager deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// NVIDIA MIG Manager image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA MIG Manager image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA MIG Manager image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// Optional: Custom mig-parted configuration for NVIDIA MIG Manager container
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Custom mig-parted configuration for NVIDIA MIG Manager container"
Config *MIGPartedConfigSpec `json:"config,omitempty"`
// Optional: Custom gpu-clients configuration for NVIDIA MIG Manager container
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Custom gpu-clients configuration for NVIDIA MIG Manager container"
GPUClientsConfig *MIGGPUClientsConfigSpec `json:"gpuClientsConfig,omitempty"`
}
MIGManagerSpec defines the properties for deploying NVIDIA MIG Manager
func (*MIGManagerSpec) DeepCopy ¶
func (in *MIGManagerSpec) DeepCopy() *MIGManagerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MIGManagerSpec.
func (*MIGManagerSpec) DeepCopyInto ¶
func (in *MIGManagerSpec) DeepCopyInto(out *MIGManagerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MIGManagerSpec) IsMIGManagerEnabled ¶
func (m *MIGManagerSpec) IsMIGManagerEnabled() bool
IsMIGManagerEnabled returns true if mig-manager is enabled(default) through gpu-operator
type MIGPartedConfigSpec ¶ added in v1.8.2
type MIGPartedConfigSpec struct {
// ConfigMap name
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Name string `json:"name,omitempty"`
}
MIGPartedConfigSpec defines custom mig-parted config for NVIDIA MIG Manager container
func (*MIGPartedConfigSpec) DeepCopy ¶ added in v1.8.2
func (in *MIGPartedConfigSpec) DeepCopy() *MIGPartedConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MIGPartedConfigSpec.
func (*MIGPartedConfigSpec) DeepCopyInto ¶ added in v1.8.2
func (in *MIGPartedConfigSpec) DeepCopyInto(out *MIGPartedConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MIGSpec ¶
type MIGSpec struct {
// Optional: MIGStrategy to apply for GFD and NVIDIA Device Plugin
// +kubebuilder:validation:Enum=none;single;mixed
Strategy MIGStrategy `json:"strategy,omitempty"`
}
MIGSpec defines the configuration for MIG support
func (*MIGSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MIGSpec.
func (*MIGSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MIGStrategy ¶
type MIGStrategy string
MIGStrategy indicates MIG mode
const ( // MIGStrategyNone indicates MIG mode disabled. MIGStrategyNone MIGStrategy = "none" // MIGStrategySingle indicates Single MIG mode MIGStrategySingle MIGStrategy = "single" // MIGStrategyMixed indicates Mixed MIG mode MIGStrategyMixed MIGStrategy = "mixed" )
Constants representing different MIG strategies.
type NodeStatusExporterSpec ¶ added in v1.8.0
type NodeStatusExporterSpec struct {
// Enabled indicates if deployment of Node Status Exporter is enabled.
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable Node Status Exporter deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// Node Status Exporterimage repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// Node Status Exporter image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// Node Status Exporterimage tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
NodeStatusExporterSpec defines the properties for node-status-exporter state
func (*NodeStatusExporterSpec) DeepCopy ¶ added in v1.8.0
func (in *NodeStatusExporterSpec) DeepCopy() *NodeStatusExporterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeStatusExporterSpec.
func (*NodeStatusExporterSpec) DeepCopyInto ¶ added in v1.8.0
func (in *NodeStatusExporterSpec) DeepCopyInto(out *NodeStatusExporterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeStatusExporterSpec) IsNodeStatusExporterEnabled ¶ added in v1.8.0
func (m *NodeStatusExporterSpec) IsNodeStatusExporterEnabled() bool
IsNodeStatusExporterEnabled returns true if node-status-exporter is enabled through gpu-operator
type OperatorSpec ¶
type OperatorSpec struct {
// +kubebuilder:validation:Enum=docker;crio;containerd
// +kubebuilder:default=docker
DefaultRuntime Runtime `json:"defaultRuntime"`
// +kubebuilder:default=nvidia
RuntimeClass string `json:"runtimeClass,omitempty"`
InitContainer InitContainerSpec `json:"initContainer,omitempty"`
// UseOpenShiftDriverToolkit indicates if DriverToolkit image should be used on OpenShift to build and install driver modules
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="On OpenShift, enable DriverToolkit image to build and install driver modules"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
UseOpenShiftDriverToolkit *bool `json:"use_ocp_driver_toolkit,omitempty"`
}
OperatorSpec describes configuration options for the operator
func (*OperatorSpec) DeepCopy ¶
func (in *OperatorSpec) DeepCopy() *OperatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorSpec.
func (*OperatorSpec) DeepCopyInto ¶
func (in *OperatorSpec) DeepCopyInto(out *OperatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PSPSpec ¶
type PSPSpec struct {
// Enabled indicates if PodSecurityPolicies needs to be enabled for all Pods
Enabled *bool `json:"enabled,omitempty"`
}
PSPSpec describes configuration for PodSecurityPolicies to apply for all Pods
func (*PSPSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PSPSpec.
func (*PSPSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PluginValidatorSpec ¶
type PluginValidatorSpec struct {
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
PluginValidatorSpec defines validator spec for NVIDIA Device Plugin
func (*PluginValidatorSpec) DeepCopy ¶
func (in *PluginValidatorSpec) DeepCopy() *PluginValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PluginValidatorSpec.
func (*PluginValidatorSpec) DeepCopyInto ¶
func (in *PluginValidatorSpec) DeepCopyInto(out *PluginValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RollingUpdateSpec ¶ added in v1.11.1
type RollingUpdateSpec struct {
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Maximum number of nodes to simultaneously apply pod updates on. Default 1"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
MaxUnavailable string `json:"maxUnavailable,omitempty"`
}
RollingUpdateSpec defines configuration for the rolling update of NVIDIA Driver DaemonSet pods
func (*RollingUpdateSpec) DeepCopy ¶ added in v1.11.1
func (in *RollingUpdateSpec) DeepCopy() *RollingUpdateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpdateSpec.
func (*RollingUpdateSpec) DeepCopyInto ¶ added in v1.11.1
func (in *RollingUpdateSpec) DeepCopyInto(out *RollingUpdateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuntimeClass ¶ added in v1.8.0
type RuntimeClass string
RuntimeClass defines the runtime class to use for GPU-enabled pods
type SandboxDevicePluginSpec ¶ added in v1.11.0
type SandboxDevicePluginSpec struct {
// Enabled indicates if deployment of NVIDIA Sandbox Device Plugin through operator is enabled
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable NVIDIA Sandbox Device Plugin deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// NVIDIA Sandbox Device Plugin image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA Sandbox Device Plugin image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA Sandbox Device Plugin image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
SandboxDevicePluginSpec defines the properties for the NVIDIA Sandbox Device Plugin deployment
func (*SandboxDevicePluginSpec) DeepCopy ¶ added in v1.11.0
func (in *SandboxDevicePluginSpec) DeepCopy() *SandboxDevicePluginSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxDevicePluginSpec.
func (*SandboxDevicePluginSpec) DeepCopyInto ¶ added in v1.11.0
func (in *SandboxDevicePluginSpec) DeepCopyInto(out *SandboxDevicePluginSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxDevicePluginSpec) IsEnabled ¶ added in v1.11.0
func (s *SandboxDevicePluginSpec) IsEnabled() bool
IsEnabled returns true if the sandbox device plugin is enabled through gpu-operator
type SandboxWorkloadsSpec ¶ added in v1.11.0
type SandboxWorkloadsSpec struct {
// Enabled indicates if the GPU Operator should manage additional operands required
// for sandbox workloads (i.e. VFIO Manager, vGPU Manager, and additional device plugins)
Enabled *bool `json:"enabled,omitempty"`
// DefaultWorkload indicates the default GPU workload type to configure
// worker nodes in the cluster for
// +kubebuilder:validation:Enum=container;vm-passthrough;vm-vgpu
// +kubebuilder:default=container
DefaultWorkload string `json:"defaultWorkload,omitempty"`
}
SandboxWorkloadsSpec describes configuration for handling sandbox workloads (i.e. Virtual Machines)
func (*SandboxWorkloadsSpec) DeepCopy ¶ added in v1.11.0
func (in *SandboxWorkloadsSpec) DeepCopy() *SandboxWorkloadsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxWorkloadsSpec.
func (*SandboxWorkloadsSpec) DeepCopyInto ¶ added in v1.11.0
func (in *SandboxWorkloadsSpec) DeepCopyInto(out *SandboxWorkloadsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SandboxWorkloadsSpec) IsEnabled ¶ added in v1.11.0
func (s *SandboxWorkloadsSpec) IsEnabled() bool
IsEnabled returns true if the cluster intends to run GPU accelerated workloads in sandboxed environments (VMs).
type ToolkitSpec ¶
type ToolkitSpec struct {
// Enabled indicates if deployment of NVIDIA Container Toolkit through operator is enabled
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable NVIDIA Container Toolkit deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// NVIDIA Container Toolkit image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA Container Toolkit image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA Container Toolkit image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
ToolkitSpec defines the properties for NVIDIA Container Toolkit deployment
func (*ToolkitSpec) DeepCopy ¶
func (in *ToolkitSpec) DeepCopy() *ToolkitSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ToolkitSpec.
func (*ToolkitSpec) DeepCopyInto ¶
func (in *ToolkitSpec) DeepCopyInto(out *ToolkitSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ToolkitSpec) IsToolkitEnabled ¶
func (t *ToolkitSpec) IsToolkitEnabled() bool
IsToolkitEnabled returns true if container-toolkit install is enabled(default) through gpu-operator
type ToolkitValidatorSpec ¶
type ToolkitValidatorSpec struct {
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
ToolkitValidatorSpec defines validator spec for NVIDIA Container Toolkit
func (*ToolkitValidatorSpec) DeepCopy ¶
func (in *ToolkitValidatorSpec) DeepCopy() *ToolkitValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ToolkitValidatorSpec.
func (*ToolkitValidatorSpec) DeepCopyInto ¶
func (in *ToolkitValidatorSpec) DeepCopyInto(out *ToolkitValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VFIOManagerSpec ¶ added in v1.11.0
type VFIOManagerSpec struct {
// Enabled indicates if deployment of VFIO Manager is enabled
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable VFIO Manager deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// VFIO Manager image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// VFIO Manager image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// VFIO Manager image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// DriverManager represents configuration for NVIDIA Driver Manager
DriverManager DriverManagerSpec `json:"driverManager,omitempty"`
}
VFIOManagerSpec defines the properties for deploying VFIO-PCI manager
func (*VFIOManagerSpec) DeepCopy ¶ added in v1.11.0
func (in *VFIOManagerSpec) DeepCopy() *VFIOManagerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VFIOManagerSpec.
func (*VFIOManagerSpec) DeepCopyInto ¶ added in v1.11.0
func (in *VFIOManagerSpec) DeepCopyInto(out *VFIOManagerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VFIOManagerSpec) IsEnabled ¶ added in v1.11.0
func (v *VFIOManagerSpec) IsEnabled() bool
IsEnabled returns true if VFIO-PCI Manager install is enabled through gpu-operator
type VFIOPCIValidatorSpec ¶ added in v1.11.0
type VFIOPCIValidatorSpec struct {
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
VFIOPCIValidatorSpec defines validator spec for NVIDIA VFIO-PCI device validation
func (*VFIOPCIValidatorSpec) DeepCopy ¶ added in v1.11.0
func (in *VFIOPCIValidatorSpec) DeepCopy() *VFIOPCIValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VFIOPCIValidatorSpec.
func (*VFIOPCIValidatorSpec) DeepCopyInto ¶ added in v1.11.0
func (in *VFIOPCIValidatorSpec) DeepCopyInto(out *VFIOPCIValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VGPUDeviceManagerSpec ¶ added in v1.11.0
type VGPUDeviceManagerSpec struct {
// Enabled indicates if deployment of NVIDIA vGPU Device Manager is enabled
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable NVIDIA vGPU Device Manager deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// NVIDIA vGPU Device Manager image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA vGPU Device Manager image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA vGPU Device Manager image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// NVIDIA vGPU devices configuration for NVIDIA vGPU Device Manager container
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="NVIDIA vGPU devices configuration for NVIDIA vGPU Device Manager container"
Config *VGPUDevicesConfigSpec `json:"config,omitempty"`
}
VGPUDeviceManagerSpec defines the properties for deploying NVIDIA vGPU Device Manager
func (*VGPUDeviceManagerSpec) DeepCopy ¶ added in v1.11.0
func (in *VGPUDeviceManagerSpec) DeepCopy() *VGPUDeviceManagerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VGPUDeviceManagerSpec.
func (*VGPUDeviceManagerSpec) DeepCopyInto ¶ added in v1.11.0
func (in *VGPUDeviceManagerSpec) DeepCopyInto(out *VGPUDeviceManagerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VGPUDeviceManagerSpec) IsEnabled ¶ added in v1.11.0
func (v *VGPUDeviceManagerSpec) IsEnabled() bool
IsEnabled returns true if vGPU Device Manager is enabled through gpu-operator
type VGPUDevicesConfigSpec ¶ added in v1.11.0
type VGPUDevicesConfigSpec struct {
// ConfigMap name
// +kubebuilder:validation:Optional
// +kubebuilder:default=vgpu-devices-config
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Name string `json:"name,omitempty"`
// Default config name within the ConfigMap
// +kubebuilder:validation:Optional
// +kubebuilder:default=default
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Default config name within the ConfigMap for the NVIDIA vGPU devices config"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Default string `json:"default,omitempty"`
}
VGPUDevicesConfigSpec defines vGPU devices configuration for NVIDIA vGPU Device Manager container
func (*VGPUDevicesConfigSpec) DeepCopy ¶ added in v1.11.0
func (in *VGPUDevicesConfigSpec) DeepCopy() *VGPUDevicesConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VGPUDevicesConfigSpec.
func (*VGPUDevicesConfigSpec) DeepCopyInto ¶ added in v1.11.0
func (in *VGPUDevicesConfigSpec) DeepCopyInto(out *VGPUDevicesConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VGPUDevicesValidatorSpec ¶ added in v1.11.0
type VGPUDevicesValidatorSpec struct {
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
VGPUDevicesValidatorSpec defines validator spec for NVIDIA vGPU device validator
func (*VGPUDevicesValidatorSpec) DeepCopy ¶ added in v1.11.0
func (in *VGPUDevicesValidatorSpec) DeepCopy() *VGPUDevicesValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VGPUDevicesValidatorSpec.
func (*VGPUDevicesValidatorSpec) DeepCopyInto ¶ added in v1.11.0
func (in *VGPUDevicesValidatorSpec) DeepCopyInto(out *VGPUDevicesValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VGPUManagerSpec ¶ added in v1.11.0
type VGPUManagerSpec struct {
// Enabled indicates if deployment of NVIDIA vGPU Manager through operator is enabled
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Enable vgpu host driver deployment through GPU Operator"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
Enabled *bool `json:"enabled,omitempty"`
// NVIDIA vGPU Manager image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// NVIDIA vGPU Manager image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// NVIDIA vGPU Manager image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
// DriverManager represents configuration for NVIDIA Driver Manager initContainer
DriverManager DriverManagerSpec `json:"driverManager,omitempty"`
}
VGPUManagerSpec defines the properties for the NVIDIA vGPU Manager deployment
func (*VGPUManagerSpec) DeepCopy ¶ added in v1.11.0
func (in *VGPUManagerSpec) DeepCopy() *VGPUManagerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VGPUManagerSpec.
func (*VGPUManagerSpec) DeepCopyInto ¶ added in v1.11.0
func (in *VGPUManagerSpec) DeepCopyInto(out *VGPUManagerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VGPUManagerSpec) IsEnabled ¶ added in v1.11.0
func (d *VGPUManagerSpec) IsEnabled() bool
IsEnabled returns true if vGPU Manager install is enabled through gpu-operator
type VGPUManagerValidatorSpec ¶ added in v1.11.0
type VGPUManagerValidatorSpec struct {
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
VGPUManagerValidatorSpec defines validator spec for NVIDIA vGPU Manager
func (*VGPUManagerValidatorSpec) DeepCopy ¶ added in v1.11.0
func (in *VGPUManagerValidatorSpec) DeepCopy() *VGPUManagerValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VGPUManagerValidatorSpec.
func (*VGPUManagerValidatorSpec) DeepCopyInto ¶ added in v1.11.0
func (in *VGPUManagerValidatorSpec) DeepCopyInto(out *VGPUManagerValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValidatorSpec ¶
type ValidatorSpec struct {
// Plugin validator spec
Plugin PluginValidatorSpec `json:"plugin,omitempty"`
// Toolkit validator spec
Toolkit ToolkitValidatorSpec `json:"toolkit,omitempty"`
// Toolkit validator spec
Driver DriverValidatorSpec `json:"driver,omitempty"`
// CUDA validator spec
CUDA CUDAValidatorSpec `json:"cuda,omitempty"`
// VfioPCI validator spec
VFIOPCI VFIOPCIValidatorSpec `json:"vfioPCI,omitempty"`
// VGPUManager validator spec
VGPUManager VGPUManagerValidatorSpec `json:"vgpuManager,omitempty"`
// VGPUDevices validator spec
VGPUDevices VGPUDevicesValidatorSpec `json:"vgpuDevices,omitempty"`
// Validator image repository
// +kubebuilder:validation:Optional
Repository string `json:"repository,omitempty"`
// Validator image name
// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
Image string `json:"image,omitempty"`
// Validator image tag
// +kubebuilder:validation:Optional
Version string `json:"version,omitempty"`
// Image pull policy
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// Image pull secrets
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
// Optional: Define resources requests and limits for each pod
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
// Optional: List of arguments
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Args []string `json:"args,omitempty"`
// Optional: List of environment variables
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
Env []corev1.EnvVar `json:"env,omitempty"`
}
ValidatorSpec describes configuration options for validation pod
func (*ValidatorSpec) DeepCopy ¶
func (in *ValidatorSpec) DeepCopy() *ValidatorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidatorSpec.
func (*ValidatorSpec) DeepCopyInto ¶
func (in *ValidatorSpec) DeepCopyInto(out *ValidatorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualTopologyConfigSpec ¶ added in v1.8.0
type VirtualTopologyConfigSpec struct {
// Optional: Config name representing virtual topology daemon configuration file nvidia-topologyd.conf
// +kubebuilder:validation:Optional
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
Config string `json:"config,omitempty"`
}
VirtualTopologyConfigSpec defines virtual topology daemon configuration with NVIDIA vGPU
func (*VirtualTopologyConfigSpec) DeepCopy ¶ added in v1.8.0
func (in *VirtualTopologyConfigSpec) DeepCopy() *VirtualTopologyConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualTopologyConfigSpec.
func (*VirtualTopologyConfigSpec) DeepCopyInto ¶ added in v1.8.0
func (in *VirtualTopologyConfigSpec) DeepCopyInto(out *VirtualTopologyConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.