ストレージのスケーリング
水平スケーリングおよび垂直スケーリングのオプション
概要
はじめに
OpenShift Container Storage のストレージ容量を内部モードでスケーリングするには、以下のいずれかを実行できます。
- ストレージノードのスケールアップ: 既存の Red Hat OpenShift Container Storage ワーカーノードに対してストレージ容量を追加します。
- ストレージノードのスケールアウト: ストレージ容量を含む新規ワーカーノードを追加します。
外部モードでストレージをスケーリングするには、Red Hat Ceph Storage のドキュメント を参照してください。
第1章 ストレージノードのスケーリングの要件
ストレージノードをスケーリングする前に、以下のセクションを参照して、特定の Red Hat OpenShift Container Storage インスタンスのノード要件を把握してください。
- プラットフォーム要件
ストレージデバイスの要件
常にストレージ容量が十分にあることを確認してください。
ストレージが完全に一杯になると、容量を追加したり、ストレージからコンテンツを削除したり、コンテンツを移動して領域を解放することはできません。完全なストレージを復元することは非常に困難です。
容量アラートは、クラスターストレージ容量が合計容量の 75% (ほぼ一杯) および 85% (一杯) になると発行されます。容量についての警告に常に迅速に対応し、ストレージを定期的に確認して、ストレージ領域が不足しないようにします。
ストレージ領域が完全になくなる場合は、Red Hat カスタマーポータルにお問い合わせください。
1.1. Red Hat OpenShift Container Storage のサポートされるデプロイメント
ユーザーによってプロビジョニングされるインフラストラクチャー:
- Amazon Web Services (AWS)
- VMware
- ベアメタル
- IBM Power Systems
- IBM Z または LinuxONE
インストーラーでプロビジョニングされるインフラストラクチャー:
- Amazon Web Services (AWS)
- Microsoft Azure
第2章 ストレージ容量のスケールアップ
デプロイメントのタイプに応じて、以下のいずれかの手順を選択してストレージ容量をスケールアップできます。
- ストレージデバイスの動的または自動プロビジョニングを使用する AWS、VMware または Azure インフラストラクチャーの場合は、「OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ」 を参照してください。
- ローカルストレージデバイスを使用したベアメタル、Amazon EC2 I3、または VMware インフラストラクチャーの場合は、「ローカルストレージデバイスを使用した OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ」 を参照してください。
- ローカルストレージデバイスを使用する IBM Z または LinuxONE インフラストラクチャーの場合は、「IBM Z または LinuxONE インフラストラクチャーの OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ」 を参照してください。
- ローカルストレージデバイスを使用する IBM Power Systems の場合は、「ローカルストレージデバイスを使用した IBM Power Systems インフラストラクチャーの OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ」を参照してください。
デプロイメント時にプロビジョニングされたストレージクラス以外のストレージクラスを使用してスケーリングするには、スケーリングの前に追加のストレージクラスを定義する必要があります。詳細は、ストレージクラスの作成 を参照してください。
OpenShift Container Storage は異なる OSD サイズをサポートしません。
2.1. ストレージクラスの作成
新規のストレージクラスを定義して、既存のプロバイダーからストレージを動的にプロビジョニングできます。
プロバイダーのデフォルト以外のストレージクラスはテクノロジープレビュー機能として使用できます。
テクノロジープレビュー機能は Red Hat の実稼働環境でのサービスレベルアグリーメント (SLA) ではサポートされていないため、Red Hat では実稼働環境での使用を推奨していません。Red Hat は実稼働環境でこれらを使用することを推奨していません。これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
前提条件
- OpenShift Web コンソールへの管理者アクセス。
手順
- OpenShift Web コンソールにログインします。
- Storage → Storage Classes をクリックします。
- Create Storage Class をクリックします。
- ストレージクラスの Name および Description を入力します。
- 必要な Reclaim Policy および Provisioner を選択します。
- Create をクリックしてストレージクラスを作成します。
検証手順
- Storage → Storage Classes をクリックして新規ストレージクラスが表示されていることを確認します。
2.2. OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ
以下の手順を使用して、以下のインフラストラクチャーで設定された Red Hat OpenShift Container Storage ワーカーノードにストレージ容量を追加し、パフォーマンスを強化します。
- AWS
- VMware vSphere
- Microsoft Azure
前提条件
- 実行中の OpenShift Container Storage Platform
- OpenShift Web コンソールの管理者権限
- デプロイメント時にプロビジョニングされたストレージクラス以外のストレージクラスを使用してスケーリングするには、最初に追加のストレージクラスを定義します。詳細は、ストレージクラスの作成 を参照してください。
手順
- OpenShift Web コンソールにログインします。
- Operators → Installed Operators をクリックします。
OpenShift Container Storage Operator をクリックします。
Storage Cluster タブをクリックします。
- 表示されるリストには 1 つの項目のみが含まれます。右端の (⋮) をクリックして、オプションメニューを拡張します。
オプションメニューから Add Capacity を選択します。
ストレージクラスを選択します。
デプロイ時に生成されたデフォルトのストレージクラスを使用している場合は、ストレージクラスを AWS では
gp2
、VMware ではthin
、または Microsoft Azure ではmanaged_premium
に設定します。他のストレージクラスを作成している場合は、適切なものを選択します。重要プロバイダーのデフォルト以外のストレージクラスはテクノロジープレビュー機能として使用できます。
テクノロジープレビュー機能は Red Hat の実稼働環境でのサービスレベルアグリーメント (SLA) ではサポートされていないため、Red Hat では実稼働環境での使用を推奨していません。Red Hat は実稼働環境でこれらを使用することを推奨していません。これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Raw Capacity フィールドには、ストレージクラスの作成時に設定されるサイズが表示されます。OpenShift Container Storage はレプリカ数 3 を使用するため、消費されるストレージの合計量はこの量の 3 倍になります。
- Add をクリックし、クラスターの状態が Ready になるまで待機します。
検証手順
Overview → Persistent Storage タブに移動してから、Capacity breakdown カードをチェックします。
容量は選択に応じて増大することに注意してください。
3 つの新規 OSD およびそれらの対応する新規 PVC が作成されていることを確認します。
新規作成された OSD の状態を表示するには、以下を実行します。
- OpenShift Web コンソールから Workloads → Pods をクリックします。
-
Project ドロップダウンリストから
openshift-storage
を選択します。
Pod の状態を確認します。
- OpenShift Web コンソールで、Storage → Persistent Volume Claims をクリックします。
-
Project ドロップダウンリストから
openshift-storage
を選択します。
(オプション) クラスターでデータの暗号化が有効な場合には、新規 OSD デバイスが暗号化されていることを確認します。
新規 OSD Pod が実行しているノードを特定します。
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
以下に例を示します。
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
直前の手順で特定されたノードごとに、以下を実行します。
デバッグ Pod を作成し、選択したホストの chroot 環境を開きます。
$ oc debug node/<node name> $ chroot /host
lsblk を実行し、
ocs-deviceset
名の横にある crypt キーワードを確認します。$ lsblk
ノードまたは OSD を削除して削減するかどうかに関わらず、クラスターの削減は現時点でサポートされていません。
2.3. ローカルストレージデバイスを使用した OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ
以下の手順を使用して、ベアメタルおよび VMware インフラストラクチャーで設定されたローカルストレージベースの OpenShift Container Storage ワーカーノードにストレージ容量 (追加のストレージデバイス) を追加します。
Amazon EC2 I3 でのストレージのスケールアップはテクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat の実稼働環境のサービスレベルアグリーメント (SLA) ではサポートされていないため、Red Hat では実稼働環境での使用を推奨していません。Red Hat は実稼働環境でこれらを使用することを推奨していません。これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
Amazon EC2 I3 インフラストラクチャーでは、利用可能な両方の NVMe デバイスを使用してデプロイメントが実行されるため、ノードを追加することが容量を追加するための唯一のオプションになります。
前提条件
- OpenShift Container Platform クラスターにログインしている必要があります。
ローカルストレージ Operator がインストールされている必要があります。お使いのインフラストラクチャーに適用可能な以下の手順のいずれかを使用します。
-
以前のバージョンの OpenShift Container Storage からアップグレードした場合は、更新後の設定の変更 で説明されているように、
LocalVolumeSet
オブジェクトを作成し、デバイスの自動プロビジョニングを有効にします。 -
以前のバージョンから OpenShift Container Storage 4.6 にアップグレードした場合、アップグレード後の手順に従って
LocalVolumeDiscovery
オブジェクトを作成していることを確認します。詳細は、更新後の設定の変更 について参照してください。 - 3 つの OpenShift Container Platform ワーカーノードが必要です。それらのノードには、元の OpenShift Container Storage の StorageCluster の作成に使用されたものと同じストレージタイプおよびサイズ (例: 2 TB NVMe ドライブ) が割り当てられている必要があります。
手順
容量を追加するには、デプロイメント時にプロビジョニングしたストレージクラスか、フィルターと合致する他のストレージクラスを使用できます。
OpenShift Web コンソールから、Operators → Installed Operators をクリックします。
- OpenShift Container Storage Operator をクリックします。
Storage Cluster タブをクリックします。
- 表示されるリストには 1 つの項目のみが含まれます。右端の (⋮) をクリックして、オプションメニューを拡張します。
オプションメニューから Add Capacity を選択します。
- 要件に応じてディスクを追加した Storage Class、または新規ストレージクラスを選択します。表示される利用可能な容量は、ストレージクラスで利用可能なローカルディスクをベースとしています。
Add をクリックします。
ストレージクラスターが Ready 状態になるまでに数分待機する必要がある場合があります。
検証手順
Overview → Persistent Storage タブに移動してから、Capacity breakdown カードをチェックします。
容量は選択に応じて増大することに注意してください。
3 つの新規 OSD およびそれらの対応する新規 PVC が作成されていることを確認します。
新規作成された OSD の状態を表示するには、以下を実行します。
- OpenShift Web コンソールから Workloads → Pods をクリックします。
-
Project ドロップダウンリストから
openshift-storage
を選択します。
Pod の状態を確認します。
- OpenShift Web コンソールで、Storage → Persistent Volume Claims をクリックします。
-
Project ドロップダウンリストから
openshift-storage
を選択します。
(オプション) クラスターでデータの暗号化が有効な場合には、新規 OSD デバイスが暗号化されていることを確認します。
新規 OSD Pod が実行しているノードを特定します。
$ oc get -o=custom-columns=NODE:.spec.nodeName pod/<OSD pod name>
以下に例を示します。
oc get -o=custom-columns=NODE:.spec.nodeName pod/rook-ceph-osd-0-544db49d7f-qrgqm
直前の手順で特定されたノードごとに、以下を実行します。
デバッグ Pod を作成し、選択したホストの chroot 環境を開きます。
$ oc debug node/<node name> $ chroot /host
lsblk を実行し、
ocs-deviceset
名の横にある crypt キーワードを確認します。$ lsblk
OpenShift Container Storage では、OSD またはノードの縮小によるクラスターの削減はサポートしていません。
2.4. ローカルストレージデバイスを使用した IBM Power Systems インフラストラクチャーの OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ
以下の手順を使用して、IBM Power Systems インフラストラクチャーで設定されたローカルストレージベースの OpenShift Container Storage ワーカーノードにストレージ容量 (追加のストレージデバイス) を追加します。
前提条件
- OpenShift Container Platform (RHOCP) クラスターにログインしている必要があります。
ローカルストレージ Operator がインストールされている必要があります。次の手順を使用します。以下を参照してください。
- 3 つの OpenShift Container Platform ワーカーノードが必要です。それらのノードには、元の OpenShift Container Storage の StorageCluster の作成に使用されたものと同じストレージタイプおよびサイズ (例: 0.5TB SSD) が割り当てられている必要があります。
手順
OpenShift Container Storage がインストールされている OpenShift Container Platform ノードにストレージ容量を追加するには、以下を実行する必要があります。
- Openshift Container Platform (RHOCP) クラスターのワーカーノードごとに 1 つ以上のデバイスとなるように新規ディスクを追加します。
ノード内で lsblk を実行して、新規ディスクがノードに追加されたかどうかを確認します。
$ oc debug node/worker-0 $lsblk
出力例:
Creating debug namespace/openshift-debug-node-ggrqr ... Starting pod/worker-2-debug ... To use host binaries, run `chroot /host` Pod IP: 192.168.88.23 If you don't see a command prompt, try pressing enter. sh-4.4# chroot /host sh-4.4# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 256G 0 loop vda 252:0 0 40G 0 disk |-vda1 252:1 0 4M 0 part |-vda2 252:2 0 384M 0 part /boot `-vda4 252:4 0 39.6G 0 part `-coreos-luks-root-nocrypt 253:0 0 39.6G 0 dm /sysroot vdb 252:16 0 512B 1 disk vdc 252:32 0 256G 0 disk vdd 252:48 0 256G 0 disk sh-4.4# sh-4.4# Removing debug pod ... Removing debug namespace/openshift-debug-node-ggrqr ...
- 新規に追加されたディスクは LocalVolumeSet によって自動的に検出されます。
新規に作成された PV を
localVolumeSet
CR で使用されるstorageclass
名前で表示します。$ oc get pv | grep localblock | grep Available
出力例:
local-pv-290020c2 256Gi RWO Delete Available localblock 2m35s local-pv-7702952c 256Gi RWO Delete Available localblock 2m27s local-pv-a7a567d 256Gi RWO Delete Available localblock 2m22s ...
新しい OSD に使用されるサイズと同じサイズの 3 つの PV が利用可能です。
- OpenShift Web コンソールに移動します。
- 左側のナビゲーションバーの Operators をクリックします。
- Installed Operators を選択します。
ウィンドウで、OpenShift Container Storage Operator をクリックします。
上部のナビゲーションバーで、右にスクロールし、Storage Cluster タブをクリックします。
- 表示されるリストには 1 つの項目のみが含まれます。右端の (⋮) をクリックして、オプションメニューを拡張します。
オプションメニューから Add Capacity を選択します。
このダイアログボックスで、Storage Class 名を
localVolumeset
CR で使用される名前に設定します。表示される利用可能な容量は、ストレージクラスで利用可能なローカルディスクをベースとしています。- 設定が終了したら、Add をクリックします。ストレージクラスターが Ready 状態になるまでに数分待機する必要がある場合があります。
3 つの新規 OSD およびそれらの対応する新規 PVC が作成されていることを確認します。
$ oc get -n openshift-storage pods -l app=rook-ceph-osd
出力例:
NAME READY STATUS RESTARTS AGE rook-ceph-osd-0-6f8655ff7b-gj226 1/1 Running 0 1h rook-ceph-osd-1-6c66d77f65-cfgfq 1/1 Running 0 1h rook-ceph-osd-2-69f6b4c597-mtsdv 1/1 Running 0 1h rook-ceph-osd-3-c784bdbd4-w4cmj 1/1 Running 0 5m rook-ceph-osd-4-6d99845f5b-k7f8n 1/1 Running 0 5m rook-ceph-osd-5-fdd9897c9-r9mgb 1/1 Running 0 5m
上記の例では、osd-3、osd-4、および osd-5 は、新たに OpenShift Container Storage クラスターに追加される Pod です。
$ oc get pvc -n openshift-storage |grep localblock
出力例:
ocs-deviceset-localblock-0-data-0-sfsgf Bound local-pv-8137c873 256Gi RWO localblock 1h ocs-deviceset-localblock-0-data-1-qhs9m Bound local-pv-290020c2 256Gi RWO localblock 10m ocs-deviceset-localblock-1-data-0-499r2 Bound local-pv-ec7f2b80 256Gi RWO localblock 1h ocs-deviceset-localblock-1-data-1-p9rth Bound local-pv-a7a567d 256Gi RWO localblock 10m ocs-deviceset-localblock-2-data-0-8pzjr Bound local-pv-1e31f771 256Gi RWO localblock 1h ocs-deviceset-localblock-2-data-1-7zwwn Bound local-pv-7702952c 256Gi RWO localblock 10m
上記の例では、3 つの新規 PVC が作成されています。
検証手順
Overview → Persistent Storage タブに移動してから、Capacity breakdown カードをチェックします。
容量は選択に応じて増大することに注意してください。
重要OpenShift Container Storage では、OSD またはノードの縮小によるクラスターの削減はサポートしていません。
2.5. IBM Z または LinuxONE インフラストラクチャーの OpenShift Container Storage ノードへの容量の追加によるストレージのスケールアップ
以下の手順を使用して、設定された Red Hat OpenShift Container Storage ワーカーノードにストレージ容量を追加し、パフォーマンスを強化します。
前提条件
- 実行中の OpenShift Container Storage Platform
- OpenShift Web コンソールの管理者権限
- デプロイメント時にプロビジョニングされたストレージクラス以外のストレージクラスを使用してスケーリングするには、最初に追加のストレージクラスを定義します。詳細は、ストレージクラスの作成 を参照してください。
手順
zFCP ディスクを使用してハードウェアリソースを追加します。
以下のコマンドを使用してすべてのディスクを一覧表示します。
$ lszdev
出力例:
TYPE ID ON PERS NAMES zfcp-host 0.0.8204 yes yes zfcp-lun 0.0.8204:0x102107630b1b5060:0x4001402900000000 yes no sda sg0 zfcp-lun 0.0.8204:0x500407630c0b50a4:0x3002b03000000000 yes yes sdb sg1 qeth 0.0.bdd0:0.0.bdd1:0.0.bdd2 yes no encbdd0 generic-ccw 0.0.0009 yes no
SCSI ディスクは、ID セクションの
<device-id>:<wwpn>:<lun-id>
構造でzfcp-lun
として表されます。最初のディスクはオペレーティングシステムに使用されます。新規ディスクのデバイス ID は同じである可能性があります。以下のコマンドで新規 SCSI ディスクを追加します。
$ chzdev -e 0.0.8204:0x400506630b1b50a4:0x3001301a00000000
注記新規ディスクのデバイス ID は、置き換えるディスクと同じである必要があります。新規ディスクは、WWPN および LUN ID で識別されます。
すべての FCP デバイスを一覧表示して、新規ディスクが設定されていることを確認します。
$ lszdev zfcp-lun TYPE ID ON PERS NAMES zfcp-lun 0.0.8204:0x102107630b1b5060:0x4001402900000000 yes no sda sg0 zfcp-lun 0.0.8204:0x500507630b1b50a4:0x4001302a00000000 yes yes sdb sg1 zfcp-lun 0.0.8204:0x400506630b1b50a4:0x3001301a00000000 yes yes sdc sg2
- OpenShift Web コンソールに移動します。
- 左側のナビゲーションバーの Operators をクリックします。
- Installed Operators を選択します。
ウィンドウで、OpenShift Container Storage Operator をクリックします。
上部のナビゲーションバーで、右にスクロールし、Storage Cluster タブをクリックします。
- 表示される一覧の横にある (⋮) をクリックして、オプションメニューを拡張します。
オプションメニューから Add Capacity を選択します。
Raw Capacity フィールドには、ストレージクラスの作成時に設定されるサイズが表示されます。OpenShift Container Storage はレプリカ数 3 を使用するため、消費されるストレージの合計量はこの量の 3 倍になります。
- Add をクリックし、クラスターの状態が Ready になるまで待機します。
検証手順
Overview → Persistent Storage タブに移動してから、Capacity breakdown カードをチェックします。
- 容量は選択に応じて増大することに注意してください。
ノードまたは OSD を削除して削減するかどうかに関わらず、クラスターの削減は現時点でサポートされていません。
第3章 ストレージ容量のスケールアウト
ストレージ容量をスケールアウトするには、以下の手順を実行する必要があります。
- 新規ノードを追加します。
- 新規ノードが正常に追加されたことを確認します。
- ストレージ容量をスケールアップします。
OpenShift Container Storage は異なる OSD サイズをサポートしません。
3.1. ノードの追加
既存のワーカーノードがサポートされる最大 OSD (初期設定で選択される容量の 3 OSD の増分) で実行されている場合には、ストレージの容量を増やすためにノードを追加できます。
デプロイメントのタイプに応じて、以下のいずれかの手順を選択してストレージノードを追加できます。
- AWS または Azure インストーラーでプロビジョニングされるインフラストラクチャーについての詳細は、AWS インストーラーでプロビジョニングされるインフラストラクチャーへのノードの追加 について参照してください。
- AWS または VMware のユーザーによってプロビジョニングされるインフラストラクチャーの場合は、AWS または VMware ユーザーによってプロビジョニングされるインフラストラクチャーへのノードの追加 について参照してください。
- ベアメタル、IBM Power Systems、IBM Z または LinuxONE、Amazon EC2 I3、または VMware インフラストラクチャーの場合は、ローカルストレージデバイスを使用したノードの追加 について参照してください。
3.1.1. インストーラーでプロビジョニングされるインフラストラクチャーへのノードの追加
この手順を使用して、AWS または Azure インストーラーでプロビジョニングされるインフラストラクチャーにノードを追加します。
前提条件
- OpenShift Container Platform (RHOCP) クラスターにログインしている必要があります。
手順
- Compute → Machine Sets に移動します。
- ノードを追加する必要のあるマシンセットで、Edit Machine Count を選択します。
- ノード数を追加し、Save をクリックします。
- Compute → Nodes をクリックし、新規ノードが Ready 状態にあることを確認します。
OpenShift Container Storage ラベルを新規ノードに適用します。
- 新規ノードについて、Action menu (⋮) → Edit Labels をクリックします。
- cluster.ocs.openshift.io/openshift-storage を追加し、Save をクリックします。
異なるゾーンのそれぞれに 3 つのノードを追加することが推奨されます。3 つのノードを追加して、それらすべてのノードに対してこの手順を実行する必要があります。
検証手順
- 新規ノードが追加されていることを確認するには、 新規ノードの追加の確認 について参照してください。
3.1.2. ユーザーによってプロビジョニングされるインフラストラクチャーへのノードの追加
以下の手順で AWS または VMware のユーザーによってプロビジョニングされるインフラストラクチャーにノードを追加します。
前提条件
- OpenShift Container Platform (RHOCP) クラスターにログインしている必要があります。
手順
AWS のユーザーによってプロビジョニングされるインフラストラクチャーまたは VMware のユーザーによってプロビジョニングされるインフラストラクチャーにノードを追加するかどうかに応じて、以下のそれぞれの手順を実行します。
AWS の場合:
- 必要なインフラストラクチャーで新規 AWS マシンインスタンスを作成します。プラットフォーム要件 を参照してください。
- 新規 AWS マシンインスタンスを使用して新規 OpenShift Container Platform ノードを作成します。
VMware の場合:
- 必要なインフラストラクチャーで vSphere に新規の仮想マシンを作成します。プラットフォーム要件 を参照してください。
- 新規の仮想マシンを使用して新規 OpenShift Container Platform ワーカーノードを作成します。
Pending
状態の OpenShift Container Storage に関連する証明書署名要求 (CSR) の有無を確認します。$ oc get csr
新規ノードに必要なすべての OpenShift Container Storage CSR を承認します。
$ oc adm certificate approve <Certificate_Name>
- Compute → Nodes をクリックし、新規ノードが Ready 状態にあることを確認します。
以下のいずれかを使用して、OpenShift Container Storage ラベルを新規ノードに適用します。
- ユーザーインターフェイスを使用する場合
- 新規ノードについて、Action Menu (⋮) → Edit Labels をクリックします。
-
cluster.ocs.openshift.io/openshift-storage
を追加し、Save をクリックします。
- コマンドラインインターフェイスの使用
以下のコマンドを実行して、OpenS+hift Container Storage ラベルを新規ノードに適用します。
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
注記異なるゾーンのそれぞれに 3 つのノードを追加することが推奨されます。3 つのノードを追加して、それらすべてのノードに対してこの手順を実行する必要があります。
検証手順
- 新規ノードが追加されていることを確認するには、 新規ノードの追加の確認 について参照してください。
3.1.3. ローカルストレージデバイスを使用したノードの追加
以下の手順を使用して、ベアメタル、IBM Power Systems、IBM Z または LinuxONE、 Amazon EC2、および VMware インフラストラクチャーにノードを追加します。
Amazon EC2 のストレージノードのスケーリングはテクノロジープレビュー機能です。テクノロジープレビュー機能は、Red Hat の実稼働環境のサービスレベルアグリーメント (SLA) ではサポートされていないため、Red Hat では実稼働環境での使用を推奨していません。Red Hat は実稼働環境でこれらを使用することを推奨していません。これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
前提条件
- OpenShift Container Platform (RHOCP) クラスターにログインしている必要があります。
-
以前のバージョンから OpenShift Container Storage 4.6 にアップグレードした場合、アップグレード後の手順に従って
LocalVolumeDiscovery
オブジェクトを作成していることを確認します。詳細は、更新後の設定の変更 について参照してください。 - 3 つの OpenShift Container Platform ワーカーノードが必要です。それらのノードには、元の OpenShift Container Storage の StorageCluster の作成に使用されたものと同じストレージタイプおよびサイズ (例: 2TB SSD または 2TB NVMe) が割り当てられている必要があります。
- 以前のバージョンの OpenShift Container Storage からアップグレードした場合は、更新後の設定の変更 で説明されているように、LocalVolumeSet オブジェクトを作成し、デバイスの自動プロビジョニングを有効にします。
手順
ベアメタル、IBM Power Systems、IBM Z または LinuxONE、Amazon EC2、または VMware インフラストラクチャーのどれにノードを追加するかどうかに応じて、以下の手順を実行します。
Amazon EC2 の場合
- 必要なインフラストラクチャーで新規 Amazon EC2 I3 マシンインスタンスを作成します。Creating a MachineSet in AWS および Platform requirements を参照してください。
- 新規 Amazon EC2 I3 マシンインスタンスを使用して新規 OpenShift Container Platform ノードを作成します。
VMware の場合:
- 必要なインフラストラクチャーで vSphere に新規の仮想マシンを作成します。プラットフォーム要件 を参照してください。
- 新規の仮想マシンを使用して新規 OpenShift Container Platform ワーカーノードを作成します。
ベアメタルの場合:
- 必要なインフラストラクチャーで新規のベアメタルマシンを取得します。プラットフォーム要件 を参照してください。
- 新規ベアメタルマシンを使用して新規 OpenShift Container Platform ノードを作成します。
IBM Power Systems の場合:
- 必要なインフラストラクチャーで新規の IBM Power マシンを取得します。プラットフォーム要件 を参照してください。
- 新規 IBM Power マシンを使用して新規 OpenShift Container Platform ノードを作成します。
IBM Z または LinuxONE の場合:
- 必要なインフラストラクチャーで新規の IBM Z または LinuxONE マシンを取得します。プラットフォーム要件 を参照してください。
- 新規 IBM Z または LinuxONE マシンを使用して新規 OpenShift Container Platform ノードを作成します。
Pending
状態の OpenShift Container Storage に関連する証明書署名要求 (CSR) の有無を確認します。$ oc get csr
新規ノードに必要なすべての OpenShift Container Storage CSR を承認します。
$ oc adm certificate approve <Certificate_Name>
- Compute → Nodes をクリックし、新規ノードが Ready 状態にあることを確認します。
以下のいずれかを使用して、OpenShift Container Storage ラベルを新規ノードに適用します。
- ユーザーインターフェイスを使用する場合
- 新規ノードについて、Action Menu (⋮) → Edit Labels をクリックします。
-
cluster.ocs.openshift.io/openshift-storage
を追加し、Save をクリックします。
- コマンドラインインターフェイスの使用
以下のコマンドを実行して、OpenS+hift Container Storage ラベルを新規ノードに適用します。
$ oc label node <new_node_name> cluster.ocs.openshift.io/openshift-storage=""
OpenShift Web コンソールから、Operators → Installed Operators をクリックします。
Project ドロップダウンリストから、ローカルストレージ Operator がインストールされているプロジェクトを選択してください。
- Local Storage をクリックします。
- Local Volume Discovery タブをクリックします。
-
LocalVolumeDiscovery
の横にある Action メニュー (⋮) → Edit Local Volume Discovery をクリックします。 -
YAML で、
node selector
の下にある values フィールドに新規ノードのホスト名を追加します。 - Save をクリックします。
- Local Volume Sets タブをクリックします。
-
LocalVolumeSet
の横にある Action メニュー (⋮) → Edit Local Volume Set をクリックします。 YAML で、
node selector
の下にあるvalues
フィールドに新規ノードのホスト名を追加します。図3.1 新規ホスト名の追加に関する YAML
- Save をクリックします。
異なるゾーンのそれぞれに 3 つのノードを追加することが推奨されます。3 つのノードを追加して、それらすべてのノードに対してこの手順を実行する必要があります。
検証手順
- 新規ノードが追加されていることを確認するには、 新規ノードの追加の確認 について参照してください。
3.1.4. 新規ノードの追加の確認
以下のコマンドを実行して、出力で新規ノードが表示されていることを確認します。
$ oc get nodes --show-labels | grep cluster.ocs.openshift.io/openshift-storage= |cut -d' ' -f1
Workloads → Pods をクリックし、新規ノード上の少なくとも以下の Pod が Running 状態にあることを確認します。
-
csi-cephfsplugin-*
-
csi-rbdplugin-*
-
3.2. ストレージ容量のスケールアップ
ストレージの容量をスケールアップするには、容量の増加によるストレージのスケールアップ について参照してください。