blob: 5b2b66121f485f4b9c1f3fca1c2a40e4488b0478 [file] [log] [blame]
Giorgi Lekveishvili725bb392023-05-05 18:24:27 +04001categories:
giodbf4a852025-06-30 17:09:46 +04002 - storage
Giorgi Lekveishvili725bb392023-05-05 18:24:27 +04003namespace: longhorn-system
4questions:
giodbf4a852025-06-30 17:09:46 +04005 - variable: image.defaultImage
6 default: 'true'
7 description: Use default Longhorn images
8 label: Use Default Images
Giorgi Lekveishvili725bb392023-05-05 18:24:27 +04009 type: boolean
giodbf4a852025-06-30 17:09:46 +040010 show_subquestion_if: false
11 group: Longhorn Images
12 subquestions:
13 - variable: image.longhorn.manager.repository
14 default: longhornio/longhorn-manager
15 description: Repository for the Longhorn Manager image.
16 type: string
17 label: Longhorn Manager Image Repository
18 group: Longhorn Images Settings
19 - variable: image.longhorn.manager.tag
gio3e1b96b2026-07-21 18:52:35 +040020 default: v1.12.0
giodbf4a852025-06-30 17:09:46 +040021 description: Tag for the Longhorn Manager image.
22 type: string
23 label: Longhorn Manager Image Tag
24 group: Longhorn Images Settings
25 - variable: image.longhorn.engine.repository
26 default: longhornio/longhorn-engine
27 description: Repository for the Longhorn Engine image.
28 type: string
29 label: Longhorn Engine Image Repository
30 group: Longhorn Images Settings
31 - variable: image.longhorn.engine.tag
gio3e1b96b2026-07-21 18:52:35 +040032 default: v1.12.0
giodbf4a852025-06-30 17:09:46 +040033 description: Tag for the Longhorn Engine image.
34 type: string
35 label: Longhorn Engine Image Tag
36 group: Longhorn Images Settings
37 - variable: image.longhorn.ui.repository
38 default: longhornio/longhorn-ui
39 description: Repository for the Longhorn UI image.
40 type: string
41 label: Longhorn UI Image Repository
42 group: Longhorn Images Settings
43 - variable: image.longhorn.ui.tag
gio3e1b96b2026-07-21 18:52:35 +040044 default: v1.12.0
giodbf4a852025-06-30 17:09:46 +040045 description: Tag for the Longhorn UI image.
46 type: string
47 label: Longhorn UI Image Tag
48 group: Longhorn Images Settings
49 - variable: image.longhorn.instanceManager.repository
50 default: longhornio/longhorn-instance-manager
51 description: Repository for the Longhorn Instance Manager image.
52 type: string
53 label: Longhorn Instance Manager Image Repository
54 group: Longhorn Images Settings
55 - variable: image.longhorn.instanceManager.tag
gio3e1b96b2026-07-21 18:52:35 +040056 default: v1.12.0
giodbf4a852025-06-30 17:09:46 +040057 description: Tag for the Longhorn Instance Manager image.
58 type: string
59 label: Longhorn Instance Manager Image Tag
60 group: Longhorn Images Settings
61 - variable: image.longhorn.shareManager.repository
62 default: longhornio/longhorn-share-manager
63 description: Repository for the Longhorn Share Manager image.
64 type: string
65 label: Longhorn Share Manager Image Repository
66 group: Longhorn Images Settings
67 - variable: image.longhorn.shareManager.tag
gio3e1b96b2026-07-21 18:52:35 +040068 default: v1.12.0
giodbf4a852025-06-30 17:09:46 +040069 description: Tag for the Longhorn Share Manager image.
70 type: string
71 label: Longhorn Share Manager Image Tag
72 group: Longhorn Images Settings
73 - variable: image.longhorn.backingImageManager.repository
74 default: longhornio/backing-image-manager
75 description: >-
76 Repository for the Backing Image Manager image. When unspecified, Longhorn uses the default value.
77 type: string
78 label: Longhorn Backing Image Manager Image Repository
79 group: Longhorn Images Settings
80 - variable: image.longhorn.backingImageManager.tag
gio3e1b96b2026-07-21 18:52:35 +040081 default: v1.12.0
giodbf4a852025-06-30 17:09:46 +040082 description: >-
83 Tag for the Backing Image Manager image. When unspecified, Longhorn uses the default value.
84 type: string
85 label: Longhorn Backing Image Manager Image Tag
86 group: Longhorn Images Settings
87 - variable: image.longhorn.supportBundleKit.repository
88 default: longhornio/support-bundle-kit
89 description: Repository for the Longhorn Support Bundle Manager image.
90 type: string
91 label: Longhorn Support Bundle Kit Image Repository
92 group: Longhorn Images Settings
93 - variable: image.longhorn.supportBundleKit.tag
gio3e1b96b2026-07-21 18:52:35 +040094 default: v0.0.86
giodbf4a852025-06-30 17:09:46 +040095 description: Tag for the Longhorn Support Bundle Manager image.
96 type: string
97 label: Longhorn Support Bundle Kit Image Tag
98 group: Longhorn Images Settings
99 - variable: image.csi.attacher.repository
100 default: longhornio/csi-attacher
101 description: >-
102 Repository for the CSI attacher image. When unspecified, Longhorn uses the default value.
103 type: string
104 label: Longhorn CSI Attacher Image Repository
105 group: Longhorn CSI Driver Images
106 - variable: image.csi.attacher.tag
gio3e1b96b2026-07-21 18:52:35 +0400107 default: v4.12.0
giodbf4a852025-06-30 17:09:46 +0400108 description: >-
109 Tag for the CSI attacher image. When unspecified, Longhorn uses the default value.
110 type: string
111 label: Longhorn CSI Attacher Image Tag
112 group: Longhorn CSI Driver Images
113 - variable: image.csi.provisioner.repository
114 default: longhornio/csi-provisioner
115 description: >-
116 Repository for the CSI Provisioner image. When unspecified, Longhorn uses the default value.
117 type: string
118 label: Longhorn CSI Provisioner Image Repository
119 group: Longhorn CSI Driver Images
120 - variable: image.csi.provisioner.tag
gio3e1b96b2026-07-21 18:52:35 +0400121 default: v5.3.0-20260514
giodbf4a852025-06-30 17:09:46 +0400122 description: >-
123 Tag for the CSI Provisioner image. When unspecified, Longhorn uses the default value.
124 type: string
125 label: Longhorn CSI Provisioner Image Tag
126 group: Longhorn CSI Driver Images
127 - variable: image.csi.nodeDriverRegistrar.repository
128 default: longhornio/csi-node-driver-registrar
129 description: >-
130 Repository for the CSI Node Driver Registrar image. When unspecified, Longhorn uses the default value.
131 type: string
132 label: Longhorn CSI Node Driver Registrar Image Repository
133 group: Longhorn CSI Driver Images
134 - variable: image.csi.nodeDriverRegistrar.tag
gio3e1b96b2026-07-21 18:52:35 +0400135 default: v2.17.0
giodbf4a852025-06-30 17:09:46 +0400136 description: >-
137 Tag for the CSI Node Driver Registrar image. When unspecified, Longhorn uses the default value.
138 type: string
139 label: Longhorn CSI Node Driver Registrar Image Tag
140 group: Longhorn CSI Driver Images
141 - variable: image.csi.resizer.repository
142 default: longhornio/csi-resizer
143 description: >-
144 Repository for the CSI Resizer image. When unspecified, Longhorn uses the default value.
145 type: string
146 label: Longhorn CSI Driver Resizer Image Repository
147 group: Longhorn CSI Driver Images
148 - variable: image.csi.resizer.tag
gio3e1b96b2026-07-21 18:52:35 +0400149 default: v2.1.0-20260514
giodbf4a852025-06-30 17:09:46 +0400150 description: >-
151 Tag for the CSI Resizer image. When unspecified, Longhorn uses the default value.
152 type: string
153 label: Longhorn CSI Driver Resizer Image Tag
154 group: Longhorn CSI Driver Images
155 - variable: image.csi.snapshotter.repository
156 default: longhornio/csi-snapshotter
157 description: >-
158 Repository for the CSI Snapshotter image. When unspecified, Longhorn uses the default value.
159 type: string
160 label: Longhorn CSI Driver Snapshotter Image Repository
161 group: Longhorn CSI Driver Images
162 - variable: image.csi.snapshotter.tag
gio3e1b96b2026-07-21 18:52:35 +0400163 default: v8.5.0-20260514
giodbf4a852025-06-30 17:09:46 +0400164 description: >-
165 Tag for the CSI Snapshotter image. When unspecified, Longhorn uses the default value.
166 type: string
167 label: Longhorn CSI Driver Snapshotter Image Tag
168 group: Longhorn CSI Driver Images
169 - variable: image.csi.livenessProbe.repository
170 default: longhornio/livenessprobe
171 description: >-
172 Repository for the CSI liveness probe image. When unspecified, Longhorn uses the default value.
173 type: string
174 label: Longhorn CSI Liveness Probe Image Repository
175 group: Longhorn CSI Driver Images
176 - variable: image.csi.livenessProbe.tag
gio3e1b96b2026-07-21 18:52:35 +0400177 default: v2.19.0
giodbf4a852025-06-30 17:09:46 +0400178 description: >-
179 Tag for the CSI liveness probe image. When unspecified, Longhorn uses the default value.
180 type: string
181 label: Longhorn CSI Liveness Probe Image Tag
182 group: Longhorn CSI Driver Images
183 - variable: privateRegistry.registryUrl
184 label: Private registry URL
gio2539d9e2025-05-22 12:19:30 +0400185 description: >-
giodbf4a852025-06-30 17:09:46 +0400186 URL of a private registry. When unspecified, Longhorn uses the default system registry.
187 group: Private Registry Settings
188 type: string
189 default: ''
190 subquestions: []
191 - variable: privateRegistry.registrySecret
192 label: Private registry secret name
193 description: >-
gio3e1b96b2026-07-21 18:52:35 +0400194 If create a new private registry secret is true, create a Kubernetes secret with this name; else use the existing secret of this name. Use it to pull images from your private registry.
giodbf4a852025-06-30 17:09:46 +0400195 group: Private Registry Settings
196 type: string
197 default: ''
198 subquestions: []
199 - variable: privateRegistry.createSecret
200 default: 'true'
gio3e1b96b2026-07-21 18:52:35 +0400201 description: Set to true to automatically create a new private registry secret.
giodbf4a852025-06-30 17:09:46 +0400202 type: boolean
203 group: Private Registry Settings
204 label: Create Secret for Private Registry Settings
205 show_subquestion_if: true
206 subquestions:
207 - variable: privateRegistry.registryUser
208 label: Private registry user
209 description: User account used for authenticating with a private registry.
210 type: string
211 default: ''
212 - variable: privateRegistry.registryPasswd
213 label: Private registry password
214 description: Password for authenticating with a private registry.
215 type: password
216 default: ''
217 - variable: longhorn.default_setting
218 default: 'false'
219 description: >-
220 Customize the default settings before installing Longhorn for the first time. This option will only work if the cluster hasn't installed Longhorn.
221 label: Customize Default Settings
222 type: boolean
223 show_subquestion_if: true
gio2539d9e2025-05-22 12:19:30 +0400224 group: Longhorn Default Settings
giodbf4a852025-06-30 17:09:46 +0400225 subquestions:
226 - variable: csi.kubeletRootDir
227 default: null
228 description: >-
229 kubelet root directory. When unspecified, Longhorn uses the default value.
230 type: string
231 label: Kubelet Root Directory
232 group: Longhorn CSI Driver Settings
gio3e1b96b2026-07-21 18:52:35 +0400233 - variable: csi.podAntiAffinityPreset
234 type: string
235 label: Longhorn CSI Pod AntiAffinity Preset
236 group: Longhorn CSI Driver Settings
237 default: soft
238 description: >-
239 Configures Pod anti-affinity to prevent multiple instances on the same node. Use soft (tries to separate) or hard (must separate). When unspecified, Longhorn uses the default value ("soft").
giodbf4a852025-06-30 17:09:46 +0400240 - variable: csi.attacherReplicaCount
241 type: int
242 default: 3
243 min: 1
244 max: 10
245 description: >-
246 Replica count of the CSI Attacher. When unspecified, Longhorn uses the default value ("3").
247 label: Longhorn CSI Attacher replica count
248 group: Longhorn CSI Driver Settings
249 - variable: csi.provisionerReplicaCount
250 type: int
251 default: 3
252 min: 1
253 max: 10
254 description: >-
255 Replica count of the CSI Provisioner. When unspecified, Longhorn uses the default value ("3").
256 label: Longhorn CSI Provisioner replica count
257 group: Longhorn CSI Driver Settings
258 - variable: csi.resizerReplicaCount
259 type: int
260 default: 3
261 min: 1
262 max: 10
263 description: >-
264 Replica count of the CSI Resizer. When unspecified, Longhorn uses the default value ("3").
265 label: Longhorn CSI Resizer replica count
266 group: Longhorn CSI Driver Settings
267 - variable: csi.snapshotterReplicaCount
268 type: int
269 default: 3
270 min: 1
271 max: 10
272 description: >-
273 Replica count of the CSI Snapshotter. When unspecified, Longhorn uses the default value ("3").
274 label: Longhorn CSI Snapshotter replica count
275 group: Longhorn CSI Driver Settings
276 - variable: defaultSettings.allowRecurringJobWhileVolumeDetached
277 label: Allow Recurring Job While Volume Is Detached
278 description: >-
279 Setting that allows Longhorn to automatically attach a volume and create snapshots or backups when recurring jobs are run.
280 group: Longhorn Default Settings
281 type: boolean
282 default: 'false'
283 - variable: defaultSettings.snapshotMaxCount
284 label: Snapshot Maximum Count
285 description: >-
286 Maximum snapshot count for a volume. The value should be between 2 to 250.
287 group: Longhorn Default Settings
288 type: int
289 min: 2
290 max: 250
291 default: 250
gio3e1b96b2026-07-21 18:52:35 +0400292 - variable: defaultSettings.snapshotCountWarningThreshold
293 label: Snapshot Count Warning Threshold
294 description: >-
295 Warning threshold for the count-based TooManySnapshots volume condition. The value should be between 2 to 250.
296 group: Longhorn Default Settings
297 type: int
298 min: 2
299 max: 250
300 default: 100
giodbf4a852025-06-30 17:09:46 +0400301 - variable: defaultSettings.createDefaultDiskLabeledNodes
302 label: Create Default Disk on Labeled Nodes
303 description: >-
304 Setting that allows Longhorn to automatically create a default disk only on nodes with the label "node.longhorn.io/create-default-disk=true" (if no other disks exist). When this setting is disabled, Longhorn creates a default disk on each node that is added to the cluster.
305 group: Longhorn Default Settings
306 type: boolean
307 default: 'false'
308 - variable: defaultSettings.defaultDataPath
309 label: Default Data Path
310 description: >-
gio3e1b96b2026-07-21 18:52:35 +0400311 Default path to use for storing data on a host. An absolute directory path indicates a filesystem-type disk used by the V1 Data Engine, while a path to a block device indicates a block-type disk used by the V2 Data Engine. The default value is "/var/lib/longhorn/".
giodbf4a852025-06-30 17:09:46 +0400312 group: Longhorn Default Settings
313 type: string
314 default: /var/lib/longhorn/
315 - variable: defaultSettings.defaultDataLocality
316 label: Default Data Locality
317 description: >-
318 Default data locality. A Longhorn volume has data locality if a local replica of the volume exists on the same node as the pod that is using the volume.
319 group: Longhorn Default Settings
320 type: enum
321 options:
322 - disabled
323 - best-effort
324 default: disabled
325 - variable: defaultSettings.replicaSoftAntiAffinity
326 label: Replica Node Level Soft Anti-Affinity
327 description: >-
328 Allow scheduling on nodes with existing healthy replicas of the same volume. By default, false.
329 group: Longhorn Default Settings
330 type: boolean
331 default: 'false'
332 - variable: defaultSettings.replicaAutoBalance
333 label: Replica Auto Balance
334 description: >-
335 Enable this setting automatically re-balances replicas when discovered an available node.
336 group: Longhorn Default Settings
337 type: enum
338 options:
339 - disabled
340 - least-effort
341 - best-effort
342 default: disabled
343 - variable: defaultSettings.storageOverProvisioningPercentage
344 label: Storage Over Provisioning Percentage
345 description: >-
346 Percentage of storage that can be allocated relative to hard drive capacity. The default value is 100.
347 group: Longhorn Default Settings
348 type: int
349 min: 0
350 default: 100
351 - variable: defaultSettings.storageMinimalAvailablePercentage
352 label: Storage Minimal Available Percentage
353 description: >-
354 If the minimum available disk capacity exceeds the actual percentage of available disk capacity, the disk becomes unschedulable until more space is freed up. By default, 25.
355 group: Longhorn Default Settings
356 type: int
357 min: 0
358 max: 100
359 default: 25
360 - variable: defaultSettings.storageReservedPercentageForDefaultDisk
361 label: Storage Reserved Percentage For Default Disk
362 description: >-
363 The reserved percentage specifies the percentage of disk space that will not be allocated to the default disk on each new Longhorn node.
364 group: Longhorn Default Settings
365 type: int
366 min: 0
367 max: 100
368 default: 30
369 - variable: defaultSettings.upgradeChecker
370 label: Enable Upgrade Checker
371 description: >-
372 Upgrade Checker that periodically checks for new Longhorn versions. When a new version is available, a notification appears on the Longhorn UI. This setting is enabled by default.
373 group: Longhorn Default Settings
374 type: boolean
375 default: 'true'
376 - variable: defaultSettings.upgradeResponderURL
377 label: Upgrade Responder URL
378 description: >-
379 The Upgrade Responder sends a notification whenever a new Longhorn version that you can upgrade to becomes available. The default value is "https://longhorn-upgrade-responder.rancher.io/v1/checkupgrade".
380 group: Longhorn Default Settings
381 type: string
382 default: 'https://longhorn-upgrade-responder.rancher.io/v1/checkupgrade'
gio3e1b96b2026-07-21 18:52:35 +0400383 - variable: defaultSettings.managerUrl
384 label: Manager URL
385 description: >-
386 The external URL used to access the Longhorn Manager API. When set, this URL is returned in API responses (the actions and links fields) instead of the internal pod IP. This is useful when accessing the API through Ingress or Gateway API HTTPRoute. Format: scheme://host[:port] (for example, https://longhorn.example.com or https://longhorn.example.com:8443). Leave it empty to use the default behavior. Warning: Internal components (including longhorn-driver-deployer and longhorn-csi-plugin) follow the links returned in API responses. If this URL passes through proxy middleware (such as an OAuth2 proxy, ingress auth, or any other HTTP-intercepting layer), those components may receive an unexpected response (such as an HTML redirect) instead of JSON, causing errors such as "invalid character '<' looking for beginning of value" and CSI driver deployment failure.
387 group: Longhorn Default Settings
388 type: string
389 default: ''
giodbf4a852025-06-30 17:09:46 +0400390 - variable: defaultSettings.defaultReplicaCount
391 label: Default Replica Count
392 description: >-
gio3e1b96b2026-07-21 18:52:35 +0400393 Default number of replicas for volumes created using the Longhorn UI. For Kubernetes configuration, modify the `numberOfReplicas` field in the StorageClass.
giodbf4a852025-06-30 17:09:46 +0400394 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400395 type: string
396 default: '{"v1":"3","v2":"3"}'
giodbf4a852025-06-30 17:09:46 +0400397 - variable: defaultSettings.defaultLonghornStaticStorageClass
398 label: Default Longhorn Static StorageClass Name
399 description: >-
400 Default name of Longhorn Static StorageClass. The "storageClassName" is assigned to PVs and PVCs that are created for an existing Longhorn volume. The "storageClassName" can also be used as a label, so it is possible to use a Longhorn StorageClass to bind a workload to an existing PV without creating a Kubernetes StorageClass object. The "storageClassName" needs to be an existing StorageClass. The default value is "longhorn-static".
401 group: Longhorn Default Settings
402 type: string
403 default: longhorn-static
404 - variable: defaultSettings.failedBackupTTL
405 label: Failed Backup Time to Live
406 description: >-
407 Number of minutes that Longhorn keeps a failed backup resource. When the value is "0", automatic deletion is disabled.
408 group: Longhorn Default Settings
409 type: int
410 min: 0
411 default: 1440
412 - variable: defaultSettings.backupExecutionTimeout
413 label: Backup Execution Timeout
414 description: >-
415 Number of minutes that Longhorn allows for the backup execution. The default value is "1".
416 group: Longhorn Default Settings
417 type: int
418 min: 1
419 default: 1
420 - variable: defaultSettings.restoreVolumeRecurringJobs
421 label: Restore Volume Recurring Jobs
422 description: >-
423 Restore recurring jobs from the backup volume on the backup target and create recurring jobs if not exist during a backup restoration.
424 group: Longhorn Default Settings
425 type: boolean
426 default: 'false'
427 - variable: defaultSettings.recurringSuccessfulJobsHistoryLimit
428 label: Cronjob Successful Jobs History Limit
429 description: >-
430 This setting specifies how many successful backup or snapshot job histories should be retained. History will not be retained if the value is 0.
431 group: Longhorn Default Settings
432 type: int
433 min: 0
434 default: 1
435 - variable: defaultSettings.recurringFailedJobsHistoryLimit
436 label: Cronjob Failed Jobs History Limit
437 description: >-
438 Maximum number of failed recurring backup and snapshot jobs to be retained. When the value is "0", a history of failed recurring jobs is not retained.
439 group: Longhorn Default Settings
440 type: int
441 min: 0
442 default: 1
443 - variable: defaultSettings.recurringJobMaxRetention
444 label: Maximum Retention Number for Recurring Job
445 description: Maximum number of snapshots or backups to be retained.
446 group: Longhorn Default Settings
447 type: int
448 default: 100
449 - variable: defaultSettings.supportBundleFailedHistoryLimit
450 label: SupportBundle Failed History Limit
451 description: >-
452 This setting specifies how many failed support bundles can exist in the cluster. Set this value to **0** to have Longhorn automatically purge all failed support bundles.
453 group: Longhorn Default Settings
454 type: int
455 min: 0
456 default: 1
457 - variable: defaultSettings.autoSalvage
458 label: Automatic salvage
459 description: >-
460 Setting that allows Longhorn to automatically salvage volumes when all replicas become faulty (for example, when the network connection is interrupted). Longhorn determines which replicas are usable and then uses these replicas for the volume. This setting is enabled by default.
461 group: Longhorn Default Settings
462 type: boolean
463 default: 'true'
464 - variable: defaultSettings.autoDeletePodWhenVolumeDetachedUnexpectedly
465 label: >-
466 Automatically Delete Workload Pod when The Volume Is Detached Unexpectedly
467 description: >-
468 Setting that allows Longhorn to automatically delete a workload pod that is managed by a controller (for example, daemonset) whenever a Longhorn volume is detached unexpectedly (for example, during Kubernetes upgrades). After deletion, the controller restarts the pod and then Kubernetes handles volume reattachment and remounting.
469 group: Longhorn Default Settings
470 type: boolean
471 default: 'true'
gio3e1b96b2026-07-21 18:52:35 +0400472 - variable: defaultSettings.blacklistForAutoDeletePodWhenVolumeDetachedUnexpectedly
473 label: >-
474 Blacklist for Automatically Delete Workload Pod when The Volume Is Detached Unexpectedly
475 description: >-
476 Blacklist of controller api/kind values for the setting Automatically Delete Workload Pod when the Volume Is Detached Unexpectedly. If a workload pod is managed by a controller whose api/kind is listed in this blacklist, Longhorn will not automatically delete the pod when its volume is unexpectedly detached. Multiple controller api/kind entries can be specified, separated by semicolons. For example: `apps/StatefulSet;apps/DaemonSet`. Note that the controller api/kind is case sensitive and must exactly match the api/kind in the workload pod's owner reference.
477 group: Longhorn Default Settings
478 type: string
479 default: null
giodbf4a852025-06-30 17:09:46 +0400480 - variable: defaultSettings.disableSchedulingOnCordonedNode
481 label: Disable Scheduling On Cordoned Node
482 description: >-
483 Setting that prevents Longhorn Manager from scheduling replicas on a cordoned Kubernetes node. This setting is enabled by default.
484 group: Longhorn Default Settings
485 type: boolean
486 default: 'true'
487 - variable: defaultSettings.replicaZoneSoftAntiAffinity
488 label: Replica Zone Level Soft Anti-Affinity
489 description: >-
490 Allow scheduling new Replicas of Volume to the Nodes in the same Zone as existing healthy Replicas. Nodes don't belong to any Zone will be treated as in the same Zone. Notice that Longhorn relies on label `topology.kubernetes.io/zone=<Zone name of the node>` in the Kubernetes node object to identify the zone. By, default true.
491 group: Longhorn Default Settings
492 type: boolean
493 default: 'true'
494 - variable: defaultSettings.replicaDiskSoftAntiAffinity
495 label: Replica Disk Level Soft Anti-Affinity
496 description: >-
497 Allow scheduling on disks with existing healthy replicas of the same volume. By default, true.
498 group: Longhorn Default Settings
499 type: boolean
500 default: 'true'
501 - variable: defaultSettings.allowEmptyNodeSelectorVolume
502 label: Allow Empty Node Selector Volume
503 description: >-
504 Setting that allows scheduling of empty node selector volumes to any node.
505 group: Longhorn Default Settings
506 type: boolean
507 default: 'true'
508 - variable: defaultSettings.allowEmptyDiskSelectorVolume
509 label: Allow Empty Disk Selector Volume
510 description: >-
511 Setting that allows scheduling of empty disk selector volumes to any disk.
512 group: Longhorn Default Settings
513 type: boolean
514 default: 'true'
515 - variable: defaultSettings.nodeDownPodDeletionPolicy
516 label: Pod Deletion Policy When Node is Down
517 description: >-
518 Policy that defines the action Longhorn takes when a volume is stuck with a StatefulSet or Deployment pod on a node that failed.
519 group: Longhorn Default Settings
520 type: enum
521 options:
522 - do-nothing
523 - delete-statefulset-pod
524 - delete-deployment-pod
525 - delete-both-statefulset-and-deployment-pod
526 default: do-nothing
527 - variable: defaultSettings.nodeDrainPolicy
528 label: Node Drain Policy
529 description: >-
530 Policy that defines the action Longhorn takes when a node with the last healthy replica of a volume is drained.
531 group: Longhorn Default Settings
532 type: enum
533 options:
534 - block-for-eviction
535 - block-for-eviction-if-contains-last-replica
536 - block-if-contains-last-replica
537 - allow-if-replica-is-stopped
538 - always-allow
539 default: block-if-contains-last-replica
540 - variable: defaultSettings.detachManuallyAttachedVolumesWhenCordoned
541 label: Detach Manually Attached Volumes When Cordoned
542 description: >-
543 Setting that allows automatic detaching of manually-attached volumes when a node is cordoned.
544 group: Longhorn Default Settings
545 type: boolean
546 default: 'false'
547 - variable: defaultSettings.priorityClass
548 label: Priority Class
549 description: >-
550 PriorityClass for system-managed Longhorn components. This setting can help prevent Longhorn components from being evicted under Node Pressure. Longhorn system contains user deployed components (E.g, Longhorn manager, Longhorn driver, Longhorn UI) and system managed components (E.g, instance manager, engine image, CSI driver, etc.) Note that this will be applied to Longhorn user-deployed components by default if there are no priority class values set yet, such as `longhornManager.priorityClass`. WARNING: DO NOT CHANGE THIS SETTING WITH ATTACHED VOLUMES.
551 group: Longhorn Default Settings
552 type: string
553 default: longhorn-critical
554 - variable: defaultSettings.replicaReplenishmentWaitInterval
555 label: Replica Replenishment Wait Interval
556 description: >-
557 The interval in seconds determines how long Longhorn will at least wait to reuse the existing data on a failed replica rather than directly creating a new replica for a degraded volume.
558 group: Longhorn Default Settings
559 type: int
560 min: 0
561 default: 600
562 - variable: defaultSettings.concurrentReplicaRebuildPerNodeLimit
563 label: Concurrent Replica Rebuild Per Node Limit
564 description: >-
565 Maximum number of replicas that can be concurrently rebuilt on each node. **Caution**: [1] This setting replaces "Disable Replica Rebuild". Instead of delaying replica startup, Longhorn skips replica object replenishment to limit the number of concurrently rebuilding replicas. [2] When the value is "0", the eviction and data locality features do not work, but ongoing replica rebuilding and backup/restoration operations should remain unaffected.
566 group: Longhorn Default Settings
567 type: int
568 min: 0
569 default: 5
gio3e1b96b2026-07-21 18:52:35 +0400570 - variable: defaultSettings.rebuildConcurrentSyncLimit
571 label: Rebuild Concurrent Sync Limit
572 description: >-
573 Maximum number of file synchronization operations that can run concurrently during a single replica rebuild. Right now, it's for v1 data engine only.
574 group: Longhorn Default Settings
575 type: int
576 min: 1
577 max: 5
578 default: 1
giodbf4a852025-06-30 17:09:46 +0400579 - variable: defaultSettings.concurrentVolumeBackupRestorePerNodeLimit
580 label: Concurrent Volume Backup Restore Per Node Limit
581 description: >-
582 Maximum number of volumes that can be concurrently restored on each node using a backup. When the value is "0", restoration of volumes using a backup is disabled.
583 group: Longhorn Default Settings
584 type: int
585 min: 0
586 default: 5
587 - variable: defaultSettings.disableRevisionCounter
588 label: Disable Revision Counter
589 description: >-
590 Setting that disables the revision counter and thereby prevents Longhorn from tracking all write operations to a volume. When salvaging a volume, Longhorn uses properties of the "volume-head-xxx.img" file (the last file size and the last time the file was modified) to select the replica to be used for volume recovery. This setting applies only to volumes created using the Longhorn UI.
591 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400592 type: string
593 default: '{"v1":"true"}'
giodbf4a852025-06-30 17:09:46 +0400594 - variable: defaultSettings.systemManagedPodsImagePullPolicy
595 label: System Managed Pod Image Pull Policy
596 description: >-
597 Image pull policy for system-managed pods, such as Instance Manager, engine images, and CSI Driver. Changes to the image pull policy are applied only after the system-managed pods restart.
598 group: Longhorn Default Settings
599 type: enum
600 options:
601 - if-not-present
602 - always
603 - never
604 default: if-not-present
605 - variable: defaultSettings.allowVolumeCreationWithDegradedAvailability
606 label: Allow Volume Creation with Degraded Availability
607 description: >-
608 Setting that allows you to create and attach a volume without having all replicas scheduled at the time of creation.
609 group: Longhorn Default Settings
610 type: boolean
611 default: 'true'
612 - variable: defaultSettings.autoCleanupSystemGeneratedSnapshot
613 label: Automatically Cleanup System Generated Snapshot
614 description: >-
615 Setting that allows Longhorn to automatically clean up the system-generated snapshot after replica rebuilding is completed.
616 group: Longhorn Default Settings
617 type: boolean
618 default: 'true'
619 - variable: defaultSettings.autoCleanupRecurringJobBackupSnapshot
620 label: Automatically Cleanup Recurring Job Backup Snapshot
621 description: >-
622 Setting that allows Longhorn to automatically clean up the snapshot generated by a recurring backup job.
623 group: Longhorn Default Settings
624 type: boolean
625 default: 'true'
626 - variable: defaultSettings.concurrentAutomaticEngineUpgradePerNodeLimit
627 label: Concurrent Automatic Engine Upgrade Per Node Limit
628 description: >-
629 Maximum number of engines that are allowed to concurrently upgrade on each node after Longhorn Manager is upgraded. When the value is "0", Longhorn does not automatically upgrade volume engines to the new default engine image version.
630 group: Longhorn Default Settings
631 type: int
632 min: 0
633 default: 0
634 - variable: defaultSettings.backingImageCleanupWaitInterval
635 label: Backing Image Cleanup Wait Interval
636 description: >-
637 Number of minutes that Longhorn waits before cleaning up the backing image file when no replicas in the disk are using it.
638 group: Longhorn Default Settings
639 type: int
640 min: 0
641 default: 60
642 - variable: defaultSettings.backingImageRecoveryWaitInterval
643 label: Backing Image Recovery Wait Interval
644 description: >-
645 Number of seconds that Longhorn waits before downloading a backing image file again when the status of all image disk files changes to "failed" or "unknown".
646 group: Longhorn Default Settings
647 type: int
648 min: 0
649 default: 300
650 - variable: defaultSettings.guaranteedInstanceManagerCPU
651 label: Guaranteed Instance Manager CPU
652 description: >-
gio3e1b96b2026-07-21 18:52:35 +0400653 Percentage of the total allocatable CPU resources on each node to be reserved for each Instance Manager pod when the V1 Data Engine is enabled. You can specify a floating point value between "0" and "40" to accommodate the possible number of new Instance Manager pods during upgrades. The default value is "12". **Caution**: [1] When the value is "0", CPU requests are removed from the spec of Instance Manager pods. [2] A new set of Instance Manager pods must be deployed when Longhorn is upgraded. If the available CPUs are not sufficient for the new pods, you must detach the volumes using the oldest Instance Manager pods so that Longhorn can automatically clean up the old pods and release the CPU resources. Once completed, the new pods with the latest Instance Manager image are launched. [3] This global setting is not applied to nodes with a specified value for the "InstanceManagerCPURequest" field. [4] After this setting is configured, Instance Manager pods on all nodes that use this setting are automatically restarted. **Do not change this setting while volumes are still attached. [5] or the v2 Data Engine, the spdk_tgt process inside each instance manager pod uses one or more dedicated CPU cores. Setting a minimum CPU usage is critical to maintaining stability during periods of high node load.**
giodbf4a852025-06-30 17:09:46 +0400654 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400655 type: string
656 default: '{"v1":"12","v2":"12"}'
giodbf4a852025-06-30 17:09:46 +0400657 - variable: defaultSettings.logLevel
658 label: Log Level
659 description: >-
660 Log levels that indicate the type and severity of logs in Longhorn Manager. The default value is "Info". (Options: "Panic", "Fatal", "Error", "Warn", "Info", "Debug", "Trace")
661 group: Longhorn Default Settings
662 type: string
663 default: Info
664 - variable: defaultSettings.disableSnapshotPurge
665 label: Disable Snapshot Purge
666 description: >-
667 Setting that temporarily prevents all attempts to purge volume snapshots.
668 group: Longhorn Default Settings
669 type: boolean
670 default: 'false'
671 - variable: defaultSettings.freezeFilesystemForSnapshot
672 description: >-
673 Setting that freezes the filesystem on the root partition before a snapshot is created.
674 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400675 type: string
676 default: '{"v1":"false"}'
giodbf4a852025-06-30 17:09:46 +0400677 - variable: defaultSettings.kubernetesClusterAutoscalerEnabled
678 label: Kubernetes Cluster Autoscaler Enabled (Experimental)
679 description: >-
680 Setting that notifies Longhorn that the cluster is using the Kubernetes Cluster Autoscaler. **Caution**: Replica rebuilding may consume significant resources if the Kubernetes Cluster Autoscaler removes nodes with reusable replicas.
681 group: Longhorn Default Settings
682 type: boolean
683 default: false
684 - variable: defaultSettings.orphanResourceAutoDeletion
685 label: Orphaned Data Cleanup
686 description: >-
687 Enables Longhorn to automatically delete orphaned resources and their associated data or processes (e.g., stale replicas). Orphaned resources on failed or unknown nodes are not automatically cleaned up. You need to specify the resource types to be deleted using a semicolon-separated list (e.g., `replica-data;instance`). Valid resource types: `replica-data`, `instance`.
688 group: Longhorn Default Settings
689 type: string
690 default: null
691 - variable: defaultSettings.orphanResourceAutoDeletionGracePeriod
692 label: Orphaned Data Cleanup
693 description: >-
694 Specifies the wait time, in seconds, before Longhorn automatically deletes an orphaned Custom Resource (CR) and its associated resources. Note that if a user manually deletes an orphaned CR, the deletion occurs immediately and does not respect this grace period.
695 group: Longhorn Default Settings
696 type: int
697 default: '300'
698 - variable: defaultSettings.storageNetwork
699 label: Storage Network
700 description: >-
701 Longhorn uses the storage network for in-cluster data traffic. Leave this blank to use the Kubernetes cluster network. **Caution**: This setting should change after all volumes are detached because some Longhorn component pods must be recreated to apply the setting. You cannot modify this setting while volumes are still attached.
702 group: Longhorn Default Settings
703 type: string
704 default: null
gio3e1b96b2026-07-21 18:52:35 +0400705 - variable: defaultSettings.EndpointNetworkForRWXVolume
706 label: Endpoint Network For RWX Volume
707 description: >-
708 Specifies a dedicated network for mounting RWX (ReadWriteMany) volumes. Leave this blank to use the default Kubernetes cluster network. **Caution**: This setting should change after all RWX volumes are detached because some Longhorn component pods must be recreated to apply the setting. You cannot modify this setting while RWX volumes are still attached.
709 group: Longhorn Default Settings
710 type: string
711 default: null
giodbf4a852025-06-30 17:09:46 +0400712 - variable: defaultSettings.taintToleration
713 label: Taint Toleration
714 description: >-
715 Taint or toleration for system-managed Longhorn components. Specify values using a semicolon-separated list in `kubectl taint` syntax (Example: key1=value1:effect; key2=value2:effect). **Caution**: This setting should change after all volumes are detached because some Longhorn component pods must be recreated to apply the setting. You cannot modify this setting while volumes are still attached.
716 group: Longhorn Default Settings
717 type: string
718 default: null
719 - variable: defaultSettings.systemManagedComponentsNodeSelector
720 label: System Managed Components NodeSelector
721 description: >-
722 Node selector for system-managed Longhorn components.. **Caution**: This setting should change after all volumes are detached because some Longhorn component pods must be recreated to apply the setting. You cannot modify this setting while volumes are still attached.
723 group: Longhorn Default Settings
724 type: string
725 default: null
gio3e1b96b2026-07-21 18:52:35 +0400726 - variable: defaultSettings.systemManagedCSIComponentsResourceLimits
727 label: System Managed CSI Components Resource Limits
728 description: >-
729 Resource limits for system managed CSI components. This setting allows you to configure CPU and memory requests/limits for CSI attacher, provisioner, resizer, snapshotter, and plugin components. Supported components: csi-attacher, csi-provisioner, csi-resizer, csi-snapshotter, longhorn-csi-plugin, node-driver-registrar, longhorn-liveness-probe. Notice that changing resource limits will cause CSI components to restart, which may temporarily affect volume provisioning and attach/detach operations until the components are ready. The value should be a JSON object with component names as keys and ResourceRequirements as values.
730 group: Longhorn Default Settings
731 type: string
732 default: null
giodbf4a852025-06-30 17:09:46 +0400733 - variable: defaultSettings.deletingConfirmationFlag
734 label: Deleting Confirmation Flag
735 description: Flag that prevents accidental uninstallation of Longhorn.
736 group: Longhorn Default Settings
737 type: boolean
738 default: 'false'
739 - variable: defaultSettings.engineReplicaTimeout
740 label: Timeout between Engine and Replica
741 description: >-
742 Timeout between the Longhorn Engine and replicas. Specify a value between "8" and "30" seconds. The default value is "8".
743 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400744 type: string
745 default: '{"v1":"8","v2":"8"}'
giodbf4a852025-06-30 17:09:46 +0400746 - variable: defaultSettings.snapshotDataIntegrity
747 label: Snapshot Data Integrity
748 description: >-
749 This setting allows users to enable or disable snapshot hashing and data integrity checking.
750 group: Longhorn Default Settings
751 type: enum
752 options:
753 - enabled
754 - fast-check
755 - disabled
756 default: disabled
757 - variable: >-
758 defaultSettings.snapshotDataIntegrityImmediateCheckAfterSnapshotCreation
759 label: Immediate Snapshot Data Integrity Check After Creating a Snapshot
760 description: >-
761 Hashing snapshot disk files impacts the performance of the system. The immediate snapshot hashing and checking can be disabled to minimize the impact after creating a snapshot.
762 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400763 type: string
764 default: '{"v1":"false","v2":"false"}'
giodbf4a852025-06-30 17:09:46 +0400765 - variable: defaultSettings.snapshotDataIntegrityCronjob
766 label: Snapshot Data Integrity Check CronJob
767 description: >-
768 Unix-cron string format. The setting specifies when Longhorn checks the data integrity of snapshot disk files.
769 group: Longhorn Default Settings
770 type: string
gio3e1b96b2026-07-21 18:52:35 +0400771 default: '{"v1":"0 0 */7 * *","v2":"0 0 */7 * *"}'
giodbf4a852025-06-30 17:09:46 +0400772 - variable: defaultSettings.removeSnapshotsDuringFilesystemTrim
773 label: Remove Snapshots During Filesystem Trim
774 description: >-
775 This setting allows Longhorn filesystem trim feature to automatically mark the latest snapshot and its ancestors as removed and stops at the snapshot containing multiple children.
776 group: Longhorn Default Settings
777 type: boolean
778 default: 'false'
779 - variable: defaultSettings.fastReplicaRebuildEnabled
780 label: Fast Replica Rebuild Enabled
781 description: >-
782 Setting that allows fast rebuilding of replicas using the checksum of snapshot disk files. Before enabling this setting, you must set the snapshot-data-integrity value to "enable" or "fast-check".
783 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400784 type: string
785 default: '{"v1":"true","v2":"true"}'
giodbf4a852025-06-30 17:09:46 +0400786 - variable: defaultSettings.replicaFileSyncHttpClientTimeout
787 label: Timeout of HTTP Client to Replica File Sync Server
788 description: >-
789 In seconds. The setting specifies the HTTP client timeout to the file sync server.
790 group: Longhorn Default Settings
791 type: int
792 default: '30'
793 - variable: defaultSettings.longGRPCTimeOut
794 label: Long gRPC Timeout
795 description: >-
796 Number of seconds that Longhorn allows for the completion of replica rebuilding and snapshot cloning operations.
797 group: Longhorn Default Settings
798 type: int
799 default: '86400'
800 - variable: defaultSettings.backupCompressionMethod
801 label: Backup Compression Method
802 description: Setting that allows you to specify a backup compression method.
803 group: Longhorn Default Settings
804 type: string
805 default: lz4
806 - variable: defaultSettings.backupConcurrentLimit
807 label: Backup Concurrent Limit Per Backup
808 description: >-
809 Maximum number of worker threads that can concurrently run for each backup.
810 group: Longhorn Default Settings
811 type: int
812 min: 1
813 default: 2
gio3e1b96b2026-07-21 18:52:35 +0400814 - variable: defaultSettings.backupBlockSize
815 label: Backup Block Size
816 description: >-
817 Specifies the default backup block size, in MiB, used when creating a new volume. Supported values are 2 or 16.
818 group: Longhorn Default Settings
819 type: enum
820 options:
821 - '2'
822 - '16'
823 default: '2'
giodbf4a852025-06-30 17:09:46 +0400824 - variable: defaultSettings.restoreConcurrentLimit
825 label: Restore Concurrent Limit Per Backup
826 description: >-
827 This setting controls how many worker threads per restore concurrently.
828 group: Longhorn Default Settings
829 type: int
830 min: 1
831 default: 2
832 - variable: defaultSettings.allowCollectingLonghornUsageMetrics
833 label: Allow Collecting Longhorn Usage Metrics
834 description: >-
835 Setting that allows Longhorn to periodically collect anonymous usage data for product improvement purposes. Longhorn sends collected data to the [Upgrade Responder](https://github.com/longhorn/upgrade-responder) server, which is the data source of the Longhorn Public Metrics Dashboard (https://metrics.longhorn.io). The Upgrade Responder server does not store data that can be used to identify clients, including IP addresses.
836 group: Longhorn Default Settings
837 type: boolean
838 default: true
839 - variable: defaultSettings.v1DataEngine
840 label: V1 Data Engine
841 description: Setting that allows you to enable the V1 Data Engine.
842 group: Longhorn V1 Data Engine Settings
843 type: boolean
844 default: true
845 - variable: defaultSettings.v2DataEngine
846 label: V2 Data Engine
847 description: >-
848 Setting that allows you to enable the V2 Data Engine, which is based on the Storage Performance Development Kit (SPDK). The V2 Data Engine is an experimental feature and should not be used in production environments. **Caution**: [1] **Do not modify this setting while volumes are still attached.** [2] When the V2 Data Engine is enabled, each Instance Manager pod for the V2 Data Engine uses 1 CPU core. The high CPU usage is caused by `spdk_tgt`, a process running in each Instance Manager pod that handles input/output (IO) operations and requires intensive polling. `spdk_tgt` consumes 100% of a dedicated CPU core to efficiently manage and process the IO requests, ensuring optimal performance and responsiveness for storage operations.
849 group: Longhorn V2 Data Engine (Experimental Feature) Settings
850 type: boolean
851 default: false
gio3e1b96b2026-07-21 18:52:35 +0400852 - variable: defaultSettings.dataEngineHugepageEnabled
giodbf4a852025-06-30 17:09:46 +0400853 label: V2 Data Engine
854 description: >-
gio3e1b96b2026-07-21 18:52:35 +0400855 Applies only to the V2 Data Engine. Enables hugepages for the Storage Performance Development Kit (SPDK) target daemon. If disabled, legacy memory is used. Allocation size is set via the Data Engine Memory Size setting.
giodbf4a852025-06-30 17:09:46 +0400856 group: Longhorn V2 Data Engine (Experimental Feature) Settings
857 type: string
gio3e1b96b2026-07-21 18:52:35 +0400858 default: '{"v2":"true"}'
859 - variable: defaultSettings.dataEngineMemorySize
860 label: V2 Data Engine
giodbf4a852025-06-30 17:09:46 +0400861 description: >-
gio3e1b96b2026-07-21 18:52:35 +0400862 Applies only to the V2 Data Engine. Specifies the memory size, in MiB, allocated to the Storage Performance Development Kit (SPDK) target daemon. When hugepage is enabled, this defines the hugepage size; when legacy memory is used, hugepage is disabled.
giodbf4a852025-06-30 17:09:46 +0400863 group: Longhorn V2 Data Engine (Experimental Feature) Settings
gio3e1b96b2026-07-21 18:52:35 +0400864 type: string
865 default: '{"v2":"2048"}'
866 - variable: defaultSettings.dataEngineLogLevel
867 label: Data Engine Log Level
868 description: >-
869 Applies only to the V2 Data Engine. Specifies the log level for the Storage Performance Development Kit (SPDK) target daemon. Supported values are: Error, Warning, Notice, Info, and Debug. The default is Notice.
870 group: Longhorn V2 Data Engine (Experimental Feature) Settings
871 type: string
872 default: '{"v2":"Notice"}'
873 - variable: defaultSettings.dataEngineLogFlags
874 label: Data Engine Log Flags
875 description: >-
876 Applies only to the V2 Data Engine. Specifies the log flags for the Storage Performance Development Kit (SPDK) target daemon.
877 group: Longhorn V2 Data Engine (Experimental Feature) Settings
878 type: string
879 default: '{"v2":""}'
giodbf4a852025-06-30 17:09:46 +0400880 - variable: defaultSettings.autoCleanupSnapshotWhenDeleteBackup
881 label: Auto Cleanup Snapshot When Delete Backup
882 description: >-
883 Setting that automatically cleans up the snapshot when the backup is deleted.
884 group: Longhorn Default Settings
885 type: boolean
886 default: false
887 - variable: defaultSettings.autoCleanupSnapshotAfterOnDemandBackupCompleted
888 label: Auto Cleanup Snapshot After On-Demand Backup Completed
889 description: >-
890 Setting that automatically cleans up the snapshot after the on-demand backup is completed.
891 group: Longhorn Default Settings
892 type: boolean
893 default: false
894 - variable: defaultSettings.rwxVolumeFastFailover
895 label: RWX Volume Fast Failover (Experimental)
896 description: >-
897 Setting that allows Longhorn to detect node failure and immediately migrate affected RWX volumes.
898 group: Longhorn Default Settings
899 type: boolean
900 default: false
gio3e1b96b2026-07-21 18:52:35 +0400901 - variable: defaultSettings.offlineReplicaRebuilding
giodbf4a852025-06-30 17:09:46 +0400902 label: Offline Replica Rebuilding
903 description: >-
904 Enables automatic rebuilding of degraded replicas while the volume is detached. This setting only takes effect if the individual volume setting is set to `ignored` or `enabled`.
905 group: Longhorn Default Settings
gio3e1b96b2026-07-21 18:52:35 +0400906 type: string
907 default: '{"v1":"false","v2":"false"}'
908 - variable: defaultSettings.dataEngineCPUMask
909 label: Data Engine CPU Mask
910 description: >-
911 Applies only to the V2 Data Engine. Specifies the CPU cores on which the Storage Performance Development Kit (SPDK) target daemon runs. The daemon is deployed in each Instance Manager pod. Ensure that the assigned CPU cores do not exceed the guaranteed CPUs allocated to the V2 Data Engine Instance Manager. A minimum of 2 CPU cores is recommended. SPDK uses a busy-polling reactor model where the master reactor handles both I/O polling and management RPCs. When only a single core is assigned, heavy I/O workloads can delay or starve RPC processing, resulting in increased latency, timeout events, and operational instability. Assigning 2 or more cores allows I/O and management tasks to run on separate reactors, improving responsiveness and operational stability.
912 group: Longhorn Default Settings
913 type: string
914 default: '{"v2":"0x3"}'
915 - variable: defaultSettings.replicaRebuildingBandwidthLimit
916 label: Replica Rebuilding Bandwidth Limit
917 description: >-
918 Applies only to the V2 Data Engine. Specifies the default write bandwidth limit, in megabytes per second (MB/s), for volume replica rebuilding. If this value is set to 0, there will be no write bandwidth limitation. Individual volumes can override this setting by specifying their own rebuilding bandwidth limit.
919 group: Longhorn Default Settings
920 type: string
921 default: '{"v2":"0"}'
922 - variable: defaultSettings.instanceManagerPodLivenessProbeTimeout
923 label: Instance Manager Pod Liveness Probe Timeout
924 description: >-
925 In seconds. The setting specifies the timeout for the instance manager pod liveness probe. The default value is 10 seconds.
926 group: Longhorn Default Settings
927 type: int
928 min: 1
929 max: 60
930 default: 10
931 - variable: defaultSettings.engineImagePodLivenessProbePeriod
932 label: Engine Image Pod Liveness Probe Period
933 description: >-
934 Interval (in seconds) between liveness probes for engine image pods.
935 group: Longhorn Default Settings
936 type: int
937 min: 1
938 max: 60
939 default: 5
940 - variable: defaultSettings.engineImagePodLivenessProbeTimeout
941 label: Engine Image Pod Liveness Probe Timeout
942 description: >-
943 Time (in seconds) to wait for a liveness probe to complete before marking it as failed.
944 group: Longhorn Default Settings
945 type: int
946 min: 1
947 max: 60
948 default: 4
949 - variable: defaultSettings.engineImagePodLivenessProbeFailureThreshold
950 label: Engine Image Pod Liveness Probe Failure Threshold
951 description: >-
952 Number of consecutive failed probes required to trigger a pod restart.
953 group: Longhorn Default Settings
954 type: int
955 min: 1
956 max: 60
957 default: 3
958 - variable: defaultSettings.snapshotHeavyTaskConcurrentLimit
959 label: Snapshot Heavy Task Concurrent Limit
960 description: >-
961 Setting that controls how many snapshot heavy task operations (such as purge and clone) can run concurrently per node. This is a best-effort mechanism: due to the distributed nature of the system, temporary oversubscription may occur. The limiter reduces worst-case overload but does not guarantee perfect enforcement.
962 group: Longhorn Default Settings
963 type: int
964 min: 0
965 default: 5
966 - variable: defaultSettings.nodeDiskHealthMonitoring
967 label: Node Disk Health Monitoring
968 description: >-
969 Controls whether Longhorn monitors and records health information for node disks. When disabled, disk health checks and status updates are skipped.
970 group: Longhorn Default Settings
971 type: boolean
972 default: true
973 - variable: defaultSettings.csiAllowedTopologyKeys
974 label: CSI Allowed Topology Keys
975 description: >-
976 Comma-separated list of topology keys that the Longhorn CSI driver is allowed to pass through. When empty (default), no topology keys are passed through, and PVs will have no nodeAffinity. When configured (e.g., "topology.kubernetes.io/zone,topology.kubernetes.io/region"), only the specified keys are kept in topology segments. All other keys are filtered out from both CreateVolumeResponse.AccessibleTopology and NodeGetInfo topology.
977 group: Longhorn Default Settings
978 type: string
979 default: null
980 - variable: defaultSettings.csiStorageCapacityTracking
981 label: CSI Storage Capacity Tracking
982 description: >-
983 Controls CSI storage capacity tracking, which allows the kube-scheduler to filter nodes that cannot fit the requested volume.
984 group: Longhorn Default Settings
giodbf4a852025-06-30 17:09:46 +0400985 type: boolean
986 default: false
gio3e1b96b2026-07-21 18:52:35 +0400987 - variable: defaultSettings.kubernetesMetricsServerMetricsEnabled
988 label: Kubernetes Metrics Server Metrics Enabled
989 description: >-
990 Allows Longhorn to query the Kubernetes Metrics Server ('metrics.k8s.io') for pod and node resource usage.
991 group: Longhorn Default Settings
992 type: boolean
993 default: true
giodbf4a852025-06-30 17:09:46 +0400994 - variable: persistence.defaultClass
995 default: 'true'
996 description: Setting that allows you to specify the default Longhorn StorageClass.
997 label: Default Storage Class
998 group: Longhorn Storage Class Settings
999 required: true
1000 type: boolean
1001 subquestions: []
1002 - variable: persistence.reclaimPolicy
1003 label: Storage Class Retain Policy
1004 description: >-
1005 Reclaim policy that provides instructions for handling of a volume after its claim is released. (Options: "Retain", "Delete")
1006 group: Longhorn Storage Class Settings
1007 required: true
1008 type: enum
1009 options:
1010 - Delete
1011 - Retain
1012 default: Delete
1013 subquestions: []
1014 - variable: persistence.volumeBindingMode
1015 label: Storage Class Volume Binding Mode
1016 description: >-
1017 VolumeBindingMode controls when volume binding and dynamic provisioning should occur. (Options: "Immediate", "WaitForFirstConsumer") (Defaults to "Immediate")
1018 group: Longhorn Storage Class Settings
1019 required: true
1020 type: enum
1021 options:
1022 - Immediate
1023 - WaitForFirstConsumer
1024 default: Immediate
1025 subquestions: []
1026 - variable: persistence.defaultFsType
1027 label: Storage Class Filesystem Type
1028 description: Filesystem type of the default Longhorn StorageClass
1029 group: Longhorn Storage Class Settings
1030 type: enum
1031 options:
1032 - xfs
1033 - ext4
1034 default: ext4
1035 subquestions: []
1036 - variable: persistence.disableRevisionCounter
1037 label: Default Storage Class Disable Revision Counter
1038 description: >-
1039 Setting that disables the revision counter and thereby prevents Longhorn from tracking all write operations to a volume. When salvaging a volume, Longhorn uses properties of the volume-head-xxx.img file (the last file size and the last time the file was modified) to select the replica to be used for volume recovery. (Options: "true", "false")
1040 group: Longhorn Storage Class Settings
1041 required: true
1042 type: enum
1043 options:
1044 - 'true'
1045 - 'false'
1046 default: 'true'
1047 subquestions: []
1048 - variable: persistence.defaultClassReplicaCount
1049 description: Replica count of the default Longhorn StorageClass.
1050 label: Default Storage Class Replica Count
1051 group: Longhorn Storage Class Settings
Giorgi Lekveishvili725bb392023-05-05 18:24:27 +04001052 type: int
1053 min: 1
giodbf4a852025-06-30 17:09:46 +04001054 max: 10
Giorgi Lekveishvili725bb392023-05-05 18:24:27 +04001055 default: 3
giodbf4a852025-06-30 17:09:46 +04001056 subquestions: []
1057 - variable: persistence.defaultDataLocality
1058 description: >-
1059 Data locality of the default Longhorn StorageClass. (Options: "disabled", "best-effort")
1060 label: Default Storage Class Data Locality
1061 group: Longhorn Storage Class Settings
Giorgi Lekveishvili725bb392023-05-05 18:24:27 +04001062 type: enum
1063 options:
giodbf4a852025-06-30 17:09:46 +04001064 - disabled
1065 - best-effort
1066 default: disabled
1067 subquestions: []
1068 - variable: persistence.recurringJobSelector.enable
1069 description: >-
1070 Setting that allows you to enable the recurring job selector for a Longhorn StorageClass.
1071 group: Longhorn Storage Class Settings
1072 label: Enable Storage Class Recurring Job Selector
gio2539d9e2025-05-22 12:19:30 +04001073 type: boolean
1074 default: false
giodbf4a852025-06-30 17:09:46 +04001075 show_subquestion_if: true
1076 subquestions:
1077 - variable: persistence.recurringJobSelector.jobList
1078 description: >-
1079 Recurring job selector for a Longhorn StorageClass. Ensure that quotes are used correctly when specifying job parameters. (Example: `[{"name":"backup", "isGroup":true}]`)
1080 label: Storage Class Recurring Job Selector List
1081 group: Longhorn Storage Class Settings
1082 type: string
1083 default: null
1084 - variable: persistence.defaultDiskSelector.enable
1085 description: >-
1086 Setting that allows you to enable the disk selector for the default Longhorn StorageClass.
1087 group: Longhorn Storage Class Settings
1088 label: Enable Storage Class Disk Selector
gio2539d9e2025-05-22 12:19:30 +04001089 type: boolean
1090 default: false
giodbf4a852025-06-30 17:09:46 +04001091 show_subquestion_if: true
1092 subquestions:
1093 - variable: persistence.defaultDiskSelector.selector
1094 label: Storage Class Disk Selector
1095 description: >-
1096 Disk selector for the default Longhorn StorageClass. Longhorn uses only disks with the specified tags for storing volume data. (Examples: "nvme,sata")
1097 group: Longhorn Storage Class Settings
1098 type: string
1099 default: null
1100 - variable: persistence.defaultNodeSelector.enable
1101 description: >-
1102 Setting that allows you to enable the node selector for the default Longhorn StorageClass.
1103 group: Longhorn Storage Class Settings
1104 label: Enable Storage Class Node Selector
gio2539d9e2025-05-22 12:19:30 +04001105 type: boolean
1106 default: false
giodbf4a852025-06-30 17:09:46 +04001107 show_subquestion_if: true
1108 subquestions:
1109 - variable: persistence.defaultNodeSelector.selector
1110 label: Storage Class Node Selector
1111 description: >-
1112 Node selector for the default Longhorn StorageClass. Longhorn uses only nodes with the specified tags for storing volume data. (Examples: "storage,fast")
1113 group: Longhorn Storage Class Settings
1114 type: string
1115 default: null
gio3e1b96b2026-07-21 18:52:35 +04001116 - variable: persistence.shareManagerNodeSelector.enable
1117 description: >-
1118 Setting that allows you to enable the share manager node selector for the default Longhorn StorageClass.
1119 group: Longhorn Storage Class Settings
1120 label: Enable Storage Class Share Manager Node Selector
1121 type: boolean
1122 default: false
1123 show_subquestion_if: true
1124 subquestions:
1125 - variable: persistence.shareManagerNodeSelector.selector
1126 label: Storage Class Share Manager Node Selector
1127 description: >-
1128 Node selector for the share manager pods of the default Longhorn StorageClass. Longhorn schedules share manager pods only on nodes with the specified tags. (Examples: "storage,fast")
1129 group: Longhorn Storage Class Settings
1130 type: string
1131 default: null
1132 - variable: persistence.shareManagerTolerations.enable
1133 description: >-
1134 Setting that allows you to enable the share manager tolerations for the default Longhorn StorageClass.
1135 group: Longhorn Storage Class Settings
1136 label: Enable Storage Class Share Manager Tolerations
1137 type: boolean
1138 default: false
1139 show_subquestion_if: true
1140 subquestions:
1141 - variable: persistence.shareManagerTolerations.tolerations
1142 label: Storage Class Share Manager Tolerations
1143 description: >-
1144 Tolerations for the share manager pods of the default Longhorn StorageClass. Specify values using a semicolon-separated list in `kubectl taint` syntax. (Example: "key1=value1:effect; key2=value2:effect")
1145 group: Longhorn Storage Class Settings
1146 type: string
1147 default: null
giodbf4a852025-06-30 17:09:46 +04001148 - variable: persistence.backingImage.enable
1149 description: Setting that allows you to use a backing image in a Longhorn StorageClass.
1150 group: Longhorn Storage Class Settings
1151 label: Default Storage Class Backing Image
gio2539d9e2025-05-22 12:19:30 +04001152 type: boolean
1153 default: false
giodbf4a852025-06-30 17:09:46 +04001154 show_subquestion_if: true
1155 subquestions:
1156 - variable: persistence.backingImage.name
1157 description: >-
1158 Backing image to be used for creating and restoring volumes in a Longhorn StorageClass. When no backing images are available, specify the data source type and parameters that Longhorn can use to create a backing image.
1159 label: Storage Class Backing Image Name
1160 group: Longhorn Storage Class Settings
1161 type: string
1162 default: null
1163 - variable: persistence.backingImage.expectedChecksum
1164 description: >-
1165 Expected SHA-512 checksum of a backing image used in a Longhorn StorageClass. **Caution** [1] This field is useful only if the backing image name is specified. [2] Specifying a checksum is not recommended when the data source type is \"export-from-volume\".
1166 label: Storage Class Backing Image Expected SHA512 Checksum
1167 group: Longhorn Storage Class Settings
1168 type: string
1169 default: null
1170 - variable: persistence.backingImage.dataSourceType
1171 description: >-
1172 Data source type of a backing image used in a Longhorn StorageClass. If the backing image exists in the cluster, Longhorn uses this setting to verify the image. If the backing image does not exist, Longhorn creates one using the specified data source type. **Caution** [1] This field is useful only if the backing image name is specified. [2] Backing images with data source type \"upload\" are best created using the Longhorn UI. Uploading requires sending file data to Longhorn after object creation, which can be complicated when performed manually.
1173 label: Storage Class Backing Image Data Source Type
1174 group: Longhorn Storage Class Settings
1175 type: enum
1176 options:
1177 - ''
1178 - download
1179 - upload
1180 - export-from-volume
1181 default: ''
1182 - variable: persistence.backingImage.dataSourceParameters
1183 description: >-
1184 Data source parameters of a backing image used in a Longhorn StorageClass. You can specify a JSON string of a map. (Example: `'{"url":"https://backing-image-example.s3-region.amazonaws.com/test-backing-image"}'`) **Caution** [1] This field is useful only if the backing image name is specified. [2] Ensure that quotes are used correctly when specifying parameters.
1185 label: Storage Class Backing Image Data Source Parameters
1186 group: Longhorn Storage Class Settings
1187 type: string
1188 default: null
gio3e1b96b2026-07-21 18:52:35 +04001189 - variable: persistence.unmapMarkSnapChainRemoved
giodbf4a852025-06-30 17:09:46 +04001190 description: >-
1191 Setting that allows you to enable automatic snapshot removal during filesystem trim for a Longhorn StorageClass. (Options: "ignored", "enabled", "disabled")
1192 label: Default Storage Class Remove Snapshots During Filesystem Trim
1193 group: Longhorn Storage Class Settings
gio2539d9e2025-05-22 12:19:30 +04001194 type: enum
1195 options:
giodbf4a852025-06-30 17:09:46 +04001196 - ignored
1197 - enabled
1198 - disabled
1199 default: ignored
1200 subquestions: []
1201 - variable: persistence.dataEngine
1202 description: >-
1203 Setting that allows you to specify the data engine version for the default Longhorn StorageClass. (Options: "v1", "v2")
1204 label: Default Storage Class Data Engine
1205 group: Longhorn Storage Class Settings
1206 type: enum
1207 options:
1208 - v1
1209 - v2
1210 default: v1
1211 subquestions: []
1212 - variable: persistence.backupTargetName
1213 description: >-
1214 Setting that allows you to specify the backup target for the default Longhorn StorageClass
1215 label: Default Storage Class Backup Target Name
1216 group: Longhorn Storage Class Settings
gio2539d9e2025-05-22 12:19:30 +04001217 type: string
giodbf4a852025-06-30 17:09:46 +04001218 default: default
1219 subquestions: []
1220 - variable: ingress.enabled
1221 default: 'false'
1222 description: Expose app using Layer 7 Load Balancer - ingress
gio2539d9e2025-05-22 12:19:30 +04001223 type: boolean
giodbf4a852025-06-30 17:09:46 +04001224 group: Services and Load Balancing
1225 label: Expose app using Layer 7 Load Balancer
1226 show_subquestion_if: true
1227 subquestions:
1228 - variable: ingress.host
1229 default: xip.io
1230 description: Hostname of the Layer 7 load balancer.
1231 type: hostname
1232 required: true
1233 label: Layer 7 Load Balancer Hostname
1234 - variable: ingress.path
1235 default: /
1236 description: >-
1237 Default ingress path. You can access the Longhorn UI by following the full ingress path {{host}}+{{path}}.
1238 type: string
1239 required: true
1240 label: Ingress Path
1241 - variable: ingress.pathType
1242 default: ImplementationSpecific
1243 description: >-
1244 Path type for the ingress. (Options: "ImplementationSpecific", "Exact", "Prefix")
1245 type: enum
1246 options:
1247 - ImplementationSpecific
1248 - Exact
1249 - Prefix
1250 required: true
1251 label: Ingress Path Type
gio3e1b96b2026-07-21 18:52:35 +04001252 - variable: httproute.enabled
1253 default: 'false'
1254 description: Expose app using Gateway API HTTPRoute
1255 type: boolean
1256 group: Services and Load Balancing
1257 label: Expose app using Gateway API HTTPRoute
1258 show_subquestion_if: true
1259 subquestions:
1260 - variable: httproute.parentRefs
1261 default: '[]'
1262 description: >-
1263 Gateway references as JSON array. Required fields: name, namespace. Optional: group (default: gateway.networking.k8s.io), kind (default: Gateway), sectionName. Example: [{"name":"my-gateway","namespace":"default","sectionName":"https"}]
1264 type: string
1265 required: true
1266 label: Gateway References (JSON array)
1267 - variable: httproute.hostnames
1268 default: '[]'
1269 description: >-
1270 Hostnames for HTTPRoute as JSON array (e.g., ["longhorn.example.com"])
1271 type: string
1272 required: true
1273 label: Hostnames (JSON array)
1274 - variable: httproute.path
1275 default: /
1276 description: >-
1277 Default path for HTTPRoute. You can access the Longhorn UI by following the full path.
1278 type: string
1279 required: true
1280 label: HTTPRoute Path
1281 - variable: httproute.pathType
1282 default: PathPrefix
1283 description: >-
1284 Path match type for HTTPRoute. (Options: "Exact", "PathPrefix")
1285 type: enum
1286 options:
1287 - Exact
1288 - PathPrefix
1289 required: true
1290 label: HTTPRoute Path Type
giodbf4a852025-06-30 17:09:46 +04001291 - variable: service.ui.type
1292 default: Rancher-Proxy
1293 description: >-
1294 Service type for Longhorn UI. (Options: "ClusterIP", "NodePort", "LoadBalancer", "Rancher-Proxy")
1295 type: enum
1296 options:
1297 - ClusterIP
1298 - NodePort
1299 - LoadBalancer
1300 - Rancher-Proxy
1301 label: Longhorn UI Service
1302 show_if: ingress.enabled=false
1303 group: Services and Load Balancing
1304 show_subquestion_if: NodePort
1305 subquestions:
1306 - variable: service.ui.nodePort
1307 default: ''
1308 description: >-
1309 NodePort port number for Longhorn UI. When unspecified, Longhorn selects a free port between 30000 and 32767.
1310 type: int
1311 min: 30000
1312 max: 32767
1313 show_if: service.ui.type=NodePort||service.ui.type=LoadBalancer
1314 label: UI Service NodePort number
1315 - variable: longhorn.default_resource
1316 default: 'false'
1317 description: >-
1318 Customize the default resource before installing Longhorn for the first time. This option will only work if the cluster hasn't installed Longhorn.
1319 label: Customize Default Resources
gio2539d9e2025-05-22 12:19:30 +04001320 type: boolean
giodbf4a852025-06-30 17:09:46 +04001321 show_subquestion_if: true
1322 group: Longhorn Default Resources
1323 subquestions:
1324 - variable: defaultBackupStore.backupTarget
1325 label: Backup Target
1326 description: >-
1327 Endpoint used to access the backupstore. (Options: "NFS", "CIFS", "AWS", "GCP", "AZURE")
1328 group: Longhorn Default Resources
1329 type: string
1330 default: null
1331 - variable: defaultBackupStore.backupTargetCredentialSecret
1332 label: Backup Target Credential Secret
1333 description: Name of the Kubernetes secret associated with the backup target.
1334 group: Longhorn Default Resources
1335 type: string
1336 default: null
1337 - variable: defaultBackupStore.backupstorePollInterval
1338 label: Backupstore Poll Interval
1339 description: >-
1340 Number of seconds that Longhorn waits before checking the backupstore for new backups. The default value is "300". When the value is "0", polling is disabled.
1341 group: Longhorn Default Resources
1342 type: int
1343 min: 0
1344 default: 300
1345 - variable: enablePSP
1346 default: 'false'
1347 description: >-
1348 Setting that allows you to enable pod security policies (PSPs) that allow privileged Longhorn pods to start. This setting applies only to clusters running Kubernetes 1.25 and earlier, and with the built-in Pod Security admission controller enabled.
1349 label: Pod Security Policy
1350 type: boolean
1351 group: Other Settings
1352 subquestions: []
1353 - variable: global.cattle.windowsCluster.enabled
1354 default: 'false'
1355 description: Setting that allows Longhorn to run on a Rancher Windows cluster.
1356 label: Rancher Windows Cluster
1357 type: boolean
1358 group: Other Settings
1359 subquestions: []
1360 - variable: networkPolicies.enabled
1361 description: >-
1362 Setting that allows you to enable network policies that control access to Longhorn pods. **Caution** The Rancher Proxy will work only if this feature is enabled and a custom NetworkPolicy is added.
1363 group: Other Settings
1364 label: Network Policies
1365 default: 'false'
1366 type: boolean
1367 subquestions:
1368 - variable: networkPolicies.type
1369 label: Network Policies for Ingress
1370 description: >-
1371 Distribution that determines the policy for allowing access for an ingress. (Options: "k3s", "rke2", "rke1")
1372 show_if: networkPolicies.enabled=true&&ingress.enabled=true
1373 type: enum
1374 default: rke2
1375 options:
1376 - rke1
1377 - rke2
1378 - k3s