| gio | 16bb638 | 2025-05-21 18:42:40 +0400 | [diff] [blame] | 1 | # Default values for longhorn. |
| 2 | # This is a YAML-formatted file. |
| 3 | # Declare variables to be passed into your templates. |
| 4 | global: |
| 5 | cattle: |
| 6 | systemDefaultRegistry: "" |
| 7 | windowsCluster: |
| 8 | # Enable this to allow Longhorn to run on the Rancher deployed Windows cluster |
| 9 | enabled: false |
| 10 | # Tolerate Linux node taint |
| 11 | tolerations: |
| 12 | - key: "cattle.io/os" |
| 13 | value: "linux" |
| 14 | effect: "NoSchedule" |
| 15 | operator: "Equal" |
| 16 | # Select Linux nodes |
| 17 | nodeSelector: |
| 18 | kubernetes.io/os: "linux" |
| 19 | # Recognize toleration and node selector for Longhorn run-time created components |
| 20 | defaultSetting: |
| 21 | taintToleration: cattle.io/os=linux:NoSchedule |
| 22 | systemManagedComponentsNodeSelector: kubernetes.io/os:linux |
| 23 | |
| 24 | networkPolicies: |
| 25 | enabled: false |
| 26 | # Available types: k3s, rke2, rke1 |
| 27 | type: "k3s" |
| 28 | |
| 29 | image: |
| 30 | longhorn: |
| 31 | engine: |
| 32 | repository: longhornio/longhorn-engine |
| 33 | tag: v1.5.2 |
| 34 | manager: |
| 35 | repository: longhornio/longhorn-manager |
| 36 | tag: v1.5.2 |
| 37 | ui: |
| 38 | repository: longhornio/longhorn-ui |
| 39 | tag: v1.5.2 |
| 40 | instanceManager: |
| 41 | repository: longhornio/longhorn-instance-manager |
| 42 | tag: v1.5.2 |
| 43 | shareManager: |
| 44 | repository: longhornio/longhorn-share-manager |
| 45 | tag: v1.5.2 |
| 46 | backingImageManager: |
| 47 | repository: longhornio/backing-image-manager |
| 48 | tag: v1.5.2 |
| 49 | supportBundleKit: |
| 50 | repository: longhornio/support-bundle-kit |
| 51 | tag: v0.0.27 |
| 52 | csi: |
| 53 | attacher: |
| 54 | repository: longhornio/csi-attacher |
| 55 | tag: v4.2.0 |
| 56 | provisioner: |
| 57 | repository: longhornio/csi-provisioner |
| 58 | tag: v3.4.1 |
| 59 | nodeDriverRegistrar: |
| 60 | repository: longhornio/csi-node-driver-registrar |
| 61 | tag: v2.7.0 |
| 62 | resizer: |
| 63 | repository: longhornio/csi-resizer |
| 64 | tag: v1.7.0 |
| 65 | snapshotter: |
| 66 | repository: longhornio/csi-snapshotter |
| 67 | tag: v6.2.1 |
| 68 | livenessProbe: |
| 69 | repository: longhornio/livenessprobe |
| 70 | tag: v2.9.0 |
| 71 | pullPolicy: IfNotPresent |
| 72 | |
| 73 | service: |
| 74 | ui: |
| 75 | type: ClusterIP |
| 76 | nodePort: null |
| 77 | manager: |
| 78 | type: ClusterIP |
| 79 | nodePort: "" |
| 80 | loadBalancerIP: "" |
| 81 | loadBalancerSourceRanges: "" |
| 82 | |
| 83 | persistence: |
| 84 | defaultClass: true |
| 85 | defaultFsType: ext4 |
| 86 | defaultMkfsParams: "" |
| 87 | defaultClassReplicaCount: 3 |
| 88 | defaultDataLocality: disabled # best-effort otherwise |
| 89 | reclaimPolicy: Delete |
| 90 | migratable: false |
| 91 | recurringJobSelector: |
| 92 | enable: false |
| 93 | jobList: [] |
| 94 | backingImage: |
| 95 | enable: false |
| 96 | name: ~ |
| 97 | dataSourceType: ~ |
| 98 | dataSourceParameters: ~ |
| 99 | expectedChecksum: ~ |
| 100 | defaultNodeSelector: |
| 101 | enable: false # disable by default |
| 102 | selector: "" |
| 103 | removeSnapshotsDuringFilesystemTrim: ignored # "enabled" or "disabled" otherwise |
| 104 | |
| 105 | helmPreUpgradeCheckerJob: |
| 106 | enabled: true |
| 107 | |
| 108 | csi: |
| 109 | kubeletRootDir: ~ |
| 110 | attacherReplicaCount: ~ |
| 111 | provisionerReplicaCount: ~ |
| 112 | resizerReplicaCount: ~ |
| 113 | snapshotterReplicaCount: ~ |
| 114 | |
| 115 | defaultSettings: |
| 116 | backupTarget: ~ |
| 117 | backupTargetCredentialSecret: ~ |
| 118 | allowRecurringJobWhileVolumeDetached: ~ |
| 119 | createDefaultDiskLabeledNodes: ~ |
| 120 | defaultDataPath: ~ |
| 121 | defaultDataLocality: ~ |
| 122 | replicaSoftAntiAffinity: ~ |
| 123 | replicaAutoBalance: ~ |
| 124 | storageOverProvisioningPercentage: ~ |
| 125 | storageMinimalAvailablePercentage: ~ |
| 126 | storageReservedPercentageForDefaultDisk: ~ |
| 127 | upgradeChecker: ~ |
| 128 | defaultReplicaCount: ~ |
| 129 | defaultLonghornStaticStorageClass: ~ |
| 130 | backupstorePollInterval: ~ |
| 131 | failedBackupTTL: ~ |
| 132 | restoreVolumeRecurringJobs: ~ |
| 133 | recurringSuccessfulJobsHistoryLimit: ~ |
| 134 | recurringFailedJobsHistoryLimit: ~ |
| 135 | supportBundleFailedHistoryLimit: ~ |
| 136 | taintToleration: ~ |
| 137 | systemManagedComponentsNodeSelector: ~ |
| 138 | priorityClass: ~ |
| 139 | autoSalvage: ~ |
| 140 | autoDeletePodWhenVolumeDetachedUnexpectedly: ~ |
| 141 | disableSchedulingOnCordonedNode: ~ |
| 142 | replicaZoneSoftAntiAffinity: ~ |
| 143 | nodeDownPodDeletionPolicy: ~ |
| 144 | nodeDrainPolicy: ~ |
| 145 | replicaReplenishmentWaitInterval: ~ |
| 146 | concurrentReplicaRebuildPerNodeLimit: ~ |
| 147 | concurrentVolumeBackupRestorePerNodeLimit: ~ |
| 148 | disableRevisionCounter: ~ |
| 149 | systemManagedPodsImagePullPolicy: ~ |
| 150 | allowVolumeCreationWithDegradedAvailability: ~ |
| 151 | autoCleanupSystemGeneratedSnapshot: ~ |
| 152 | concurrentAutomaticEngineUpgradePerNodeLimit: ~ |
| 153 | backingImageCleanupWaitInterval: ~ |
| 154 | backingImageRecoveryWaitInterval: ~ |
| 155 | guaranteedInstanceManagerCPU: ~ |
| 156 | kubernetesClusterAutoscalerEnabled: ~ |
| 157 | orphanAutoDeletion: ~ |
| 158 | storageNetwork: ~ |
| 159 | deletingConfirmationFlag: ~ |
| 160 | engineReplicaTimeout: ~ |
| 161 | snapshotDataIntegrity: ~ |
| 162 | snapshotDataIntegrityImmediateCheckAfterSnapshotCreation: ~ |
| 163 | snapshotDataIntegrityCronjob: ~ |
| 164 | removeSnapshotsDuringFilesystemTrim: ~ |
| 165 | fastReplicaRebuildEnabled: ~ |
| 166 | replicaFileSyncHttpClientTimeout: ~ |
| 167 | logLevel: ~ |
| 168 | backupCompressionMethod: ~ |
| 169 | backupConcurrentLimit: ~ |
| 170 | restoreConcurrentLimit: ~ |
| 171 | v2DataEngine: ~ |
| 172 | offlineReplicaRebuilding: ~ |
| 173 | privateRegistry: |
| 174 | createSecret: ~ |
| 175 | registryUrl: ~ |
| 176 | registryUser: ~ |
| 177 | registryPasswd: ~ |
| 178 | registrySecret: ~ |
| 179 | |
| 180 | longhornManager: |
| 181 | log: |
| 182 | ## Allowed values are `plain` or `json`. |
| 183 | format: plain |
| 184 | priorityClass: ~ |
| 185 | tolerations: [] |
| 186 | ## If you want to set tolerations for Longhorn Manager DaemonSet, delete the `[]` in the line above |
| 187 | ## and uncomment this example block |
| 188 | # - key: "key" |
| 189 | # operator: "Equal" |
| 190 | # value: "value" |
| 191 | # effect: "NoSchedule" |
| 192 | nodeSelector: {} |
| 193 | ## If you want to set node selector for Longhorn Manager DaemonSet, delete the `{}` in the line above |
| 194 | ## and uncomment this example block |
| 195 | # label-key1: "label-value1" |
| 196 | # label-key2: "label-value2" |
| 197 | serviceAnnotations: {} |
| 198 | ## If you want to set annotations for the Longhorn Manager service, delete the `{}` in the line above |
| 199 | ## and uncomment this example block |
| 200 | # annotation-key1: "annotation-value1" |
| 201 | # annotation-key2: "annotation-value2" |
| 202 | |
| 203 | longhornDriver: |
| 204 | priorityClass: ~ |
| 205 | tolerations: [] |
| 206 | ## If you want to set tolerations for Longhorn Driver Deployer Deployment, delete the `[]` in the line above |
| 207 | ## and uncomment this example block |
| 208 | # - key: "key" |
| 209 | # operator: "Equal" |
| 210 | # value: "value" |
| 211 | # effect: "NoSchedule" |
| 212 | nodeSelector: {} |
| 213 | ## If you want to set node selector for Longhorn Driver Deployer Deployment, delete the `{}` in the line above |
| 214 | ## and uncomment this example block |
| 215 | # label-key1: "label-value1" |
| 216 | # label-key2: "label-value2" |
| 217 | |
| 218 | longhornUI: |
| 219 | replicas: 2 |
| 220 | priorityClass: ~ |
| 221 | tolerations: [] |
| 222 | ## If you want to set tolerations for Longhorn UI Deployment, delete the `[]` in the line above |
| 223 | ## and uncomment this example block |
| 224 | # - key: "key" |
| 225 | # operator: "Equal" |
| 226 | # value: "value" |
| 227 | # effect: "NoSchedule" |
| 228 | nodeSelector: {} |
| 229 | ## If you want to set node selector for Longhorn UI Deployment, delete the `{}` in the line above |
| 230 | ## and uncomment this example block |
| 231 | # label-key1: "label-value1" |
| 232 | # label-key2: "label-value2" |
| 233 | |
| 234 | ingress: |
| 235 | ## Set to true to enable ingress record generation |
| 236 | enabled: false |
| 237 | |
| 238 | ## Add ingressClassName to the Ingress |
| 239 | ## Can replace the kubernetes.io/ingress.class annotation on v1.18+ |
| 240 | ingressClassName: ~ |
| 241 | |
| 242 | host: sslip.io |
| 243 | |
| 244 | ## Set this to true in order to enable TLS on the ingress record |
| 245 | tls: false |
| 246 | |
| 247 | ## Enable this in order to enable that the backend service will be connected at port 443 |
| 248 | secureBackends: false |
| 249 | |
| 250 | ## If TLS is set to true, you must declare what secret will store the key/certificate for TLS |
| 251 | tlsSecret: longhorn.local-tls |
| 252 | |
| 253 | ## If ingress is enabled you can set the default ingress path |
| 254 | ## then you can access the UI by using the following full path {{host}}+{{path}} |
| 255 | path: / |
| 256 | |
| 257 | ## Ingress annotations done as key:value pairs |
| 258 | ## If you're using kube-lego, you will want to add: |
| 259 | ## kubernetes.io/tls-acme: true |
| 260 | ## |
| 261 | ## For a full list of possible ingress annotations, please see |
| 262 | ## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md |
| 263 | ## |
| 264 | ## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set |
| 265 | annotations: |
| 266 | # kubernetes.io/ingress.class: nginx |
| 267 | # kubernetes.io/tls-acme: true |
| 268 | |
| 269 | secrets: |
| 270 | ## If you're providing your own certificates, please use this to add the certificates as secrets |
| 271 | ## key and certificate should start with -----BEGIN CERTIFICATE----- or |
| 272 | ## -----BEGIN RSA PRIVATE KEY----- |
| 273 | ## |
| 274 | ## name should line up with a tlsSecret set further up |
| 275 | ## If you're using kube-lego, this is unneeded, as it will create the secret for you if it is not set |
| 276 | ## |
| 277 | ## It is also possible to create and manage the certificates outside of this helm chart |
| 278 | ## Please see README.md for more information |
| 279 | # - name: longhorn.local-tls |
| 280 | # key: |
| 281 | # certificate: |
| 282 | |
| 283 | # For Kubernetes < v1.25, if your cluster enables Pod Security Policy admission controller, |
| 284 | # set this to `true` to ship longhorn-psp which allow privileged Longhorn pods to start |
| 285 | enablePSP: false |
| 286 | |
| 287 | ## Specify override namespace, specifically this is useful for using longhorn as sub-chart |
| 288 | ## and its release namespace is not the `longhorn-system` |
| 289 | namespaceOverride: "" |
| 290 | |
| 291 | # Annotations to add to the Longhorn Manager DaemonSet Pods. Optional. |
| 292 | annotations: {} |
| 293 | |
| 294 | serviceAccount: |
| 295 | # Annotations to add to the service account |
| 296 | annotations: {} |