--- kind: DaemonSet apiVersion: apps/v1beta2 metadata: name: csi-rbdplugin spec: selector: matchLabels: app: csi-rbdplugin template: metadata: labels: app: csi-rbdplugin spec: serviceAccount: rbd-csi-nodeplugin hostNetwork: true hostPID: true # to use e.g. Rook orchestrated cluster, and mons' FQDN is # resolved through k8s service, set dns policy to cluster first dnsPolicy: ClusterFirstWithHostNet containers: - name: driver-registrar image: quay.io/k8scsi/csi-node-driver-registrar:v1.0.2 args: - "--v=5" - "--csi-address=/csi/csi.sock" - "--kubelet-registration-path=/var/lib/kubelet/plugins/rbd.csi.ceph.com/csi.sock" lifecycle: preStop: exec: command: [ "/bin/sh", "-c", "rm -rf /registration/rbd.csi.ceph.com \ /registration/rbd.csi.ceph.com-reg.sock" ] env: - name: KUBE_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName volumeMounts: - name: plugin-dir mountPath: /csi - name: registration-dir mountPath: /registration - name: csi-rbdplugin securityContext: privileged: true capabilities: add: ["SYS_ADMIN"] allowPrivilegeEscalation: true image: quay.io/cephcsi/rbdplugin:v1.0.0 args: - "--nodeid=$(NODE_ID)" - "--endpoint=$(CSI_ENDPOINT)" - "--v=5" - "--drivername=rbd.csi.ceph.com" - "--containerized=true" - "--metadatastorage=k8s_configmap" env: - name: HOST_ROOTFS value: "/rootfs" - name: NODE_ID valueFrom: fieldRef: fieldPath: spec.nodeName - name: POD_NAMESPACE valueFrom: fieldRef: fieldPath: metadata.namespace - name: CSI_ENDPOINT value: unix:///csi/csi.sock imagePullPolicy: "IfNotPresent" volumeMounts: - name: plugin-dir mountPath: /csi - name: pods-mount-dir mountPath: /var/lib/kubelet/pods mountPropagation: "Bidirectional" - name: plugin-mount-dir mountPath: /var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/ mountPropagation: "Bidirectional" - mountPath: /dev name: host-dev - mountPath: /rootfs name: host-rootfs - mountPath: /sys name: host-sys - mountPath: /lib/modules name: lib-modules readOnly: true volumes: - name: plugin-dir hostPath: path: /var/lib/kubelet/plugins/rbd.csi.ceph.com type: DirectoryOrCreate - name: plugin-mount-dir hostPath: path: /var/lib/kubelet/plugins/kubernetes.io/csi/volumeDevices/ type: DirectoryOrCreate - name: registration-dir hostPath: path: /var/lib/kubelet/plugins_registry/ type: Directory - name: pods-mount-dir hostPath: path: /var/lib/kubelet/pods type: Directory - name: host-dev hostPath: path: /dev - name: host-rootfs hostPath: path: / - name: host-sys hostPath: path: /sys - name: lib-modules hostPath: path: /lib/modules