--- # Patch for px-pure-csi-node DaemonSet to work on Talos Linux # This version DISABLES multipath to avoid multipath.conf issues on Talos # Apply with: kubectl patch daemonset px-pure-csi-node -n portworx --patch-file px-csi-talos-patch-v2.yaml apiVersion: apps/v1 kind: DaemonSet metadata: name: px-pure-csi-node namespace: portworx spec: template: spec: containers: - name: node-plugin env: # CRITICAL: Disable multipath to avoid /etc/multipath.conf requirement - name: DISABLE_MULTIPATH value: "true" # Keep existing env vars (these will merge with existing) - name: PX_LOGLEVEL value: INFO - name: LOG_FILE value: /var/log/px-pure-csi/node.log - name: PURE_DISCOVERY_CONF value: /config/pure.json - name: CSI_ENDPOINT value: unix:/csi/csi.sock - name: CSI_NODE_NAME valueFrom: fieldRef: apiVersion: v1 fieldPath: spec.nodeName - name: NAMESPACE valueFrom: fieldRef: apiVersion: v1 fieldPath: metadata.namespace - name: CLUSTER_UUID valueFrom: configMapKeyRef: key: ClusterUUID name: pure-storage-cluster-cm - name: CLUSTER_NAME valueFrom: configMapKeyRef: key: ClusterName name: pure-storage-cluster-cm - name: NODE_STAGE_CONCURRENCY value: "25" - name: PURE_FLASHARRAY_SAN_TYPE value: ISCSI volumeMounts: # Add Talos-specific mounts - name: usr-local-sbin mountPath: /usr/local/sbin mountPropagation: Bidirectional - name: var-lib-iscsi mountPath: /var/lib/iscsi mountPropagation: Bidirectional # Fix existing mounts (keep originals, add propagation) - name: log-dir mountPath: /var/log/px-pure-csi - name: sys mountPath: /sys - name: kubelet-dir mountPath: /var/lib/kubelet mountPropagation: Bidirectional - name: kubelet-dir mountPath: /csi subPath: plugins/pxd.portworx.com - name: device-dir mountPath: /dev - name: iscsi mountPath: /etc/iscsi - name: host-root mountPath: /host mountPropagation: Bidirectional volumes: # Add Talos-specific volumes - name: usr-local-sbin hostPath: path: /usr/local/sbin type: Directory - name: var-lib-iscsi hostPath: path: /var/lib/iscsi type: DirectoryOrCreate - name: host-root hostPath: path: / type: Directory # Keep existing volumes - name: kubelet-dir hostPath: path: /var/lib/kubelet - name: log-dir hostPath: path: /var/log/px-pure-csi - name: device-dir hostPath: path: /dev type: Directory - name: probe-dir emptyDir: {} - name: iscsi hostPath: path: /etc/iscsi - name: pure-config secret: secretName: px-pure-secret items: - key: pure.json path: pure.json - name: sys hostPath: path: /sys