Managing Container Storage Interface (CSI) component placements
You can set tolerations to run the Container Storage Interface (CSI) components on the
infra nodes with custom taints.
About this task
Each cluster consists of multiple dedicated nodes, such as infra and
storage nodes. However, infra nodes with custom taints cannot use
Fusion Data Foundation persistent volume claims (PVCs). To use
these nodes, set tolerations to run the Container Storage Interface (CSI) plugins
(csi-plugins) on the nodes. For more information, see How to label Red
Hat OpenShift Storage "nodes" as infra node? in the Red Hat Knowledgebase.
Procedure
-
Open the CSI driver custom resource to add the toleration for the custom taint.
Command example:oc edit drivers.csi.ceph.io openshift-storage.rbd.csi.ceph.com -
Add the required tolerations.
Example:apiVersion: csi.ceph.io/v1 kind: Driver metadata: name: openshift-storage.rbd.csi.ceph.com spec: -------- nodePlugin: tolerations: - key: node-role.kubernetes.io/master operator operator: Exists effect: NoSchedule - key: node-role.kubernetes.io/storage operator operator: Exists effect: NoSchedule -
Verify that toleration are added successfully.
Command example:oc get drivers.csi.ceph.io openshift-storage.rbd.csi.ceph.com -oyaml | yq -r .specOutput example:generateOMapInfo: truenodePlugin: tolerations: effect: NoSchedule key: node-role.kubernetes.io/master operator: Exists effect: NoSchedule key: node.ocs.openshift.io/storage operator: Equal value: "true"
What to do next
Verify that the csi-cephfsplugin-* and csi-rbdplugin-* pods are
running on the infra nodes.