v1

package
v1.10.9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 7, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package v1 contains API Schema definitions for the piraeus v1 API group +k8s:deepcopy-gen=package,register +groupName=piraeus.linbit.com

Package v1 contains API Schema definitions for the piraeus v1 API group +k8s:deepcopy-gen=package,register +groupName=piraeus.linbit.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: kubeSpec.APIGroup, Version: "v1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)

Functions

This section is empty.

Types

type LinstorCSIDriver

type LinstorCSIDriver struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   LinstorCSIDriverSpec   `json:"spec,omitempty"`
	Status LinstorCSIDriverStatus `json:"status,omitempty"`
}

LinstorCSIDriver is the Schema for the linstorcsidrivers API +kubebuilder:subresource:status +kubebuilder:resource:path=linstorcsidrivers,scope=Namespaced +kubebuilder:printcolumn:name="NodeReady",type="boolean",JSONPath=".status.NodeReady" +kubebuilder:printcolumn:name="ControllerReady",type="boolean",JSONPath=".status.ControllerReady" +kubebuilder:storageversion

func (*LinstorCSIDriver) DeepCopy

func (in *LinstorCSIDriver) DeepCopy() *LinstorCSIDriver

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorCSIDriver.

func (*LinstorCSIDriver) DeepCopyInto

func (in *LinstorCSIDriver) DeepCopyInto(out *LinstorCSIDriver)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LinstorCSIDriver) DeepCopyObject

func (in *LinstorCSIDriver) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LinstorCSIDriverList

type LinstorCSIDriverList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []LinstorCSIDriver `json:"items"`
}

LinstorCSIDriverList contains a list of LinstorCSIDriver

