1.5. RAID 対応のデータボリュームの設定
外部データボリュームを提供するために、ソフトウェアによる RAID(Redundant Array of Independent Disks) パーティショニングを有効にすることができます。
OpenShift Container Platform は、データ保護およびフォールトトレランスに対応するために RAID 0、RAID 1、RAID 4、RAID 5、RAID 6、および RAID 10 をサポートします。詳細は、「ディスクのミラーリングについて」を参照してください。
OpenShift Container Platform 4.20 では、インストールドライブ上でハイブリッド RAID を手動で設定することがサポートされています。手動で設定する例については、Intel® Virtual RAID on CPU (VROC) データボリュームの設定を参照してください。
前提条件
- インストールノードで OpenShift Container Platform インストールプログラムをダウンロードしている。
インストールノードに Butane をインストールしている。
注記Butane は、OpenShift Container Platform がマシン設定を書き込むために使用するコマンドラインユーティリティーです。このユーティリティーは、マシン設定を記述したり、マシン設定の追加検証を実行したりするための、便利な簡潔な構文を提供します。詳細は、Butane を使用したマシン設定の作成 セクションを参照してください。
手順
ソフトウェア RAID を使用してデータボリュームを設定する Butane 設定を作成します。
ミラーリングされたブートディスクに使用されるディスクと同じディスク上に、RAID 1 でデータボリュームを設定するには、
$HOME/clusterconfig/raid1-storage.buファイルを作成します。ミラーリングされたブートディスク上の RAID 1 の設定例
variant: openshift version: 4.20.0 metadata: name: raid1-storage labels: machineconfiguration.openshift.io/role: worker boot_device: mirror: devices: - /dev/disk/by-id/scsi-3600508b400105e210000900000490000 - /dev/disk/by-id/scsi-SSEAGATE_ST373453LW_3HW1RHM6 storage: disks: - device: /dev/disk/by-id/scsi-3600508b400105e210000900000490000 partitions: - label: root-1 size_mib: 25000 - label: var-1 - device: /dev/disk/by-id/scsi-SSEAGATE_ST373453LW_3HW1RHM6 partitions: - label: root-2 size_mib: 25000 - label: var-2 raid: - name: md-var level: raid1 devices: - /dev/disk/by-partlabel/var-1 - /dev/disk/by-partlabel/var-2 filesystems: - device: /dev/md/md-var path: /var format: xfs wipe_filesystem: true with_mount_unit: true # ...size_mibフィールドは、ブートディスクにデータパーティションを追加します。最低でも 25000 メビバイトの値を推奨します。値が指定されていない場合、または指定された値が推奨される最小値よりも小さい場合、結果として生成されるルートファイルシステムは小さすぎます。RHCOS を今後再インストールすると、データパーティションの先頭部分が上書きされる可能性があります。セカンダリーディスクで RAID 1 を使用してデータボリュームを設定するには、
$HOME/clusterconfig/raid1-alt-storage.buファイルを作成します。セカンダリーディスクにおける RAID 1 の設定例
variant: openshift version: 4.20.0 metadata: name: raid1-alt-storage labels: machineconfiguration.openshift.io/role: worker storage: disks: - device: /dev/sdc wipe_table: true partitions: - label: data-1 - device: /dev/sdd wipe_table: true partitions: - label: data-2 raid: - name: md-var-lib-containers level: raid1 devices: - /dev/disk/by-partlabel/data-1 - /dev/disk/by-partlabel/data-2 filesystems: - device: /dev/md/md-var-lib-containers path: /var/lib/containers format: xfs wipe_filesystem: true with_mount_unit: true # ...
Butane の設定ファイルから RAID マニフェストを作成します。設定ファイルを
< インストールディレクトリー >/openshiftディレクトリーに保存してください。たとえば、コンピュートノードのマニフェストを作成するには、以下のコマンドを実行します。$ butane $HOME/clusterconfig/<butane_config>.bu -o <installation_directory>/openshift/<manifest_name>.yaml<manifest_name>と<butane_config>の値を、前の手順で取得したファイル名に置き換えてください。たとえば、セカンダリーディスクの場合は、raid1-alt-storage.buおよびraid1-alt-storage.yamlになります。- 今後マニフェストを更新する必要がある場合には、Butane 設定を保存します。
- 残りの OpenShift Container Platform インストールを継続します。
1.5.1. Intel® Virtual RAID on CPU (VROC) データボリュームの設定 リンクのコピーリンクがクリップボードにコピーされました!
Intel® VROC はハイブリッド RAID の一種で、メンテナンスの一部はハードウェアにオフロードされますが、オペレーティングシステムにはソフトウェア RAID として表示されます。
次の手順では、Intel® VROC 対応 RAID1 を設定します。
前提条件
- Intel® Volume Management Device (VMD) が有効になっているシステムがある。
手順
次のコマンドを実行して、Intel® Matrix Storage Manager (IMSM) RAID コンテナーを作成します。
$ mdadm -CR /dev/md/imsm0 -e \ imsm -n2 /dev/nvme0n1 /dev/nvme1n11 - 1
- RAID のデバイス名。この例では、2 つのデバイスがリストされています。2 つ以上のデバイス名を指定する場合は、
-nフラグを調整する必要があります。たとえば、3 つのデバイスをリストするには、フラグ-n3を使用します。
コンテナー内に RAID1 ストレージを作成します。
次のコマンドを実行して、実際の RAID1 ボリュームの前にダミーの RAID0 ボリュームを作成します。
$ mdadm -CR /dev/md/dummy -l0 -n2 /dev/md/imsm0 -z10M --assume-clean次のコマンドを実行して、実際の RAID1 アレイを作成します。
$ mdadm -CR /dev/md/coreos -l1 -n2 /dev/md/imsm0次のコマンドを使用して、RAID0 と RAID1 のメンバーアレイを停止し、ダミーの RAID0 アレイを削除します。
$ mdadm -S /dev/md/dummy \ mdadm -S /dev/md/coreos \ mdadm --kill-subarray=0 /dev/md/imsm0次のコマンドを実行して RAID1 アレイを再起動します。
$ mdadm -A /dev/md/coreos /dev/md/imsm0
RAID1 デバイスに RHCOS をインストールします。
次のコマンドを実行して、IMSM コンテナーの UUID を取得します。
$ mdadm --detail --export /dev/md/imsm0次のコマンドを実行して、RHCOS をインストールし、
rd.md.uuidカーネル引数を含めます。$ coreos-installer install /dev/md/coreos \ --append-karg rd.md.uuid=<md_UUID>1 ...- 1
- IMSM コンテナーの UUID。
RHCOS をインストールするために必要な追加の
coreos-installer引数を含めます。