feat: add affinity, nodeselector, runOnControlPlane in chart config
update chart fix
This commit is contained in:
parent
cfb2766887
commit
7c06c6b5d3
2
Makefile
2
Makefile
@ -42,7 +42,7 @@ REGISTRY_NAME ?= $(shell echo $(REGISTRY) | sed "s/.azurecr.io//g")
|
|||||||
IMAGE_TAG = $(REGISTRY)/$(IMAGENAME):$(IMAGE_VERSION)
|
IMAGE_TAG = $(REGISTRY)/$(IMAGENAME):$(IMAGE_VERSION)
|
||||||
IMAGE_TAG_LATEST = $(REGISTRY)/$(IMAGENAME):latest
|
IMAGE_TAG_LATEST = $(REGISTRY)/$(IMAGENAME):latest
|
||||||
|
|
||||||
E2E_HELM_OPTIONS ?= --set image.nfs.repository=$(REGISTRY)/$(IMAGENAME) --set image.nfs.tag=$(IMAGE_VERSION) --set image.nfs.pullPolicy=Always --set feature.enableInlineVolume=true --set controller.runOnMaster=true
|
E2E_HELM_OPTIONS ?= --set image.nfs.repository=$(REGISTRY)/$(IMAGENAME) --set image.nfs.tag=$(IMAGE_VERSION) --set image.nfs.pullPolicy=Always --set feature.enableInlineVolume=true
|
||||||
E2E_HELM_OPTIONS += ${EXTRA_HELM_OPTIONS}
|
E2E_HELM_OPTIONS += ${EXTRA_HELM_OPTIONS}
|
||||||
|
|
||||||
# Output type of docker buildx build
|
# Output type of docker buildx build
|
||||||
|
|||||||
@ -4,7 +4,7 @@
|
|||||||
- [install Helm](https://helm.sh/docs/intro/quickstart/#install-helm)
|
- [install Helm](https://helm.sh/docs/intro/quickstart/#install-helm)
|
||||||
|
|
||||||
### Tips
|
### Tips
|
||||||
- make controller only run on master node: `--set controller.runOnMaster=true`
|
- run controller on control plane node: `--set controller.runOnControlPlane=true`
|
||||||
- set replica of controller as `2`: `--set controller.replicas=2`
|
- set replica of controller as `2`: `--set controller.replicas=2`
|
||||||
|
|
||||||
### install a specific version
|
### install a specific version
|
||||||
@ -57,10 +57,13 @@ The following table lists the configurable parameters of the latest NFS CSI Driv
|
|||||||
| `serviceAccount.create` | whether create service account of csi-nfs-controller | `true` |
|
| `serviceAccount.create` | whether create service account of csi-nfs-controller | `true` |
|
||||||
| `rbac.create` | whether create rbac of csi-nfs-controller | `true` |
|
| `rbac.create` | whether create rbac of csi-nfs-controller | `true` |
|
||||||
| `controller.replicas` | replica number of csi-nfs-controller | `1` |
|
| `controller.replicas` | replica number of csi-nfs-controller | `1` |
|
||||||
| `controller.runOnMaster` | run controller on master node | `false` |
|
| `controller.runOnMaster` | run controller on master node(deprecated on k8s 1.25+) |`false` |
|
||||||
|
| `controller.runOnControlPlane` | run controller on control plane node |`false` |
|
||||||
| `controller.dnsPolicy` | dnsPolicy of controller driver, available values: `Default`, `ClusterFirstWithHostNet`, `ClusterFirst` | `Default` |
|
| `controller.dnsPolicy` | dnsPolicy of controller driver, available values: `Default`, `ClusterFirstWithHostNet`, `ClusterFirst` | `Default` |
|
||||||
| `controller.logLevel` | controller driver log level |`5` |
|
| `controller.logLevel` | controller driver log level |`5` |
|
||||||
| `controller.workingMountDir` | working directory for provisioner to mount nfs shares temporarily | `/tmp` |
|
| `controller.workingMountDir` | working directory for provisioner to mount nfs shares temporarily | `/tmp` |
|
||||||
|
| `controller.affinity` | controller pod affinity | `{}` |
|
||||||
|
| `controller.nodeSelector` | controller pod node selector | `{}` |
|
||||||
| `controller.tolerations` | controller pod tolerations | |
|
| `controller.tolerations` | controller pod tolerations | |
|
||||||
| `controller.resources.csiProvisioner.limits.memory` | csi-provisioner memory limits | 100Mi |
|
| `controller.resources.csiProvisioner.limits.memory` | csi-provisioner memory limits | 100Mi |
|
||||||
| `controller.resources.csiProvisioner.requests.cpu` | csi-provisioner cpu requests limits | 10m |
|
| `controller.resources.csiProvisioner.requests.cpu` | csi-provisioner cpu requests limits | 10m |
|
||||||
@ -76,6 +79,8 @@ The following table lists the configurable parameters of the latest NFS CSI Driv
|
|||||||
| `node.maxUnavailable` | `maxUnavailable` value of driver node daemonset | `1`
|
| `node.maxUnavailable` | `maxUnavailable` value of driver node daemonset | `1`
|
||||||
| `node.logLevel` | node driver log level |`5` |
|
| `node.logLevel` | node driver log level |`5` |
|
||||||
| `node.livenessProbe.healthPort ` | the health check port for liveness probe |`29653` |
|
| `node.livenessProbe.healthPort ` | the health check port for liveness probe |`29653` |
|
||||||
|
| `node.affinity` | node pod affinity | {} |
|
||||||
|
| `node.nodeSelector` | node pod node selector | `{}` |
|
||||||
| `node.tolerations` | node pod tolerations | |
|
| `node.tolerations` | node pod tolerations | |
|
||||||
| `node.resources.livenessProbe.limits.memory` | liveness-probe memory limits | 100Mi |
|
| `node.resources.livenessProbe.limits.memory` | liveness-probe memory limits | 100Mi |
|
||||||
| `node.resources.livenessProbe.requests.cpu` | liveness-probe cpu requests limits | 10m |
|
| `node.resources.livenessProbe.requests.cpu` | liveness-probe cpu requests limits | 10m |
|
||||||
|
|||||||
Binary file not shown.
@ -22,10 +22,20 @@ spec:
|
|||||||
hostNetwork: true # controller also needs to mount nfs to create dir
|
hostNetwork: true # controller also needs to mount nfs to create dir
|
||||||
dnsPolicy: {{ .Values.controller.dnsPolicy }}
|
dnsPolicy: {{ .Values.controller.dnsPolicy }}
|
||||||
serviceAccountName: {{ .Values.serviceAccount.controller }}
|
serviceAccountName: {{ .Values.serviceAccount.controller }}
|
||||||
|
{{- with .Values.controller.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
kubernetes.io/os: linux
|
kubernetes.io/os: linux
|
||||||
{{- if .Values.controller.runOnMaster}}
|
{{- if .Values.controller.runOnMaster}}
|
||||||
node-role.kubernetes.io/master: ""
|
node-role.kubernetes.io/master: ""
|
||||||
|
{{- end}}
|
||||||
|
{{- if .Values.controller.runOnControlPlane}}
|
||||||
|
node-role.kubernetes.io/control-plane: ""
|
||||||
|
{{- end}}
|
||||||
|
{{- with .Values.controller.nodeSelector }}
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
priorityClassName: system-cluster-critical
|
priorityClassName: system-cluster-critical
|
||||||
{{- with .Values.controller.tolerations }}
|
{{- with .Values.controller.tolerations }}
|
||||||
|
|||||||
@ -25,8 +25,15 @@ spec:
|
|||||||
hostNetwork: true # original nfs connection would be broken without hostNetwork setting
|
hostNetwork: true # original nfs connection would be broken without hostNetwork setting
|
||||||
dnsPolicy: {{ .Values.controller.dnsPolicy }}
|
dnsPolicy: {{ .Values.controller.dnsPolicy }}
|
||||||
serviceAccountName: csi-nfs-node-sa
|
serviceAccountName: csi-nfs-node-sa
|
||||||
|
{{- with .Values.node.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
kubernetes.io/os: linux
|
kubernetes.io/os: linux
|
||||||
|
{{- with .Values.node.nodeSelector }}
|
||||||
|
{{ toYaml . | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
{{- with .Values.node.tolerations }}
|
{{- with .Values.node.tolerations }}
|
||||||
tolerations:
|
tolerations:
|
||||||
{{ toYaml . | indent 8 }}
|
{{ toYaml . | indent 8 }}
|
||||||
|
|||||||
@ -44,6 +44,8 @@ controller:
|
|||||||
logLevel: 5
|
logLevel: 5
|
||||||
workingMountDir: "/tmp"
|
workingMountDir: "/tmp"
|
||||||
dnsPolicy: Default # available values: Default, ClusterFirstWithHostNet, ClusterFirst
|
dnsPolicy: Default # available values: Default, ClusterFirstWithHostNet, ClusterFirst
|
||||||
|
affinity: {}
|
||||||
|
nodeSelector: {}
|
||||||
tolerations:
|
tolerations:
|
||||||
- key: "node-role.kubernetes.io/master"
|
- key: "node-role.kubernetes.io/master"
|
||||||
operator: "Exists"
|
operator: "Exists"
|
||||||
@ -81,6 +83,8 @@ node:
|
|||||||
logLevel: 5
|
logLevel: 5
|
||||||
livenessProbe:
|
livenessProbe:
|
||||||
healthPort: 29653
|
healthPort: 29653
|
||||||
|
affinity: {}
|
||||||
|
nodeSelector: {}
|
||||||
tolerations:
|
tolerations:
|
||||||
- operator: "Exists"
|
- operator: "Exists"
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
@ -29,7 +29,7 @@ setup_e2e_binaries() {
|
|||||||
curl -sL https://storage.googleapis.com/kubernetes-release/release/v1.24.0/kubernetes-test-linux-amd64.tar.gz --output e2e-tests.tar.gz
|
curl -sL https://storage.googleapis.com/kubernetes-release/release/v1.24.0/kubernetes-test-linux-amd64.tar.gz --output e2e-tests.tar.gz
|
||||||
tar -xvf e2e-tests.tar.gz && rm e2e-tests.tar.gz
|
tar -xvf e2e-tests.tar.gz && rm e2e-tests.tar.gz
|
||||||
|
|
||||||
export EXTRA_HELM_OPTIONS="--set driver.name=$DRIVER.csi.k8s.io --set controller.name=csi-$DRIVER-controller --set node.name=csi-$DRIVER-node --set feature.enableInlineVolume=true --set controller.runOnMaster=true"
|
export EXTRA_HELM_OPTIONS="--set driver.name=$DRIVER.csi.k8s.io --set controller.name=csi-$DRIVER-controller --set node.name=csi-$DRIVER-node --set feature.enableInlineVolume=true"
|
||||||
|
|
||||||
# test on alternative driver name
|
# test on alternative driver name
|
||||||
sed -i "s/nfs.csi.k8s.io/$DRIVER.csi.k8s.io/g" deploy/example/storageclass-nfs.yaml
|
sed -i "s/nfs.csi.k8s.io/$DRIVER.csi.k8s.io/g" deploy/example/storageclass-nfs.yaml
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user