func (*LinstorCSIDriverList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorCSIDriverList.

func (*LinstorCSIDriverList) DeepCopyInto

func (in *LinstorCSIDriverList) DeepCopyInto(out *LinstorCSIDriverList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LinstorCSIDriverList) DeepCopyObject

func (in *LinstorCSIDriverList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LinstorCSIDriverSpec

type LinstorCSIDriverSpec struct {
	// Name of the CSI external attacher image.
	// See https://kubernetes-csi.github.io/docs/external-attacher.html
	// +optional
	CSIAttacherImage string `json:"csiAttacherImage"`
	// Number of simultaneously running operations for attaching and detaching volumes
	// +optional
	CSIAttacherWorkerThreads int32 `json:"csiAttacherWorkerThreads"`
	// Name of the CSI liveness probe image.
	// See https://kubernetes-csi.github.io/docs/livenessprobe.html
	// +optional
	CSILivenessProbeImage string `json:"csiLivenessProbeImage"`
	// Name of the CSI node driver registrar image.
	// See https://kubernetes-csi.github.io/docs/node-driver-registrar.html
	// +optional
	CSINodeDriverRegistrarImage string `json:"csiNodeDriverRegistrarImage"`
	// Name of the CSI external provisioner image.
	// See https://kubernetes-csi.github.io/docs/external-provisioner.html
	// +optional
	CSIProvisionerImage string `json:"csiProvisionerImage"`
	// Number of simultaneously running operations for creating and deleting volumes
	// +optional
	CSIProvisionerWorkerThreads int32 `json:"csiProvisionerWorkerThreads"`
	// Name of the CSI external snapshotter image.
	// See https://kubernetes-csi.github.io/docs/external-snapshotter.html
	// +optional
	CSISnapshotterImage string `json:"csiSnapshotterImage"`
	// Number of simultaneously running operations for creating and deleting snapshots
	// +optional
	CSISnapshotterWorkerThreads int32 `json:"csiSnapshotterWorkerThreads"`
	// Name of the CSI external resizer image.
	// See https://kubernetes-csi.github.io/docs/external-resizer.html
	// +optional
	CSIResizerImage string `json:"csiResizerImage"`
	// Number of simultaneously running operations for resizing volumes
	// +optional
	CSIResizerWorkerThreads int32 `json:"csiResizerWorkerThreads"`

	// Name of a secret with authentication details for the `LinstorPluginImage` registry
	ImagePullSecret string `json:"imagePullSecret"`

	// Pull policy applied to all pods started from this controller
	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy"`

	// Image that contains the linstor-csi driver plugin
	LinstorPluginImage string `json:"linstorPluginImage"`

	// Name of the service account used by the CSI node pods
	// +optional
	CSINodeServiceAccountName string `json:"csiNodeServiceAccountName"`

	// Name of the service account used by the CSI controller pods
	// +optional
	CSIControllerServiceAccountName string `json:"csiControllerServiceAccountName"`

	// priorityClassName is the name of the PriorityClass for the csi driver pods
	// +optional
	PriorityClassName shared.PriorityClassName `json:"priorityClassName"`

	// controllerReplicas is the number of replicas created for the CSI controller
	// deployment.
	// +optional
	ControllerReplicas *int32 `json:"controllerReplicas"`

	// controllerStrategy describes how to replace existing pods with new ones.
	// +optional
	// +nullable
	ControllerStrategy appsv1.DeploymentStrategy `json:"controllerStrategy,omitempty"`

	// Cluster URL of the linstor controller.
	// If not set, will be determined from the current resource name.
	// +optional
	ControllerEndpoint string `json:"controllerEndpoint"`

	// Resource requirements for the csi pods.
	// The requirements are re-used for all pods (node/controller).
	// +optional
	// +nullable
	Resources corev1.ResourceRequirements `json:"resources"`

	// Affinity for scheduling the CSI node pods
	// +optional
	// +nullable
	NodeAffinity *corev1.Affinity `json:"nodeAffinity"`

	// Tolerations for scheduling CSI node pods
	// +optional
	// +nullable
	NodeTolerations []corev1.Toleration `json:"nodeTolerations"`

	// Affinity for scheduling the CSI controller pod
	// +optional
	// +nullable
	ControllerAffinity *corev1.Affinity `json:"controllerAffinity"`

	// Tolerations for schedluing CSI controller pods
	// +optional
	// +nullable
	ControllerTolerations []corev1.Toleration `json:"controllerTolerations"`

	// Enable CSI topology feature to control volume accessibility on cluster nodes
	// +optional
	EnableTopology bool `json:"enableTopology"`

	// KubeletPath is the common parent path of mount targets and plugin registration directories of Kubelet. Typically
	// this should be set to /var/lib/kubelet, but some distributions require a different path.
	// +optional
	KubeletPath string `json:"kubeletPath"`

	// LogLevel sets the log level for deployed components.
	// +nullable
	// +optional
	// +kubebuilder:validation:Enum=error;warn;info;debug;trace
	LogLevel shared.LogLevel `json:"logLevel,omitempty"`

	// ControllerSidecars are additional containers which can be added to the controller pods.
	// +optional
	// +nullable
	ControllerSidecars []corev1.Container `json:"sidecars"`

	// ControllerExtraVolumes are additional volumes which can be added to the controller pods.
	// +optional
	// +nullable
	ControllerExtraVolumes []corev1.Volume `json:"extraVolumes"`

	// NodeSidecars are additional containers which can be added to the node pods.
	// +optional
	// +nullable
	NodeSidecars []corev1.Container `json:"nodeSidecars"`

	// NodeExtraVolumes are additional volumes which can be added to the node pods.
	// +optional
	// +nullable
	NodeExtraVolumes []corev1.Volume `json:"nodeExtraVolumes"`

	shared.LinstorClientConfig `json:",inline"`
}

LinstorCSIDriverSpec defines the desired state of LinstorCSIDriver

func (*LinstorCSIDriverSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorCSIDriverSpec.

func (*LinstorCSIDriverSpec) DeepCopyInto

func (in *LinstorCSIDriverSpec) DeepCopyInto(out *LinstorCSIDriverSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LinstorCSIDriverStatus

type LinstorCSIDriverStatus struct {
	// CSI node components ready status
	NodeReady bool `json:"NodeReady"`

	// CSI controller ready status
	ControllerReady bool `json:"ControllerReady"`

	// Errors remaining that will trigger reconciliations.
	Errors []string `json:"errors"`
}

LinstorCSIDriverStatus defines the observed state of LinstorCSIDriver

func (*LinstorCSIDriverStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorCSIDriverStatus.

func (*LinstorCSIDriverStatus) DeepCopyInto

func (in *LinstorCSIDriverStatus) DeepCopyInto(out *LinstorCSIDriverStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LinstorController

type LinstorController struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   LinstorControllerSpec   `json:"spec,omitempty"`
	Status LinstorControllerStatus `json:"status,omitempty"`
}

LinstorController is the Schema for the linstorcontrollers API +kubebuilder:subresource:status +kubebuilder:resource:path=linstorcontrollers,scope=Namespaced +kubebuilder:storageversion

func (*LinstorController) DeepCopy

func (in *LinstorController) DeepCopy() *LinstorController

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorController.

func (*LinstorController) DeepCopyInto

func (in *LinstorController) DeepCopyInto(out *LinstorController)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LinstorController) DeepCopyObject

func (in *LinstorController) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LinstorControllerList

type LinstorControllerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []LinstorController `json:"items"`
}

LinstorControllerList contains a list of LinstorController

func (*LinstorControllerList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorControllerList.

func (*LinstorControllerList) DeepCopyInto

func (in *LinstorControllerList) DeepCopyInto(out *LinstorControllerList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LinstorControllerList) DeepCopyObject

func (in *LinstorControllerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LinstorControllerSpec

type LinstorControllerSpec struct {
	// priorityClassName is the name of the PriorityClass for the controller pods
	PriorityClassName shared.PriorityClassName `json:"priorityClassName"`

	// DBConnectionURL is the URL of the ETCD endpoint for LINSTOR Controller
	DBConnectionURL string `json:"dbConnectionURL"`

	// DBCertSecret is the name of the kubernetes secret that holds the CA certificate used to verify
	// the datatbase connection. The secret must contain a key "ca.crt" which holds the certificate in
	// PEM format
	// +nullable
	// +optional
	DBCertSecret string `json:"dbCertSecret"`

	// Use a TLS client certificate for authentication with the database (etcd). If set to true,
	// `dbCertSecret` must be set and contain two additional entries "tls.crt" (PEM encoded)
	// and "tls.key" (PEM encoded, without passphrase).
	// +optional
	DBUseClientCert bool `json:"dbUseClientCert"`

	// Name of the secret containing the master passphrase for LUKS devices as `MASTER_PASSPHRASE`
	// +nullable
	// +optional
	LuksSecret string `json:"luksSecret"`

	// Name of k8s secret that holds the SSL key for a node (called `keystore.jks`) and the
	// trusted certificates (called `certificates.jks`)
	// +nullable
	// +optional
	SslConfig *shared.LinstorSSLConfig `json:"sslSecret"`

	// DrbdRepoCred is the name of the kubernetes secret that holds the credential for the
	// DRBD repositories
	DrbdRepoCred string `json:"drbdRepoCred"`

	// controllerImage is the image (location + tag) for the LINSTOR controller/server container
	ControllerImage string `json:"controllerImage"`

	// Pull policy applied to all pods started from this controller
	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy"`

	// Name of the secret containing the java keystore (`keystore.jks`) used to enable HTTPS on the
	// controller. The controller will create a secured https endpoint on port 3371 with the key
	// stored in `keystore.jks`. The keystore must be secured using the passphrase "linstor". Also
	// needs to contain a truststore `truststore.jks`, which will be used to authenticate clients.
	// +optional
	LinstorHttpsControllerSecret string `json:"linstorHttpsControllerSecret"`

	// Resource requirements for the LINSTOR controller pod
	// +optional
	// +nullable
	Resources corev1.ResourceRequirements `json:"resources"`

	// Affinity for scheduling the controller pod
	// +optional
	// +nullable
	Affinity *corev1.Affinity `json:"affinity"`

	// Tolerations for scheduling the controller pod
	// +optional
	// +nullable
	Tolerations []corev1.Toleration `json:"tolerations"`

	// Number of replicas in the controller deployment
	// +optional
	// +nullable
	Replicas *int32 `json:"replicas"`

	// AdditionalEnv is a list of extra environments variables to pass to the controller container
	// +optional
	// +nullable
	AdditionalEnv []corev1.EnvVar `json:"additionalEnv"`

	// AdditionalProperties is a map of additional properties to set on the Linstor controller
	// +optional
	// +nullable
	AdditionalProperties map[string]string `json:"additionalProperties"`

	// Name of the service account that runs leader elections for linstor
	// +optional
	ServiceAccountName string `json:"serviceAccountName"`

	// LogLevel sets the log level for deployed components.
	// +nullable
	// +optional
	// +kubebuilder:validation:Enum=error;warn;info;debug;trace
	LogLevel shared.LogLevel `json:"logLevel,omitempty"`

	// HttpBindAddress is address used to bind HTTP listener
	// +optional
	// +nullable
	HttpBindAddress string `json:"httpBindAddress"`

	// HttpsBindAddress is address used to bind HTTPS listener
	// +optional
	// +nullable
	HttpsBindAddress string `json:"httpsBindAddress"`

	// Sidecars are additional containers which can be added to the pods.
	// +optional
	// +nullable
	Sidecars []corev1.Container `json:"sidecars"`

	// ExtraVolumes are additional volumes which can be added to the pods.
	// +optional
	// +nullable
	ExtraVolumes []corev1.Volume `json:"extraVolumes"`

	shared.LinstorClientConfig `json:",inline"`
}

LinstorControllerSpec defines the desired state of LinstorController

func (*LinstorControllerSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorControllerSpec.

func (*LinstorControllerSpec) DeepCopyInto

func (in *LinstorControllerSpec) DeepCopyInto(out *LinstorControllerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LinstorControllerStatus

type LinstorControllerStatus struct {
	// Errors remaining that will trigger reconciliations.
	Errors []string `json:"errors"`
	// ControllerStatus information.
	ControllerStatus *shared.NodeStatus `json:"ControllerStatus"`
	// SatelliteStatuses by hostname.
	SatelliteStatuses []*shared.SatelliteStatus `json:"SatelliteStatuses"`
	// properties set on the Linstor controller
	// +optional
	ControllerProperties map[string]string `json:"ControllerProperties"`
}

LinstorControllerStatus defines the observed state of LinstorController

func (*LinstorControllerStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorControllerStatus.

func (*LinstorControllerStatus) DeepCopyInto

func (in *LinstorControllerStatus) DeepCopyInto(out *LinstorControllerStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LinstorSatelliteSet

type LinstorSatelliteSet struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   LinstorSatelliteSetSpec   `json:"spec,omitempty"`
	Status LinstorSatelliteSetStatus `json:"status,omitempty"`
}

LinstorSatelliteSet is the Schema for the linstorsatellitesets API +kubebuilder:subresource:status +kubebuilder:resource:path=linstorsatellitesets,scope=Namespaced +kubebuilder:storageversion

func (*LinstorSatelliteSet) DeepCopy

func (in *LinstorSatelliteSet) DeepCopy() *LinstorSatelliteSet

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorSatelliteSet.

func (*LinstorSatelliteSet) DeepCopyInto

func (in *LinstorSatelliteSet) DeepCopyInto(out *LinstorSatelliteSet)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LinstorSatelliteSet) DeepCopyObject

func (in *LinstorSatelliteSet) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LinstorSatelliteSetList

type LinstorSatelliteSetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []LinstorSatelliteSet `json:"items"`
}

LinstorSatelliteSetList contains a list of LinstorSatelliteSet.

func (*LinstorSatelliteSetList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorSatelliteSetList.

func (*LinstorSatelliteSetList) DeepCopyInto

func (in *LinstorSatelliteSetList) DeepCopyInto(out *LinstorSatelliteSetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*LinstorSatelliteSetList) DeepCopyObject

func (in *LinstorSatelliteSetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type LinstorSatelliteSetSpec

type LinstorSatelliteSetSpec struct {
	// priorityClassName is the name of the PriorityClass for the node pods
	PriorityClassName shared.PriorityClassName `json:"priorityClassName"`

	// StoragePools is a list of StoragePools for LinstorSatelliteSet to manage.
	// +optional
	// +nullable
	StoragePools *shared.StoragePools `json:"storagePools"`

	// If set, the operator will automatically create storage pools of the specified type for all devices that can
	// be found. The name of the storage pools matches the device name. For example, all devices `/dev/sdc` will be
	// part of the `autopool-sdc` storage pool.
	// Note: Using this attribute is discouraged. Using the "storagePools" to set up devices allows for more control on
	// device creation.
	// +optional
	// +kubebuilder:validation:Enum=None;LVM;LVMTHIN;ZFS
	AutomaticStorageType string `json:"automaticStorageType"`

	// Name of k8s secret that holds the SSL key for a node (called `keystore.jks`) and
	// the trusted certificates (called `certificates.jks`)
	// +optional
	// +nullable
	SslConfig *shared.LinstorSSLConfig `json:"sslSecret"`

	// drbdRepoCred is the name of the kubernetes secret that holds the credential for the DRBD repositories
	DrbdRepoCred string `json:"drbdRepoCred"`

	// Pull policy applied to all pods started from this controller
	// +optional
	ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy"`

	// satelliteImage is the image (location + tag) for the LINSTOR satellite container
	SatelliteImage string `json:"satelliteImage"`

	// Cluster URL of the linstor controller.
	// If not set, will be determined from the current resource name.
	// +optional
	ControllerEndpoint string `json:"controllerEndpoint"`

	// Resource requirements for the LINSTOR satellite container
	// +optional
	// +nullable
	Resources corev1.ResourceRequirements `json:"resources"`

	// kernelModuleInjectionImage is the image (location + tag) for the LINSTOR/DRBD kernel module injector
	// +optional
	KernelModuleInjectionImage string `json:"kernelModuleInjectionImage"`

	// kernelModuleInjectionMode selects the source for the DRBD kernel module
	// +kubebuilder:validation:Enum=None;Compile;ShippedModules;DepsOnly
	// +optional
	KernelModuleInjectionMode shared.KernelModuleInjectionMode `json:"kernelModuleInjectionMode"`

	// kernelModuleInjectionAdditionalSourceDirectory is the directory containing the kernel sources and config on the
	// host. It will be mounted read-only when the injection mode is Compile. If unset, defaults to /usr/src. To
	// disable the mount, specify "none".
	// +optional
	// +nullable
	KernelModuleInjectionAdditionalSourceDirectory string `json:"kernelModuleInjectionAdditionalSourceDirectory,omitempty"`

	// KernelModuleInjectionExtraVolumeMounts are additional volumes mounts for the kernel module builder/injector container.
	// +optional
	// +nullable
	KernelModuleInjectionExtraVolumeMounts []corev1.VolumeMount `json:"kernelModuleInjectionExtraVolumeMounts"`

	// Resource requirements for the kernel module builder/injector container
	// +optional
	// +nullable
	KernelModuleInjectionResources corev1.ResourceRequirements `json:"kernelModuleInjectionResources"`

	// Affinity for scheduling the satellite pods
	// +optional
	// +nullable
	Affinity *corev1.Affinity `json:"affinity"`

	// Tolerations for scheduling the satellite pods
	// +optional
	// +nullable
	Tolerations []corev1.Toleration `json:"tolerations"`

	// Name of the service account to be used for the created pods
	// +optional
	ServiceAccountName string `json:"serviceAccountName"`

	// AdditionalEnv is a list of extra environments variables to pass to the satellite container
	// +optional
	// +nullable
	AdditionalEnv []corev1.EnvVar `json:"additionalEnv"`

	// MonitoringImage is the image used to export monitoring information from DRBD and Linstor.
	// +optional
	// +nullable
	MonitoringImage string `json:"monitoringImage"`

	// MonitoringBindAddress is the address used to bind monitoring information exporter.
	// +optional
	// +nullable
	MonitoringBindAddress string `json:"monitoringBindAddress"`

	// LogLevel sets the log level for deployed components.
	// +nullable
	// +optional
	// +kubebuilder:validation:Enum=error;warn;info;debug;trace
	LogLevel shared.LogLevel `json:"logLevel,omitempty"`

	shared.LinstorClientConfig `json:",inline"`

	// Sidecars are additional containers which can be added to the pods.
	// +optional
	// +nullable
	Sidecars []corev1.Container `json:"sidecars"`

	// ExtraVolumes are additional volumes which can be added to the pods.
	// +optional
	// +nullable
	ExtraVolumes []corev1.Volume `json:"extraVolumes"`

	// MountDrbdResourceDirectoriesFromHost sets up the hostpath volume mounts in the satellite set for DRBD resource directories.
	// +optional
	// +nullable
	MountDrbdResourceDirectoriesFromHost bool `json:"mountDrbdResourceDirectoriesFromHost"`

	// DNSPolicy sets the DNS policy for the pod.
	// +optional
	// +nullable
	// +kubebuilder:validation:Enum=ClusterFirstWithHostNet;ClusterFirst;Default;None
	DNSPolicy *corev1.DNSPolicy `json:"dnsPolicy,omitempty"`
}

LinstorSatelliteSetSpec defines the desired state of a LinstorSatelliteSet.

func (*LinstorSatelliteSetSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorSatelliteSetSpec.

func (*LinstorSatelliteSetSpec) DeepCopyInto

func (in *LinstorSatelliteSetSpec) DeepCopyInto(out *LinstorSatelliteSetSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LinstorSatelliteSetStatus

type LinstorSatelliteSetStatus struct {
	// Errors remaining that will trigger reconciliations.
	Errors []string `json:"errors"`
	// SatelliteStatuses by hostname.
	SatelliteStatuses []*shared.SatelliteStatus `json:"SatelliteStatuses"`
}

LinstorSatelliteSetStatus defines the observed state of LinstorSatelliteSet

func (*LinstorSatelliteSetStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinstorSatelliteSetStatus.

func (*LinstorSatelliteSetStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL