Skip to content

Commit d13a57d

Browse files
committed
Adding leader election to controllers in staging rc
1 parent 85088c4 commit d13a57d

File tree

3 files changed

+117
-0
lines changed

3 files changed

+117
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# for external-provisioner
2+
- op: add
3+
path: /spec/template/spec/containers/0/args/-
4+
value: "--enable-leader-election"
5+
6+
- op: add
7+
path: /spec/template/spec/containers/0/args/-
8+
value: "--leader-election-type=leases"
9+
10+
- op: add
11+
path: /spec/template/spec/containers/0/args/-
12+
value: "--leader-election-namespace=$(PDCSI_NAMESPACE)"
13+
14+
- op: add
15+
path: /spec/template/spec/containers/0/env
16+
value:
17+
- name: PDCSI_NAMESPACE
18+
valueFrom:
19+
fieldRef:
20+
fieldPath: metadata.namespace
21+
22+
23+
# # for external-attacher
24+
- op: add
25+
path: /spec/template/spec/containers/1/args/-
26+
value: "--leader-election"
27+
28+
- op: add
29+
path: /spec/template/spec/containers/1/args/-
30+
value: "--leader-election-namespace=$(PDCSI_NAMESPACE)"
31+
32+
- op: add
33+
path: /spec/template/spec/containers/1/env
34+
value:
35+
- name: PDCSI_NAMESPACE
36+
valueFrom:
37+
fieldRef:
38+
fieldPath: metadata.namespace
39+
40+
41+
# # for external-resizer
42+
- op: add
43+
path: /spec/template/spec/containers/2/args/-
44+
value: "--leader-election"
45+
46+
- op: add
47+
path: /spec/template/spec/containers/2/args/-
48+
value: "--leader-election-namespace=$(PDCSI_NAMESPACE)"
49+
50+
- op: add
51+
path: /spec/template/spec/containers/2/env
52+
value:
53+
- name: PDCSI_NAMESPACE
54+
valueFrom:
55+
fieldRef:
56+
fieldPath: metadata.namespace
57+
58+
59+
# for external-snapshotter
60+
- op: add
61+
path: /spec/template/spec/containers/3/args/-
62+
value: "--leader-election"
63+
64+
- op: add
65+
path: /spec/template/spec/containers/3/args/-
66+
value: "--leader-election-namespace=$(PDCSI_NAMESPACE)"
67+
68+
- op: add
69+
path: /spec/template/spec/containers/3/env
70+
value:
71+
- name: PDCSI_NAMESPACE
72+
valueFrom:
73+
fieldRef:
74+
fieldPath: metadata.namespace

deploy/kubernetes/overlays/prow-gke-release-staging-rc/kustomization.yaml

+17
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,20 @@ images:
2121
- name: gke.gcr.io/csi-snapshotter
2222
newName: gcr.io/gke-release-staging/csi-snapshotter
2323
newTag: "v2.1.1-gke.0"
24+
25+
resources:
26+
- leader-election-rbac.yaml
27+
28+
patchesJson6902:
29+
- target:
30+
group: apps
31+
version: v1
32+
kind: StatefulSet
33+
name: csi-gce-pd-controller
34+
path: enable-leader-election.yaml
35+
- target:
36+
group: apps
37+
version: v1
38+
kind: StatefulSet
39+
name: csi-gce-pd-controller
40+
path: statefulset-to-deployment.yaml
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
kind: Role
2+
apiVersion: rbac.authorization.k8s.io/v1
3+
metadata:
4+
name: csi-gce-pd-leaderelection-role
5+
namespace: gce-pd-csi-driver
6+
labels:
7+
k8s-app: gcp-compute-persistent-disk-csi-driver
8+
rules:
9+
- apiGroups: ["coordination.k8s.io"]
10+
resources: ["leases"]
11+
verbs: ["get", "watch", "list", "delete", "update", "create"]
12+
---
13+
kind: RoleBinding
14+
apiVersion: rbac.authorization.k8s.io/v1
15+
metadata:
16+
name: csi-gce-pd-controller-leaderelection-binding
17+
namespace: gce-pd-csi-driver
18+
labels:
19+
k8s-app: gcp-compute-persistent-disk-csi-driver
20+
subjects:
21+
- kind: ServiceAccount
22+
name: csi-gce-pd-controller-sa
23+
roleRef:
24+
kind: Role
25+
name: csi-gce-pd-leaderelection-role
26+
apiGroup: rbac.authorization.k8s.io

0 commit comments

Comments
 (0)