...
1kind: DaemonSet
2apiVersion: apps/v1
3metadata:
4 name: csi-gce-pd-node
5spec:
6 selector:
7 matchLabels:
8 app: gcp-compute-persistent-disk-csi-driver
9 template:
10 metadata:
11 labels:
12 app: gcp-compute-persistent-disk-csi-driver
13 spec:
14 containers:
15 - name: csi-driver-registrar
16 image: registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.5.1
17 args:
18 - "--v=5"
19 - "--csi-address=/csi/csi.sock"
20 - "--kubelet-registration-path=/var/lib/kubelet/plugins/pd.csi.storage.gke.io/csi.sock"
21 - "--http-endpoint=:22013"
22 lifecycle:
23 preStop:
24 exec:
25 command: ["/bin/sh", "-c", "rm -rf /registration/pd.csi.storage.gke.io /registration/pd.csi.storage.gke.io-reg.sock"]
26 env:
27 - name: KUBE_NODE_NAME
28 valueFrom:
29 fieldRef:
30 fieldPath: spec.nodeName
31 ports:
32 - containerPort: 22013
33 name: http-endpoint
34 protocol: TCP
35 livenessProbe:
36 failureThreshold: 1
37 httpGet:
38 path: /healthz
39 port: http-endpoint
40 initialDelaySeconds: 10
41 timeoutSeconds: 10
42 periodSeconds: 20
43 volumeMounts:
44 - name: plugin-dir
45 mountPath: /csi
46 - name: registration-dir
47 mountPath: /registration
48 - name: gce-pd-driver
49 securityContext:
50 privileged: true
51 image: registry.k8s.io/cloud-provider-gcp/gcp-compute-persistent-disk-csi-driver:v1.2.2
52 args:
53 - "--v=5"
54 - "--endpoint=unix:/csi/csi.sock"
55 - "--run-controller-service=false"
56 volumeMounts:
57 - name: kubelet-dir
58 mountPath: /var/lib/kubelet
59 mountPropagation: "Bidirectional"
60 - name: plugin-dir
61 mountPath: /csi
62 - name: device-dir
63 mountPath: /dev
64 # The following mounts are required to trigger host udevadm from
65 # container
66 - name: udev-rules-etc
67 mountPath: /etc/udev
68 - name: udev-rules-lib
69 mountPath: /lib/udev
70 - name: udev-socket
71 mountPath: /run/udev
72 - name: sys
73 mountPath: /sys
74 volumes:
75 - name: registration-dir
76 hostPath:
77 path: /var/lib/kubelet/plugins_registry/
78 type: Directory
79 - name: kubelet-dir
80 hostPath:
81 path: /var/lib/kubelet
82 type: Directory
83 - name: plugin-dir
84 hostPath:
85 path: /var/lib/kubelet/plugins/pd.csi.storage.gke.io/
86 type: DirectoryOrCreate
87 - name: device-dir
88 hostPath:
89 path: /dev
90 type: Directory
91 # The following mounts are required to trigger host udevadm from
92 # container
93 - name: udev-rules-etc
94 hostPath:
95 path: /etc/udev
96 type: Directory
97 - name: udev-rules-lib
98 hostPath:
99 path: /lib/udev
100 type: Directory
101 - name: udev-socket
102 hostPath:
103 path: /run/udev
104 type: Directory
105 - name: sys
106 hostPath:
107 path: /sys
108 type: Directory
109 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
110 # See "special case". This will tolerate everything. Node component should
111 # be scheduled on all nodes.
112 tolerations:
113 - operator: Exists
114 nodeSelector:
115 kubernetes.io/os: linux
View as plain text