The functionality of the module might change, but the main features will remain. Compatibility with future versions is guaranteed, but might require additional migration steps.
The module is only guaranteed to work if requirements are met. As for any other configurations, the module may work, but its smooth operation is not guaranteed.
ReplicatedStorageMetadataBackup
Scope: Cluster
Version: v1alpha1
-
specStores Linstor’s control-plane database backup.
-
spec.dataPart of the Linstor’s control-plane database backup
-
ReplicatedStorageClass
Scope: Cluster
Version: v1alpha1
-
spec
Defines a Kubernetes Storage class configuration.
Note that this field is in read-only mode.
-
spec.reclaimPolicy
Required value
The storage class’s reclaim policy. Might be:
- Delete (If the Persistent Volume Claim is deleted, deletes the Persistent Volume and its associated storage as well)
- Retain (If the Persistent Volume Claim is deleted, remains the Persistent Volume and its associated storage)
Allowed values:
Delete
,Retain
-
spec.replication
The Storage class’s replication mode. Might be:
- None (in this mode the Storage class’s ‘placementCount’ and ‘AutoEvictMinReplicaCount’ params equal ‘1’)
- Availability (in this mode the Storage class’s ‘placementCount’ and ‘AutoEvictMinReplicaCount’ params equal ‘2’)
- ConsistencyAndAvailability (in this mode the Storage class’s ‘placementCount’ and ‘AutoEvictMinReplicaCount’ params equal ‘3’)
Note that default Replication mode is ‘ConsistencyAndAvailability’.
Default:
ConsistencyAndAvailability
Allowed values:
None
,Availability
,ConsistencyAndAvailability
-
spec.storagePool
Required value
Selected ReplicatedStoragePool resource’s name. -
spec.topology
Required value
The topology settings for the volumes in the created Storage class. Might be:
- TransZonal - replicas of the volumes will be created in different zones (one replica per zone).
To use this topology, the available zones must be specified in the ‘zones’ param, and the cluster nodes must have the topology.kubernetes.io/zone=
label. - Zonal - all replicas of the volumes are created in the same zone that the scheduler selected to place the pod using this volume.
- Ignored - the topology information will not be used to place replicas of the volumes. The replicas can be placed on any available nodes, with the restriction: no more than one replica of a given volume on one node.
Note that the ‘Ignored’ value can be used only if there are no zones in the cluster (there are no nodes with the topology.kubernetes.io/zone label).
Allowed values:
TransZonal
,Zonal
,Ignored
- TransZonal - replicas of the volumes will be created in different zones (one replica per zone).
To use this topology, the available zones must be specified in the ‘zones’ param, and the cluster nodes must have the topology.kubernetes.io/zone=
-
spec.volumeAccess
The Storage class’s access mode. Might be:
- Local (in this mode the Storage class’s ‘allowRemoteVolumeAccess’ param equals ‘false’ and Volume Binding mode equals ‘WaitForFirstConsumer’)
- EventuallyLocal (in this mode the Storage class’s ‘allowRemoteVolumeAccess’ param equals ‘- fromSame:\n - topology.kubernetes.io/zone’, ‘auto-diskful’ param equals ‘30’ minutes, ‘auto-diskful-allow-cleanup’ param equals ’true’, and Volume Binding mode equals ‘WaitForFirstConsumer’)
- PreferablyLocal (in this mode the Storage class’s ‘allowRemoteVolumeAccess’ param equals ‘- fromSame:\n - topology.kubernetes.io/zone’, and Volume Binding mode equals ‘WaitForFirstConsumer’)
- Any (in this mode the Storage class’s ‘allowRemoteVolumeAccess’ param equals ‘- fromSame:\n - topology.kubernetes.io/zone’, and Volume Binding mode equals ‘Immediate’)
Note that the default Volume Access mode is ‘PreferablyLocal’.
Default:
PreferablyLocal
Allowed values:
Local
,EventuallyLocal
,PreferablyLocal
,Any
-
spec.zones
Array of zones the Storage class’s volumes should be replicated in. The controller will put a label with the Storage class’s name on the nodes which be actual used by the Storage class.
Note that for Replication mode ‘Availability’ and ‘ConsistencyAndAvailability’ you have to select exactly 1 or 3 zones.
-
ReplicatedStoragePool
Scope: Cluster
Version: v1alpha1
-
specDefines desired rules for Linstor’s Storage-pools.
-
spec.lvmVolumeGroups
Required value
An array of names of LVMVolumeGroup resources, whose Volume Groups/Thin-pools will be used to allocate the required space.
Note that every LVMVolumeGroup resource has to have the same type Thin/Thick as it is in current resource’s ‘Spec.Type’ field.
-
spec.lvmVolumeGroups.nameSelected LVMVolumeGroup resource’s name.
Minimal length:
1
Pattern:
^[a-z0-9]([a-z0-9-.]{0,251}[a-z0-9])?$
-
spec.lvmVolumeGroups.thinPoolNameSelected Thin-pool name.
-
-
spec.type
Required value
Defines the volumes type. Might be:
- LVM (for Thick)
- LVMThin (for Thin)
Allowed values:
LVM
,LVMThin
-