k8s.io/kubernetes@v1.29.3/test/e2e/testing-manifests/storage-csi/gce-pd/node_ds.yaml (about)

     1  kind: DaemonSet
     2  apiVersion: apps/v1
     3  metadata:
     4    name: csi-gce-pd-node
     5  spec:
     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