Skip to content

Commit 7608118

Browse files
authored
Merge pull request #471 from andyzhangx/bring-sa
feat: bring you own service accounts in helm install
2 parents 5820d90 + 1f35a84 commit 7608118

15 files changed

+95
-66
lines changed

charts/README.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,13 @@ The following table lists the configurable parameters of the latest Azure Blob S
6868
| `image.csiResizer.pullPolicy` | csi-resizer image pull policy | IfNotPresent |
6969
| `imagePullSecrets` | Specify docker-registry secret names as an array | [] (does not add image pull secrets to deployed pods) |
7070
| `serviceAccount.create` | whether create service account of csi-blob-controller | true |
71+
| `serviceAccount.controller` | name of service account for csi-blob-controller | csi-blob-controller-sa |
72+
| `serviceAccount.node` | name of service account for csi-blob-node | csi-blob-node-sa |
7173
| `rbac.create` | whether create rbac of csi-blob-controller | true |
74+
| `controller.name` | name of driver deployment | `csi-blob-controller`
7275
| `controller.replicas` | the replicas of csi-blob-controller | 2 |
73-
| `controller.metricsPort` | metrics port of csi-blob-controller | 29634 |
76+
| `controller.metricsPort` | metrics port of csi-blob-controller | `29634` |
77+
| `controller.livenessProbe.healthPort ` | health check port for liveness probe | `29632` |
7478
| `controller.runOnMaster` | run controller on master node | false |
7579
| `controller.logLevel` | controller driver log level | `5` |
7680
| `controller.resources.csiProvisioner.limits.cpu` | csi-provisioner cpu limits | 100m |
@@ -92,7 +96,9 @@ The following table lists the configurable parameters of the latest Azure Blob S
9296
| `controller.affinity` | controller pod affinity | {} |
9397
| `controller.nodeSelector` | controller pod node selector | {} |
9498
| `controller.tolerations` | controller pod tolerations | [] |
95-
| `node.metricsPort` | metrics port of csi-blob-node | 29635 |
99+
| `node.name` | name of driver daemonset | `csi-blob-node`
100+
| `node.metricsPort` | metrics port of csi-blob-node | `29635` |
101+
| `node.livenessProbe.healthPort ` | health check port for liveness probe | `29633` |
96102
| `node.logLevel` | node driver log level | `5` |
97103
| `node.enableBlobfuseProxy` | node enable blobfuse-proxy | false |
98104
| `node.blobfuseCachePath` | blobfuse cache path(`tmp-path`) | `/mnt` |
113 Bytes
Binary file not shown.

charts/latest/blob-csi-driver/templates/csi-blob-controller.yaml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
kind: Deployment
22
apiVersion: apps/v1
33
metadata:
4-
name: csi-blob-controller
4+
name: {{ .Values.controller.name }}
55
namespace: {{ .Release.Namespace }}
66
{{ include "blob.labels" . | indent 2 }}
77
spec:
88
replicas: {{ .Values.controller.replicas }}
99
selector:
1010
matchLabels:
11-
app: csi-blob-controller
11+
app: {{ .Values.controller.name }}
1212
template:
1313
metadata:
1414
{{ include "blob.labels" . | indent 6 }}
15-
app: csi-blob-controller
15+
app: {{ .Values.controller.name }}
1616
{{- if .Values.podLabels }}
1717
{{- toYaml .Values.podLabels | nindent 8 }}
1818
{{- end }}
@@ -30,7 +30,7 @@ spec:
3030
{{ toYaml .Values.imagePullSecrets | indent 8 }}
3131
{{- end }}
3232
hostNetwork: true
33-
serviceAccountName: csi-blob-controller-sa
33+
serviceAccountName: {{ .Values.serviceAccount.controller }}
3434
nodeSelector:
3535
kubernetes.io/os: linux
3636
{{- if .Values.controller.runOnMaster}}
@@ -66,7 +66,7 @@ spec:
6666
args:
6767
- --csi-address=/csi/csi.sock
6868
- --probe-timeout=3s
69-
- --health-port=29632
69+
- --health-port={{ .Values.controller.livenessProbe.healthPort }}
7070
imagePullPolicy: {{ .Values.image.livenessProbe.pullPolicy }}
7171
volumeMounts:
7272
- name: socket-dir
@@ -80,7 +80,7 @@ spec:
8080
- "--metrics-address=0.0.0.0:{{ .Values.controller.metricsPort }}"
8181
- "--drivername={{ .Values.driver.name }}"
8282
ports:
83-
- containerPort: 29632
83+
- containerPort: {{ .Values.controller.livenessProbe.healthPort }}
8484
name: healthz
8585
protocol: TCP
8686
- containerPort: {{ .Values.controller.metricsPort }}

charts/latest/blob-csi-driver/templates/csi-blob-node.yaml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
kind: DaemonSet
22
apiVersion: apps/v1
33
metadata:
4-
name: csi-blob-node
4+
name: {{ .Values.node.name }}
55
namespace: {{ .Release.Namespace }}
66
{{ include "blob.labels" . | indent 2 }}
77
spec:
88
selector:
99
matchLabels:
10-
app: csi-blob-node
10+
app: {{ .Values.node.name }}
1111
template:
1212
metadata:
1313
{{ include "blob.labels" . | indent 6 }}
14-
app: csi-blob-node
14+
app: {{ .Values.node.name }}
1515
{{- if .Values.podLabels }}
1616
{{- toYaml .Values.podLabels | nindent 8 }}
1717
{{- end }}
@@ -26,7 +26,7 @@ spec:
2626
{{- end }}
2727
hostNetwork: true
2828
dnsPolicy: ClusterFirstWithHostNet
29-
serviceAccountName: csi-blob-node-sa
29+
serviceAccountName: {{ .Values.serviceAccount.node }}
3030
nodeSelector:
3131
kubernetes.io/os: linux
3232
{{- with .Values.node.nodeSelector }}
@@ -94,7 +94,7 @@ spec:
9494
- "--metrics-address=0.0.0.0:{{ .Values.node.metricsPort }}"
9595
- "--drivername={{ .Values.driver.name }}"
9696
ports:
97-
- containerPort: 29633
97+
- containerPort: {{ .Values.node.livenessProbe.healthPort }}
9898
name: healthz
9999
protocol: TCP
100100
livenessProbe:

charts/latest/blob-csi-driver/templates/rbac-csi-blob-controller.yaml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
kind: ClusterRole
33
apiVersion: rbac.authorization.k8s.io/v1
44
metadata:
5-
name: blob-external-provisioner-role
5+
name: {{ .Values.rbac.name }}-external-provisioner-role
66
{{ include "blob.labels" . | indent 2 }}
77
rules:
88
- apiGroups: [""]
@@ -32,23 +32,23 @@ rules:
3232
kind: ClusterRoleBinding
3333
apiVersion: rbac.authorization.k8s.io/v1
3434
metadata:
35-
name: blob-csi-provisioner-binding
35+
name: {{ .Values.rbac.name }}-csi-provisioner-binding
3636
{{ include "blob.labels" . | indent 2 }}
3737
subjects:
3838
- kind: ServiceAccount
39-
name: csi-blob-controller-sa
39+
name: {{ .Values.serviceAccount.controller }}
4040
namespace: {{ .Release.Namespace }}
4141
roleRef:
4242
kind: ClusterRole
43-
name: blob-external-provisioner-role
43+
name: {{ .Values.rbac.name }}-external-provisioner-role
4444
apiGroup: rbac.authorization.k8s.io
4545

4646
---
4747

4848
kind: ClusterRole
4949
apiVersion: rbac.authorization.k8s.io/v1
5050
metadata:
51-
name: blob-external-resizer-role
51+
name: {{ .Values.rbac.name }}-external-resizer-role
5252
{{ include "blob.labels" . | indent 2 }}
5353
rules:
5454
- apiGroups: [""]
@@ -70,22 +70,22 @@ rules:
7070
kind: ClusterRoleBinding
7171
apiVersion: rbac.authorization.k8s.io/v1
7272
metadata:
73-
name: blob-csi-resizer-role
73+
name: {{ .Values.rbac.name }}-csi-resizer-role
7474
{{ include "blob.labels" . | indent 2 }}
7575
subjects:
7676
- kind: ServiceAccount
77-
name: csi-blob-controller-sa
77+
name: {{ .Values.serviceAccount.controller }}
7878
namespace: {{ .Release.Namespace }}
7979
roleRef:
8080
kind: ClusterRole
81-
name: blob-external-resizer-role
81+
name: {{ .Values.rbac.name }}-external-resizer-role
8282
apiGroup: rbac.authorization.k8s.io
8383

8484
---
8585
kind: ClusterRole
8686
apiVersion: rbac.authorization.k8s.io/v1
8787
metadata:
88-
name: csi-blob-controller-secret-role
88+
name: csi-{{ .Values.rbac.name }}-controller-secret-role
8989
rules:
9090
- apiGroups: [""]
9191
resources: ["secrets"]
@@ -95,13 +95,13 @@ rules:
9595
kind: ClusterRoleBinding
9696
apiVersion: rbac.authorization.k8s.io/v1
9797
metadata:
98-
name: csi-blob-controller-secret-binding
98+
name: csi-{{ .Values.rbac.name }}-controller-secret-binding
9999
subjects:
100100
- kind: ServiceAccount
101-
name: csi-blob-controller-sa
101+
name: {{ .Values.serviceAccount.controller }}
102102
namespace: {{ .Release.Namespace }}
103103
roleRef:
104104
kind: ClusterRole
105-
name: csi-blob-controller-secret-role
105+
name: csi-{{ .Values.rbac.name }}-controller-secret-role
106106
apiGroup: rbac.authorization.k8s.io
107107
{{ end }}

charts/latest/blob-csi-driver/templates/rbac-csi-blob-node.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
kind: ClusterRole
44
apiVersion: rbac.authorization.k8s.io/v1
55
metadata:
6-
name: csi-blob-node-secret-role
6+
name: csi-{{ .Values.rbac.name }}-node-secret-role
77
rules:
88
- apiGroups: [""]
99
resources: ["secrets"]
@@ -13,13 +13,13 @@ rules:
1313
kind: ClusterRoleBinding
1414
apiVersion: rbac.authorization.k8s.io/v1
1515
metadata:
16-
name: csi-blob-node-secret-binding
16+
name: csi-{{ .Values.rbac.name }}-node-secret-binding
1717
subjects:
1818
- kind: ServiceAccount
19-
name: csi-blob-node-sa
19+
name: {{ .Values.serviceAccount.node }}
2020
namespace: {{ .Release.Namespace }}
2121
roleRef:
2222
kind: ClusterRole
23-
name: csi-blob-node-secret-role
23+
name: csi-{{ .Values.rbac.name }}-node-secret-role
2424
apiGroup: rbac.authorization.k8s.io
2525
{{ end }}

charts/latest/blob-csi-driver/templates/serviceaccount-csi-blob-controller.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
apiVersion: v1
33
kind: ServiceAccount
44
metadata:
5-
name: csi-blob-controller-sa
5+
name: {{ .Values.serviceAccount.controller }}
66
namespace: {{ .Release.Namespace }}
77
{{ include "blob.labels" . | indent 2 }}
88
{{- end -}}

charts/latest/blob-csi-driver/templates/serviceaccount-csi-blob-node.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
apiVersion: v1
33
kind: ServiceAccount
44
metadata:
5-
name: csi-blob-node-sa
5+
name: {{ .Values.serviceAccount.node }}
66
namespace: {{ .Release.Namespace }}
77
{{ include "blob.labels" . | indent 2 }}
88
{{- end -}}

charts/latest/blob-csi-driver/values.yaml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,19 @@ imagePullSecrets: []
2626
# - name: myRegistryKeySecretName
2727

2828
serviceAccount:
29-
create: true
29+
create: true # When true, service accounts will be created for you. Set to false if you want to use your own.
30+
controller: csi-blob-controller-sa # Name of Service Account to be created or used
31+
node: csi-blob-node-sa # Name of Service Account to be created or used
3032

3133
rbac:
3234
create: true
35+
name: blob
3336

3437
controller:
38+
name: csi-blob-controller
3539
metricsPort: 29634
40+
livenessProbe:
41+
healthPort: 29632
3642
replicas: 2
3743
runOnMaster: false
3844
logLevel: 5
@@ -69,16 +75,17 @@ controller:
6975
nodeSelector: {}
7076
tolerations:
7177
- key: "node-role.kubernetes.io/master"
72-
operator: "Equal"
73-
value: "true"
78+
operator: "Exists"
7479
effect: "NoSchedule"
7580
- key: "node-role.kubernetes.io/controlplane"
76-
operator: "Equal"
77-
value: "true"
81+
operator: "Exists"
7882
effect: "NoSchedule"
7983

8084
node:
85+
name: csi-blob-node
8186
metricsPort: 29635
87+
livenessProbe:
88+
healthPort: 29633
8289
logLevel: 5
8390
enableBlobfuseProxy: false
8491
blobfuseCachePath: /mnt

deploy/csi-blob-controller.yaml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,10 @@ spec:
2121
priorityClassName: system-cluster-critical
2222
tolerations:
2323
- key: "node-role.kubernetes.io/master"
24-
operator: "Equal"
25-
value: "true"
24+
operator: "Exists"
2625
effect: "NoSchedule"
2726
- key: "node-role.kubernetes.io/controlplane"
28-
operator: "Equal"
29-
value: "true"
27+
operator: "Exists"
3028
effect: "NoSchedule"
3129
containers:
3230
- name: csi-provisioner

0 commit comments

Comments
 (0)