OpenShift Data Foundation (ODF)  - Add Nodes

### OpenShift Data Foundation (ODF) 

Red Hat OpenShift Data Foundation とは

Red Hat® OpenShift® Data Foundation (旧 Red Hat OpenShift Container Storage) は、コンテナ用ソフトウェア・デファインド・ストレージであり、Red Hat OpenShift に緊密に統合されたデータサービスを提供します。Red Hat OpenShift Data Foundation は、クラウド全体でアプリケーションを迅速かつ効率的に開発し、デプロイするのに役立ちます。

https://www.redhat.com/ja/technologies/cloud-computing/openshift-data-foundation

ここでは、以下のドキュメントに基づいて、AWS 上の OpenShift Container Platform (OCP) UPI 環境の ODF 4.16 に Node を追加する手順をご紹介します。

https://docs.redhat.com/en/documentation/red_hat_openshift_data_foundation/4.16/html-single/scaling_storage/index#adding-a-node-on-an-user-provisioned-infrastructure_aws


### Adding a node to an user-provisioned infrastructure

OCP Console の Storage 配下 Data Foundation の `Topology` で Node 構成を確認します。ここでは 3 Nodes で構成されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2128125/8abe6aa0-ceae-5218-f09e-fbfb0acf306f.png)

`oc node` コマンドでも確認してみます。
```shell
$ oc get node -l  cluster.ocs.openshift.io/openshift-storage
node/ip-33-555-14-72.us-westside-99.machine.external
node/ip-33-555-14-94.us-westside-99.machine.external
node/ip-33-555-14-99.us-westside-99.machine.external
```
この構成に 3 Nodes を追加して合計 6 Nodes 構成にしてみます。ODF 専用にするために `taint` も設定します。
```shell
$ for N in node/ip-33-555-14-19.us-westside-99.machine.external node/ip-33-555-14-78.us-westside-99.machine.external node/ip-33-555-14-118.us-westside-99.machine.external
do
  oc label $N cluster.ocs.openshift.io/openshift-storage=""
  oc adm taint $N node.ocs.openshift.io/storage="true":NoSchedule
done
node/ip-33-555-14-19.us-westside-99.machine.external labeled
node/ip-33-555-14-19.us-westside-99.machine.external labeled
node/ip-33-555-14-19.us-westside-99.machine.external tainted
node/ip-33-555-14-78.us-westside-99.machine.external labeled
node/ip-33-555-14-78.us-westside-99.machine.external labeled
node/ip-33-555-14-78.us-westside-99.machine.external tainted
node/ip-33-555-14-118.us-westside-99.machine.external labeled
node/ip-33-555-14-118.us-westside-99.machine.external labeled
node/ip-33-555-14-118.us-westside-99.machine.external tainted
```
```shell
$ oc get node -l  cluster.ocs.openshift.io/openshift-storage
node/ip-33-555-14-118.us-westside-99.machine.external
node/ip-33-555-14-19.us-westside-99.machine.external
node/ip-33-555-14-72.us-westside-99.machine.external
node/ip-33-555-14-78.us-westside-99.machine.external
node/ip-33-555-14-94.us-westside-99.machine.external
node/ip-33-555-14-99.us-westside-99.machine.external
```

`Topology` で Node 構成を確認すると、6 Nodes に変更されていることが分かります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2128125/cd331c80-dacf-0069-d35c-401bc4ebf8e8.png)

Pod の稼働状況も確認してみます。
```shell
$ oc project -q
openshift-storage

$ oc get pod -o wide --sort-by=.spec.nodeName | egrep "csi-cephfsplugin-|csi-rbdplugin-" | egrep "14-19|14-78|14-118"
csi-cephfsplugin-s479j                                            2/2     Running     4          26d     92.177.14.19    ip-33-555-14-19.us-westside-99.machine.external    <none>           <none>
csi-rbdplugin-c9jp7                                               3/3     Running     3          4d2h    92.177.14.19    ip-33-555-14-19.us-westside-99.machine.external    <none>           <none>
csi-cephfsplugin-4fzqp                                            2/2     Running     4          26d     92.177.14.78    ip-33-555-14-78.us-westside-99.machine.external    <none>           <none>
csi-rbdplugin-jtj55                                               3/3     Running     3          4d2h    92.177.14.78    ip-33-555-14-78.us-westside-99.machine.external    <none>           <none>
csi-cephfsplugin-7nq6m                                            2/2     Running     4          26d     92.177.14.118   ip-33-555-14-118.us-westside-99.machine.external   <none>           <none>
csi-rbdplugin-xxxq9                                               3/3     Running     3          4d2h    92.177.14.118   ip-33-555-14-118.us-westside-99.machine.external   <none>           <none>
```

以上で ODF への Node の追加は完了です。