14.3. ディスクのパーティション設定
完全な事前キャッシュプロセスを実行するには、ライブ ISO から起動し、コンテナーイメージから factory-precaching-cli ツールを使用して、必要なすべてのアーティファクトを分割および事前キャッシュする必要があります。
プロビジョニング中にオペレーティングシステム (RHCOS) がデバイスに書き込まれるときにディスクが使用されていてはならないため、ライブ ISO または RHCOS ライブ ISO が必要です。この手順で単一ディスクサーバーを有効にすることもできます。
前提条件
- パーティショニングされていないディスクがある。
-
quay.io/openshift-kni/telco-ran-tools:latest
イメージにアクセスできます。 - OpenShift Container Platform をインストールし、必要なイメージを事前キャッシュするのに十分なストレージがある。
手順
ディスクがクリアされていることを確認します。
lsblk
# lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 93.8G 0 loop /run/ephemeral loop1 7:1 0 897.3M 1 loop /sysroot sr0 11:0 1 999M 0 rom /run/media/iso nvme0n1 259:1 0 1.5T 0 disk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT loop0 7:0 0 93.8G 0 loop /run/ephemeral loop1 7:1 0 897.3M 1 loop /sysroot sr0 11:0 1 999M 0 rom /run/media/iso nvme0n1 259:1 0 1.5T 0 disk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルシステム、RAID、またはパーティションテーブルの署名をデバイスから消去します。
wipefs -a /dev/nvme0n1
# wipefs -a /dev/nvme0n1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
/dev/nvme0n1: 8 bytes were erased at offset 0x00000200 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 8 bytes were erased at offset 0x1749a955e00 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 2 bytes were erased at offset 0x000001fe (PMBR): 55 aa
/dev/nvme0n1: 8 bytes were erased at offset 0x00000200 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 8 bytes were erased at offset 0x1749a955e00 (gpt): 45 46 49 20 50 41 52 54 /dev/nvme0n1: 2 bytes were erased at offset 0x000001fe (PMBR): 55 aa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ディスクが空でない場合、ツールはデバイスのパーティション番号 1 を使用してアーティファクトを事前キャッシュするため、失敗します。
14.3.1. パーティションの作成 リンクのコピーリンクがクリップボードにコピーされました!
デバイスの準備ができたら、単一のパーティションと GPT パーティションテーブルを作成します。パーティションは自動的に data
としてラベル付けされ、デバイスの最後に作成されます。そうしないと、パーティションは coreos-installer
によって上書きされます。
coreos-installer
では、パーティションをデバイスの最後に作成し、data
としてラベル付けする必要があります。RHCOS イメージをディスクに書き込むときにパーティションを保存するには、両方の要件が必要です。
前提条件
-
ホストデバイスがフォーマットされているため、コンテナーは
privileged
として実行する必要があります。 -
コンテナー内でプロセスを実行できるように、
/dev
フォルダーをマウントする必要があります。
手順
次の例では、Day 2 Operator の DU プロファイルを事前キャッシュできるようにするため、パーティションのサイズは 250 GiB です。
コンテナーを
privileged
として実行し、ディスクをパーティショニングします。podman run -v /dev:/dev --privileged \ --rm quay.io/openshift-kni/telco-ran-tools:latest -- \ factory-precaching-cli partition \ -d /dev/nvme0n1 \ -s 250
# podman run -v /dev:/dev --privileged \ --rm quay.io/openshift-kni/telco-ran-tools:latest -- \ factory-precaching-cli partition \
1 -d /dev/nvme0n1 \
2 -s 250
3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow ストレージ情報を確認します。
lsblk
# lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次の要件が満たされていることを確認する必要があります。
- デバイスには GPT パーティションテーブルがあります。
- パーティションは、デバイスの最新のセクターを使用します。
-
パーティションは
data
として正しくラベル付けされています。
ディスクのステータスを照会して、ディスクが期待どおりにパーティショニングされていることを確認します。
gdisk -l /dev/nvme0n1
# gdisk -l /dev/nvme0n1
出力例
14.3.2. パーティションのマウント リンクのコピーリンクがクリップボードにコピーされました!
ディスクが正しくパーティショニングされていることを確認したら、デバイスを /mnt
にマウントできます。
GitOps ZTP の準備中にそのマウントポイントが使用されるため、デバイスを /mnt
にマウントすることを推奨します。
パーティションが
xfs
としてフォーマットされていることを確認します。lsblk -f /dev/nvme0n1
# lsblk -f /dev/nvme0n1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME FSTYPE LABEL UUID MOUNTPOINT nvme0n1 └─nvme0n1p1 xfs 1bee8ea4-d6cf-4339-b690-a76594794071
NAME FSTYPE LABEL UUID MOUNTPOINT nvme0n1 └─nvme0n1p1 xfs 1bee8ea4-d6cf-4339-b690-a76594794071
Copy to Clipboard Copied! Toggle word wrap Toggle overflow パーティションをマウントします。
mount /dev/nvme0n1p1 /mnt/
# mount /dev/nvme0n1p1 /mnt/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
パーティションがマウントされていることを確認します。
lsblk
# lsblk
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- RHCOS の
/mnt
フォルダーは/var/mnt
へのリンクであるため、マウントポイントは/var/mnt
です。