blob: 39606db21cae871cb2735f020898f64ad021b6b1 [file] [log] [blame]
gio3e1b96b2026-07-21 18:52:35 +04001apiVersion: v1
2kind: ConfigMap
3metadata:
4 name: longhorn-default-setting
5 namespace: {{ include "release_namespace" . }}
6 labels: {{- include "longhorn.labels" . | nindent 4 }}
7data:
8 default-setting.yaml: |-
9 {{- if not (kindIs "invalid" .Values.defaultSettings.allowRecurringJobWhileVolumeDetached) }}
10 allow-recurring-job-while-volume-detached: {{ .Values.defaultSettings.allowRecurringJobWhileVolumeDetached }}
11 {{- end }}
12 {{- if not (kindIs "invalid" .Values.defaultSettings.createDefaultDiskLabeledNodes) }}
13 create-default-disk-labeled-nodes: {{ .Values.defaultSettings.createDefaultDiskLabeledNodes }}
14 {{- end }}
15 {{- if not (kindIs "invalid" .Values.defaultSettings.defaultDataPath) }}
16 default-data-path: {{ .Values.defaultSettings.defaultDataPath | quote }}
17 {{- end }}
18 {{- if not (kindIs "invalid" .Values.defaultSettings.replicaSoftAntiAffinity) }}
19 replica-soft-anti-affinity: {{ .Values.defaultSettings.replicaSoftAntiAffinity }}
20 {{- end }}
21 {{- if not (kindIs "invalid" .Values.defaultSettings.replicaAutoBalance) }}
22 replica-auto-balance: {{ .Values.defaultSettings.replicaAutoBalance | quote }}
23 {{- end }}
24 {{- if not (kindIs "invalid" .Values.defaultSettings.storageOverProvisioningPercentage) }}
25 storage-over-provisioning-percentage: {{ .Values.defaultSettings.storageOverProvisioningPercentage | quote }}
26 {{- end }}
27 {{- if not (kindIs "invalid" .Values.defaultSettings.storageMinimalAvailablePercentage) }}
28 storage-minimal-available-percentage: {{ .Values.defaultSettings.storageMinimalAvailablePercentage | quote }}
29 {{- end }}
30 {{- if not (kindIs "invalid" .Values.defaultSettings.storageReservedPercentageForDefaultDisk) }}
31 storage-reserved-percentage-for-default-disk: {{ .Values.defaultSettings.storageReservedPercentageForDefaultDisk | quote }}
32 {{- end }}
33 {{- if not (kindIs "invalid" .Values.defaultSettings.upgradeChecker) }}
34 upgrade-checker: {{ .Values.defaultSettings.upgradeChecker }}
35 {{- end }}
36 {{- if not (kindIs "invalid" .Values.defaultSettings.upgradeResponderURL) }}
37 upgrade-responder-url: {{ .Values.defaultSettings.upgradeResponderURL | quote }}
38 {{- end }}
39 {{- if not (kindIs "invalid" .Values.defaultSettings.defaultReplicaCount) }}
40 default-replica-count: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.defaultReplicaCount }}
41 {{- end }}
42 {{- if not (kindIs "invalid" .Values.defaultSettings.defaultDataLocality) }}
43 default-data-locality: {{ .Values.defaultSettings.defaultDataLocality | quote }}
44 {{- end }}
45 {{- if not (kindIs "invalid" .Values.defaultSettings.defaultLonghornStaticStorageClass) }}
46 default-longhorn-static-storage-class: {{ .Values.defaultSettings.defaultLonghornStaticStorageClass | quote }}
47 {{- end }}
48 {{- if not (kindIs "invalid" .Values.defaultSettings.failedBackupTTL) }}
49 failed-backup-ttl: {{ .Values.defaultSettings.failedBackupTTL | quote }}
50 {{- end }}
51 {{- if not (kindIs "invalid" .Values.defaultSettings.backupExecutionTimeout) }}
52 backup-execution-timeout: {{ .Values.defaultSettings.backupExecutionTimeout | quote }}
53 {{- end }}
54 {{- if not (kindIs "invalid" .Values.defaultSettings.restoreVolumeRecurringJobs) }}
55 restore-volume-recurring-jobs: {{ .Values.defaultSettings.restoreVolumeRecurringJobs }}
56 {{- end }}
57 {{- if not (kindIs "invalid" .Values.defaultSettings.recurringSuccessfulJobsHistoryLimit) }}
58 recurring-successful-jobs-history-limit: {{ .Values.defaultSettings.recurringSuccessfulJobsHistoryLimit | quote }}
59 {{- end }}
60 {{- if not (kindIs "invalid" .Values.defaultSettings.recurringJobMaxRetention) }}
61 recurring-job-max-retention: {{ .Values.defaultSettings.recurringJobMaxRetention | quote }}
62 {{- end }}
63 {{- if not (kindIs "invalid" .Values.defaultSettings.recurringFailedJobsHistoryLimit) }}
64 recurring-failed-jobs-history-limit: {{ .Values.defaultSettings.recurringFailedJobsHistoryLimit | quote }}
65 {{- end }}
66 {{- if not (kindIs "invalid" .Values.defaultSettings.supportBundleFailedHistoryLimit) }}
67 support-bundle-failed-history-limit: {{ .Values.defaultSettings.supportBundleFailedHistoryLimit | quote }}
68 {{- end }}
69 {{- if or (not (kindIs "invalid" .Values.defaultSettings.taintToleration)) (.Values.global.cattle.windowsCluster.enabled) }}
70 taint-toleration: {{ $windowsDefaultSettingTaintToleration := list }}{{ $defaultSettingTaintToleration := list -}}
71 {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.defaultSetting.taintToleration -}}
72 {{- $windowsDefaultSettingTaintToleration = .Values.global.cattle.windowsCluster.defaultSetting.taintToleration -}}
73 {{- end -}}
74 {{- if not (kindIs "invalid" .Values.defaultSettings.taintToleration) -}}
75 {{- $defaultSettingTaintToleration = .Values.defaultSettings.taintToleration -}}
76 {{- end -}}
77 {{- $taintToleration := list $windowsDefaultSettingTaintToleration $defaultSettingTaintToleration }}{{ join ";" (compact $taintToleration) -}}
78 {{- end }}
79 {{- if or (not (kindIs "invalid" .Values.defaultSettings.systemManagedComponentsNodeSelector)) (.Values.global.cattle.windowsCluster.enabled) }}
80 system-managed-components-node-selector: {{ $windowsDefaultSettingNodeSelector := list }}{{ $defaultSettingNodeSelector := list -}}
81 {{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.defaultSetting.systemManagedComponentsNodeSelector -}}
82 {{ $windowsDefaultSettingNodeSelector = .Values.global.cattle.windowsCluster.defaultSetting.systemManagedComponentsNodeSelector -}}
83 {{- end -}}
84 {{- if not (kindIs "invalid" .Values.defaultSettings.systemManagedComponentsNodeSelector) -}}
85 {{- $defaultSettingNodeSelector = .Values.defaultSettings.systemManagedComponentsNodeSelector -}}
86 {{- end -}}
87 {{- $nodeSelector := list $windowsDefaultSettingNodeSelector $defaultSettingNodeSelector }}{{ join ";" (compact $nodeSelector) -}}
88 {{- end }}
89 {{- if not (kindIs "invalid" .Values.defaultSettings.priorityClass) }}
90 priority-class: {{ .Values.defaultSettings.priorityClass | quote }}
91 {{- end }}
92 {{- if not (kindIs "invalid" .Values.defaultSettings.autoSalvage) }}
93 auto-salvage: {{ .Values.defaultSettings.autoSalvage }}
94 {{- end }}
95 {{- if not (kindIs "invalid" .Values.defaultSettings.autoDeletePodWhenVolumeDetachedUnexpectedly) }}
96 auto-delete-pod-when-volume-detached-unexpectedly: {{ .Values.defaultSettings.autoDeletePodWhenVolumeDetachedUnexpectedly }}
97 {{- end }}
98 {{- if not (kindIs "invalid" .Values.defaultSettings.blacklistForAutoDeletePodWhenVolumeDetachedUnexpectedly) }}
99 blacklist-for-auto-delete-pod-when-volume-detached-unexpectedly: {{ .Values.defaultSettings.blacklistForAutoDeletePodWhenVolumeDetachedUnexpectedly }}
100 {{- end }}
101 {{- if not (kindIs "invalid" .Values.defaultSettings.disableSchedulingOnCordonedNode) }}
102 disable-scheduling-on-cordoned-node: {{ .Values.defaultSettings.disableSchedulingOnCordonedNode }}
103 {{- end }}
104 {{- if not (kindIs "invalid" .Values.defaultSettings.replicaZoneSoftAntiAffinity) }}
105 replica-zone-soft-anti-affinity: {{ .Values.defaultSettings.replicaZoneSoftAntiAffinity }}
106 {{- end }}
107 {{- if not (kindIs "invalid" .Values.defaultSettings.replicaDiskSoftAntiAffinity) }}
108 replica-disk-soft-anti-affinity: {{ .Values.defaultSettings.replicaDiskSoftAntiAffinity }}
109 {{- end }}
110 {{- if not (kindIs "invalid" .Values.defaultSettings.nodeDownPodDeletionPolicy) }}
111 node-down-pod-deletion-policy: {{ .Values.defaultSettings.nodeDownPodDeletionPolicy | quote }}
112 {{- end }}
113 {{- if not (kindIs "invalid" .Values.defaultSettings.nodeDrainPolicy) }}
114 node-drain-policy: {{ .Values.defaultSettings.nodeDrainPolicy | quote }}
115 {{- end }}
116 {{- if not (kindIs "invalid" .Values.defaultSettings.detachManuallyAttachedVolumesWhenCordoned) }}
117 detach-manually-attached-volumes-when-cordoned: {{ .Values.defaultSettings.detachManuallyAttachedVolumesWhenCordoned }}
118 {{- end }}
119 {{- if not (kindIs "invalid" .Values.defaultSettings.replicaReplenishmentWaitInterval) }}
120 replica-replenishment-wait-interval: {{ .Values.defaultSettings.replicaReplenishmentWaitInterval | quote }}
121 {{- end }}
122 {{- if not (kindIs "invalid" .Values.defaultSettings.concurrentReplicaRebuildPerNodeLimit) }}
123 concurrent-replica-rebuild-per-node-limit: {{ .Values.defaultSettings.concurrentReplicaRebuildPerNodeLimit | quote }}
124 {{- end }}
125 {{- if not (kindIs "invalid" .Values.defaultSettings.concurrentVolumeBackupRestorePerNodeLimit) }}
126 concurrent-volume-backup-restore-per-node-limit: {{ .Values.defaultSettings.concurrentVolumeBackupRestorePerNodeLimit | quote }}
127 {{- end }}
128 {{- if not (kindIs "invalid" .Values.defaultSettings.disableRevisionCounter) }}
129 disable-revision-counter: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.disableRevisionCounter }}
130 {{- end }}
131 {{- if not (kindIs "invalid" .Values.defaultSettings.systemManagedPodsImagePullPolicy) }}
132 system-managed-pods-image-pull-policy: {{ .Values.defaultSettings.systemManagedPodsImagePullPolicy | quote }}
133 {{- end }}
134 {{- if not (kindIs "invalid" .Values.defaultSettings.allowVolumeCreationWithDegradedAvailability) }}
135 allow-volume-creation-with-degraded-availability: {{ .Values.defaultSettings.allowVolumeCreationWithDegradedAvailability }}
136 {{- end }}
137 {{- if not (kindIs "invalid" .Values.defaultSettings.autoCleanupSystemGeneratedSnapshot) }}
138 auto-cleanup-system-generated-snapshot: {{ .Values.defaultSettings.autoCleanupSystemGeneratedSnapshot }}
139 {{- end }}
140 {{- if not (kindIs "invalid" .Values.defaultSettings.autoCleanupRecurringJobBackupSnapshot) }}
141 auto-cleanup-recurring-job-backup-snapshot: {{ .Values.defaultSettings.autoCleanupRecurringJobBackupSnapshot }}
142 {{- end }}
143 {{- if not (kindIs "invalid" .Values.defaultSettings.concurrentAutomaticEngineUpgradePerNodeLimit) }}
144 concurrent-automatic-engine-upgrade-per-node-limit: {{ .Values.defaultSettings.concurrentAutomaticEngineUpgradePerNodeLimit | quote }}
145 {{- end }}
146 {{- if not (kindIs "invalid" .Values.defaultSettings.backingImageCleanupWaitInterval) }}
147 backing-image-cleanup-wait-interval: {{ .Values.defaultSettings.backingImageCleanupWaitInterval | quote }}
148 {{- end }}
149 {{- if not (kindIs "invalid" .Values.defaultSettings.backingImageRecoveryWaitInterval) }}
150 backing-image-recovery-wait-interval: {{ .Values.defaultSettings.backingImageRecoveryWaitInterval | quote }}
151 {{- end }}
152 {{- if not (kindIs "invalid" .Values.defaultSettings.guaranteedInstanceManagerCPU) }}
153 guaranteed-instance-manager-cpu: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.guaranteedInstanceManagerCPU }}
154 {{- end }}
155 {{- if not (kindIs "invalid" .Values.defaultSettings.kubernetesClusterAutoscalerEnabled) }}
156 kubernetes-cluster-autoscaler-enabled: {{ .Values.defaultSettings.kubernetesClusterAutoscalerEnabled }}
157 {{- end }}
158 {{- if not (kindIs "invalid" .Values.defaultSettings.orphanResourceAutoDeletion) }}
159 orphan-resource-auto-deletion: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.orphanResourceAutoDeletion }}
160 {{- end }}
161 {{- if not (kindIs "invalid" .Values.defaultSettings.orphanResourceAutoDeletionGracePeriod) }}
162 orphan-resource-auto-deletion-grace-period: {{ .Values.defaultSettings.orphanResourceAutoDeletionGracePeriod | quote }}
163 {{- end }}
164 {{- if not (kindIs "invalid" .Values.defaultSettings.storageNetwork) }}
165 storage-network: {{ .Values.defaultSettings.storageNetwork | quote }}
166 {{- end }}
167 {{- if not (kindIs "invalid" .Values.defaultSettings.deletingConfirmationFlag) }}
168 deleting-confirmation-flag: {{ .Values.defaultSettings.deletingConfirmationFlag }}
169 {{- end }}
170 {{- if not (kindIs "invalid" .Values.defaultSettings.engineReplicaTimeout) }}
171 engine-replica-timeout: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.engineReplicaTimeout }}
172 {{- end }}
173 {{- if not (kindIs "invalid" .Values.defaultSettings.snapshotDataIntegrity) }}
174 snapshot-data-integrity: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.snapshotDataIntegrity }}
175 {{- end }}
176 {{- if not (kindIs "invalid" .Values.defaultSettings.snapshotDataIntegrityImmediateCheckAfterSnapshotCreation) }}
177 snapshot-data-integrity-immediate-check-after-snapshot-creation: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.snapshotDataIntegrityImmediateCheckAfterSnapshotCreation }}
178 {{- end }}
179 {{- if not (kindIs "invalid" .Values.defaultSettings.snapshotDataIntegrityCronjob) }}
180 snapshot-data-integrity-cronjob: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.snapshotDataIntegrityCronjob }}
181 {{- end }}
182 {{- if not (kindIs "invalid" .Values.defaultSettings.removeSnapshotsDuringFilesystemTrim) }}
183 remove-snapshots-during-filesystem-trim: {{ .Values.defaultSettings.removeSnapshotsDuringFilesystemTrim }}
184 {{- end }}
185 {{- if not (kindIs "invalid" .Values.defaultSettings.fastReplicaRebuildEnabled) }}
186 fast-replica-rebuild-enabled: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.fastReplicaRebuildEnabled }}
187 {{- end }}
188 {{- if not (kindIs "invalid" .Values.defaultSettings.replicaFileSyncHttpClientTimeout) }}
189 replica-file-sync-http-client-timeout: {{ .Values.defaultSettings.replicaFileSyncHttpClientTimeout | quote }}
190 {{- end }}
191 {{- if not (kindIs "invalid" .Values.defaultSettings.longGRPCTimeOut) }}
192 long-grpc-timeout: {{ .Values.defaultSettings.longGRPCTimeOut | quote }}
193 {{- end }}
194 {{- if not (kindIs "invalid" .Values.defaultSettings.logLevel) }}
195 log-level: {{ .Values.defaultSettings.logLevel | quote }}
196 {{- end }}
197 {{- if not (kindIs "invalid" .Values.defaultSettings.logPath) }}
198 log-path: {{ .Values.defaultSettings.logPath | quote }}
199 {{- end }}
200 {{- if not (kindIs "invalid" .Values.defaultSettings.backupCompressionMethod) }}
201 backup-compression-method: {{ .Values.defaultSettings.backupCompressionMethod | quote }}
202 {{- end }}
203 {{- if not (kindIs "invalid" .Values.defaultSettings.backupConcurrentLimit) }}
204 backup-concurrent-limit: {{ .Values.defaultSettings.backupConcurrentLimit | quote }}
205 {{- end }}
206 {{- if not (kindIs "invalid" .Values.defaultSettings.restoreConcurrentLimit) }}
207 restore-concurrent-limit: {{ .Values.defaultSettings.restoreConcurrentLimit | quote }}
208 {{- end }}
209 {{- if not (kindIs "invalid" .Values.defaultSettings.defaultBackupBlockSize) }}
210 default-backup-block-size: {{ .Values.defaultSettings.defaultBackupBlockSize | quote }}
211 {{- end }}
212 {{- if not (kindIs "invalid" .Values.defaultSettings.v1DataEngine) }}
213 v1-data-engine: {{ .Values.defaultSettings.v1DataEngine }}
214 {{- end }}
215 {{- if not (kindIs "invalid" .Values.defaultSettings.v2DataEngine) }}
216 v2-data-engine: {{ .Values.defaultSettings.v2DataEngine }}
217 {{- end }}
218 {{- if not (kindIs "invalid" .Values.defaultSettings.dataEngineHugepageEnabled) }}
219 data-engine-hugepage-enabled: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.dataEngineHugepageEnabled }}
220 {{- end }}
221 {{- if not (kindIs "invalid" .Values.defaultSettings.dataEngineMemorySize) }}
222 data-engine-memory-size: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.dataEngineMemorySize }}
223 {{- end }}
224 {{- if not (kindIs "invalid" .Values.defaultSettings.allowEmptyNodeSelectorVolume) }}
225 allow-empty-node-selector-volume: {{ .Values.defaultSettings.allowEmptyNodeSelectorVolume }}
226 {{- end }}
227 {{- if not (kindIs "invalid" .Values.defaultSettings.allowEmptyDiskSelectorVolume) }}
228 allow-empty-disk-selector-volume: {{ .Values.defaultSettings.allowEmptyDiskSelectorVolume }}
229 {{- end }}
230 {{- if not (kindIs "invalid" .Values.defaultSettings.allowCollectingLonghornUsageMetrics) }}
231 allow-collecting-longhorn-usage-metrics: {{ .Values.defaultSettings.allowCollectingLonghornUsageMetrics }}
232 {{- end }}
233 {{- if not (kindIs "invalid" .Values.defaultSettings.disableSnapshotPurge) }}
234 disable-snapshot-purge: {{ .Values.defaultSettings.disableSnapshotPurge }}
235 {{- end }}
236 {{- if not (kindIs "invalid" .Values.defaultSettings.snapshotMaxCount) }}
237 snapshot-max-count: {{ .Values.defaultSettings.snapshotMaxCount | quote }}
238 {{- end }}
239 {{- if not (kindIs "invalid" .Values.defaultSettings.dataEngineLogLevel) }}
240 data-engine-log-level: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.dataEngineLogLevel }}
241 {{- end }}
242 {{- if not (kindIs "invalid" .Values.defaultSettings.dataEngineLogFlags) }}
243 data-engine-log-flags: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.dataEngineLogFlags }}
244 {{- end }}
245 {{- if not (kindIs "invalid" .Values.defaultSettings.freezeFilesystemForSnapshot) }}
246 freeze-filesystem-for-snapshot: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.freezeFilesystemForSnapshot }}
247 {{- end }}
248 {{- if not (kindIs "invalid" .Values.defaultSettings.autoCleanupSnapshotWhenDeleteBackup) }}
249 auto-cleanup-when-delete-backup: {{ .Values.defaultSettings.autoCleanupSnapshotWhenDeleteBackup }}
250 {{- end }}
251 {{- if not (kindIs "invalid" .Values.defaultSettings.autoCleanupSnapshotAfterOnDemandBackupCompleted) }}
252 auto-cleanup-snapshot-after-on-demand-backup-completed: {{ .Values.defaultSettings.autoCleanupSnapshotAfterOnDemandBackupCompleted }}
253 {{- end }}
254 {{- if not (kindIs "invalid" .Values.defaultSettings.rwxVolumeFastFailover) }}
255 rwx-volume-fast-failover: {{ .Values.defaultSettings.rwxVolumeFastFailover}}
256 {{- end }}
257 {{- if not (kindIs "invalid" .Values.defaultSettings.offlineReplicaRebuilding) }}
258 offline-replica-rebuilding: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.offlineReplicaRebuilding }}
259 {{- end }}
260 {{- if not (kindIs "invalid" .Values.defaultSettings.dataEngineCPUMask) }}
261 data-engine-cpu-mask: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.dataEngineCPUMask }}
262 {{- end }}
263 {{- if not (kindIs "invalid" .Values.defaultSettings.replicaRebuildingBandwidthLimit) }}
264 replica-rebuilding-bandwidth-limit: {{ include "longhorn.multiTypeSetting" .Values.defaultSettings.replicaRebuildingBandwidthLimit }}
265 {{- end }}
266 {{- if not (kindIs "invalid" .Values.defaultSettings.instanceManagerPodLivenessProbeTimeout) }}
267 instance-manager-pod-liveness-probe-timeout: {{ .Values.defaultSettings.instanceManagerPodLivenessProbeTimeout | quote }}
268 {{- end }}