chart: support Rancher deployed Windows Cluster
Longhorn-4262 Signed-off-by: Chin-Ya Huang <chin-ya.huang@suse.com>
This commit is contained in:
parent
0ed376c4cc
commit
c9161b9ca7
@ -621,3 +621,9 @@ WARNING:
|
|||||||
label: Pod Security Policy
|
label: Pod Security Policy
|
||||||
type: boolean
|
type: boolean
|
||||||
group: "Other Settings"
|
group: "Other Settings"
|
||||||
|
- variable: global.cattle.windowsCluster.enabled
|
||||||
|
default: "false"
|
||||||
|
description: "Enable this to allow Longhorn to run on the Rancher deployed Windows cluster."
|
||||||
|
label: Rancher Windows Cluster
|
||||||
|
type: boolean
|
||||||
|
group: "Other Settings"
|
||||||
|
@ -82,15 +82,25 @@ spec:
|
|||||||
- name: {{ .Values.privateRegistry.registrySecret }}
|
- name: {{ .Values.privateRegistry.registrySecret }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornManager.priorityClass }}
|
{{- if .Values.longhornManager.priorityClass }}
|
||||||
priorityClassName: {{ .Values.longhornManager.priorityClass | quote}}
|
priorityClassName: {{ .Values.longhornManager.priorityClass | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornManager.tolerations }}
|
{{- if or .Values.longhornManager.tolerations .Values.global.cattle.windowsCluster.enabled }}
|
||||||
tolerations:
|
tolerations:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornManager.tolerations }}
|
||||||
{{ toYaml .Values.longhornManager.tolerations | indent 6 }}
|
{{ toYaml .Values.longhornManager.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornManager.nodeSelector }}
|
{{- if or .Values.longhornManager.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornManager.nodeSelector }}
|
||||||
{{ toYaml .Values.longhornManager.nodeSelector | indent 8 }}
|
{{ toYaml .Values.longhornManager.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
serviceAccountName: longhorn-service-account
|
serviceAccountName: longhorn-service-account
|
||||||
updateStrategy:
|
updateStrategy:
|
||||||
|
@ -20,8 +20,26 @@ data:
|
|||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.defaultDataLocality) }}default-data-locality: {{ .Values.defaultSettings.defaultDataLocality }}{{ end }}
|
{{ if not (kindIs "invalid" .Values.defaultSettings.defaultDataLocality) }}default-data-locality: {{ .Values.defaultSettings.defaultDataLocality }}{{ end }}
|
||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.defaultLonghornStaticStorageClass) }}default-longhorn-static-storage-class: {{ .Values.defaultSettings.defaultLonghornStaticStorageClass }}{{ end }}
|
{{ if not (kindIs "invalid" .Values.defaultSettings.defaultLonghornStaticStorageClass) }}default-longhorn-static-storage-class: {{ .Values.defaultSettings.defaultLonghornStaticStorageClass }}{{ end }}
|
||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.backupstorePollInterval) }}backupstore-poll-interval: {{ .Values.defaultSettings.backupstorePollInterval }}{{ end }}
|
{{ if not (kindIs "invalid" .Values.defaultSettings.backupstorePollInterval) }}backupstore-poll-interval: {{ .Values.defaultSettings.backupstorePollInterval }}{{ end }}
|
||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.taintToleration) }}taint-toleration: {{ .Values.defaultSettings.taintToleration }}{{ end }}
|
{{- if or (not (kindIs "invalid" .Values.defaultSettings.taintToleration)) (not (kindIs "invalid" .Values.global.cattle.windowsCluster.enabled)) }}
|
||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.systemManagedComponentsNodeSelector) }}system-managed-components-node-selector: {{ .Values.defaultSettings.systemManagedComponentsNodeSelector }}{{ end }}
|
taint-toleration: {{ $windowsDefaultSettingTaintToleration := list }}{{ $defaultSettingTaintToleration := list -}}
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.defaultSetting.taintToleration -}}
|
||||||
|
{{- $windowsDefaultSettingTaintToleration = .Values.global.cattle.windowsCluster.defaultSetting.taintToleration -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- if not (kindIs "invalid" .Values.defaultSettings.taintToleration) -}}
|
||||||
|
{{- $defaultSettingTaintToleration = .Values.defaultSettings.taintToleration -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $taintToleration := list $windowsDefaultSettingTaintToleration $defaultSettingTaintToleration }}{{ join ";" (compact $taintToleration) -}}
|
||||||
|
{{- end }}
|
||||||
|
{{- if or (not (kindIs "invalid" .Values.defaultSettings.systemManagedComponentsNodeSelector)) (not (kindIs "invalid" .Values.global.cattle.windowsCluster.enabled)) }}
|
||||||
|
system-managed-components-node-selector: {{ $windowsDefaultSettingNodeSelector := list }}{{ $defaultSettingNodeSelector := list -}}
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.defaultSetting.systemManagedComponentsNodeSelector -}}
|
||||||
|
{{ $windowsDefaultSettingNodeSelector = .Values.global.cattle.windowsCluster.defaultSetting.systemManagedComponentsNodeSelector -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- if not (kindIs "invalid" .Values.defaultSettings.systemManagedComponentsNodeSelector) -}}
|
||||||
|
{{- $defaultSettingNodeSelector = .Values.defaultSettings.systemManagedComponentsNodeSelector -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- $nodeSelector := list $windowsDefaultSettingNodeSelector $defaultSettingNodeSelector }}{{ join ";" (compact $nodeSelector) -}}
|
||||||
|
{{- end }}
|
||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.priorityClass) }}priority-class: {{ .Values.defaultSettings.priorityClass }}{{ end }}
|
{{ if not (kindIs "invalid" .Values.defaultSettings.priorityClass) }}priority-class: {{ .Values.defaultSettings.priorityClass }}{{ end }}
|
||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.autoSalvage) }}auto-salvage: {{ .Values.defaultSettings.autoSalvage }}{{ end }}
|
{{ if not (kindIs "invalid" .Values.defaultSettings.autoSalvage) }}auto-salvage: {{ .Values.defaultSettings.autoSalvage }}{{ end }}
|
||||||
{{ if not (kindIs "invalid" .Values.defaultSettings.autoDeletePodWhenVolumeDetachedUnexpectedly) }}auto-delete-pod-when-volume-detached-unexpectedly: {{ .Values.defaultSettings.autoDeletePodWhenVolumeDetachedUnexpectedly }}{{ end }}
|
{{ if not (kindIs "invalid" .Values.defaultSettings.autoDeletePodWhenVolumeDetachedUnexpectedly) }}auto-delete-pod-when-volume-detached-unexpectedly: {{ .Values.defaultSettings.autoDeletePodWhenVolumeDetachedUnexpectedly }}{{ end }}
|
||||||
|
@ -89,15 +89,25 @@ spec:
|
|||||||
- name: {{ .Values.privateRegistry.registrySecret }}
|
- name: {{ .Values.privateRegistry.registrySecret }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornDriver.priorityClass }}
|
{{- if .Values.longhornDriver.priorityClass }}
|
||||||
priorityClassName: {{ .Values.longhornDriver.priorityClass | quote}}
|
priorityClassName: {{ .Values.longhornDriver.priorityClass | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornDriver.tolerations }}
|
{{- if or .Values.longhornDriver.tolerations .Values.global.cattle.windowsCluster.enabled }}
|
||||||
tolerations:
|
tolerations:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornDriver.tolerations }}
|
||||||
{{ toYaml .Values.longhornDriver.tolerations | indent 6 }}
|
{{ toYaml .Values.longhornDriver.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornDriver.nodeSelector }}
|
{{- if or .Values.longhornDriver.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornDriver.nodeSelector }}
|
||||||
{{ toYaml .Values.longhornDriver.nodeSelector | indent 8 }}
|
{{ toYaml .Values.longhornDriver.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
serviceAccountName: longhorn-service-account
|
serviceAccountName: longhorn-service-account
|
||||||
securityContext:
|
securityContext:
|
||||||
|
@ -44,15 +44,25 @@ spec:
|
|||||||
- name: {{ .Values.privateRegistry.registrySecret }}
|
- name: {{ .Values.privateRegistry.registrySecret }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornUI.priorityClass }}
|
{{- if .Values.longhornUI.priorityClass }}
|
||||||
priorityClassName: {{ .Values.longhornUI.priorityClass | quote}}
|
priorityClassName: {{ .Values.longhornUI.priorityClass | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornUI.tolerations }}
|
{{- if or .Values.longhornUI.tolerations .Values.global.cattle.windowsCluster.enabled }}
|
||||||
tolerations:
|
tolerations:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornUI.tolerations }}
|
||||||
{{ toYaml .Values.longhornUI.tolerations | indent 6 }}
|
{{ toYaml .Values.longhornUI.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornUI.nodeSelector }}
|
{{- if or .Values.longhornUI.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornUI.nodeSelector }}
|
||||||
{{ toYaml .Values.longhornUI.nodeSelector | indent 8 }}
|
{{ toYaml .Values.longhornUI.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
---
|
---
|
||||||
kind: Service
|
kind: Service
|
||||||
|
@ -35,14 +35,24 @@ spec:
|
|||||||
- name: {{ .Values.privateRegistry.registrySecret }}
|
- name: {{ .Values.privateRegistry.registrySecret }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornManager.priorityClass }}
|
{{- if .Values.longhornManager.priorityClass }}
|
||||||
priorityClassName: {{ .Values.longhornManager.priorityClass | quote}}
|
priorityClassName: {{ .Values.longhornManager.priorityClass | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
serviceAccountName: longhorn-service-account
|
serviceAccountName: longhorn-service-account
|
||||||
{{- if .Values.longhornManager.tolerations }}
|
{{- if or .Values.longhornManager.tolerations .Values.global.cattle.windowsCluster.enabled }}
|
||||||
tolerations:
|
tolerations:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornManager.tolerations }}
|
||||||
{{ toYaml .Values.longhornManager.tolerations | indent 6 }}
|
{{ toYaml .Values.longhornManager.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornManager.nodeSelector }}
|
{{- if or .Values.longhornManager.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornManager.nodeSelector }}
|
||||||
{{ toYaml .Values.longhornManager.nodeSelector | indent 8 }}
|
{{ toYaml .Values.longhornManager.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@ -21,10 +21,10 @@ data:
|
|||||||
staleReplicaTimeout: "30"
|
staleReplicaTimeout: "30"
|
||||||
fromBackup: ""
|
fromBackup: ""
|
||||||
{{- if .Values.persistence.defaultFsType }}
|
{{- if .Values.persistence.defaultFsType }}
|
||||||
fsType: "{{.Values.persistence.defaultFsType}}"
|
fsType: "{{ .Values.persistence.defaultFsType }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.persistence.migratable }}
|
{{- if .Values.persistence.migratable }}
|
||||||
migratable: "{{.Values.persistence.migratable}}"
|
migratable: "{{ .Values.persistence.migratable }}"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.persistence.backingImage.enable }}
|
{{- if .Values.persistence.backingImage.enable }}
|
||||||
backingImage: {{ .Values.persistence.backingImage.name }}
|
backingImage: {{ .Values.persistence.backingImage.name }}
|
||||||
|
@ -36,14 +36,24 @@ spec:
|
|||||||
- name: {{ .Values.privateRegistry.registrySecret }}
|
- name: {{ .Values.privateRegistry.registrySecret }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornManager.priorityClass }}
|
{{- if .Values.longhornManager.priorityClass }}
|
||||||
priorityClassName: {{ .Values.longhornManager.priorityClass | quote}}
|
priorityClassName: {{ .Values.longhornManager.priorityClass | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
serviceAccountName: longhorn-service-account
|
serviceAccountName: longhorn-service-account
|
||||||
{{- if .Values.longhornManager.tolerations }}
|
{{- if or .Values.longhornManager.tolerations .Values.global.cattle.windowsCluster.enabled }}
|
||||||
tolerations:
|
tolerations:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.tolerations }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.longhornManager.tolerations }}
|
||||||
{{ toYaml .Values.longhornManager.tolerations | indent 6 }}
|
{{ toYaml .Values.longhornManager.tolerations | indent 6 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.longhornManager.nodeSelector }}
|
{{- if or .Values.longhornManager.nodeSelector .Values.global.cattle.windowsCluster.enabled }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
|
{{- if and .Values.global.cattle.windowsCluster.enabled .Values.global.cattle.windowsCluster.nodeSelector }}
|
||||||
|
{{ toYaml .Values.global.cattle.windowsCluster.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if or .Values.longhornManager.nodeSelector }}
|
||||||
{{ toYaml .Values.longhornManager.nodeSelector | indent 8 }}
|
{{ toYaml .Values.longhornManager.nodeSelector | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@ -4,6 +4,22 @@
|
|||||||
global:
|
global:
|
||||||
cattle:
|
cattle:
|
||||||
systemDefaultRegistry: ""
|
systemDefaultRegistry: ""
|
||||||
|
windowsCluster:
|
||||||
|
# Enable this to allow Longhorn to run on the Rancher deployed Windows cluster
|
||||||
|
enabled: false
|
||||||
|
# Tolerate Linux node taint
|
||||||
|
tolerations:
|
||||||
|
- key: "cattle.io/os"
|
||||||
|
value: "linux"
|
||||||
|
effect: "NoSchedule"
|
||||||
|
operator: "Equal"
|
||||||
|
# Select Linux nodes
|
||||||
|
nodeSelector:
|
||||||
|
kubernetes.io/os: "linux"
|
||||||
|
# Recognize toleration and node selector for Longhorn run-time created components
|
||||||
|
defaultSetting:
|
||||||
|
taintToleration: cattle.io/os=linux:NoSchedule
|
||||||
|
systemManagedComponentsNodeSelector: kubernetes.io/os:linux
|
||||||
|
|
||||||
image:
|
image:
|
||||||
longhorn:
|
longhorn:
|
||||||
|
Loading…
Reference in New Issue
Block a user