第11章 Container Storage Interface (CSI) コンポーネントの配置の管理

各クラスターは、infrastorage ノードなどの数多くの専用ノードで設定されます。ただし、カスタムテイントを持つ infra ノードは、ノードで OpenShift Data Foundation Persistent Volume Claims (永続ボリューム要求、PVC) を使用することができません。そのため、このようなノードを使用する必要がある場合は、容認を設定してノードで csi-plugins を起動することができます。詳細は、https://access.redhat.com/solutions/4827161 を参照してください。

手順

  1. configmap を編集して、カスタムテイントの容認を追加します。エディターを終了する前に必ず保存します。

    $ oc edit configmap rook-ceph-operator-config -n openshift-storage
  2. configmap を表示して、追加された容認を確認します。

    $ oc get configmap rook-ceph-operator-config -n openshift-storage -o yaml

    テイント nodetype=infra:NoSchedule の追加された容認の出力例

    apiVersion: v1
    data:
    [...]
      CSI_PLUGIN_TOLERATIONS: |
        - key: nodetype
          operator: Equal
          value: infra
          effect: NoSchedule
        - key: node.ocs.openshift.io/storage
          operator: Equal
          value: "true"
          effect: NoSchedule
    [...]
    kind: ConfigMap
    metadata:
    [...]
  3. 独自の infra ノードで csi-cephfsplugin-* および csi-rbdplugin-* Pod の起動に失敗した場合、rook-ceph-operator を再起動します。

    $ oc delete -n openshift-storage pod <name of the rook_ceph_operator pod>

    例:

    $ oc delete -n openshift-storage pod rook-ceph-operator-5446f9b95b-jrn2j
    
    pod "rook-ceph-operator-5446f9b95b-jrn2j" deleted

検証手順

csi-cephfsplugin-* および csi-rbdplugin-* Pod が infra ノードで実行されていることを確認します。