ROSA クラスターに FSx for ONTAPを搭載した Red Hat OpenShift Virtualization を導入する
ROSA (Red Hat OpenShift Service on AWS) クラスターのデフォルトの StorageClass としてAmazon FSx for NetApp ONTAPを設定します。この手順には、ボリュームに FSx ONTAPストレージを活用する VM の作成、VM 用に作成されたすべてのオブジェクトの確認、ゲスト資格情報を使用した VM への接続が含まれます。
また、ゲスト資格情報を使用して仮想マシンに接続し、VM を再起動する方法についても説明します。最後に、現在のノードから新しいノードへの仮想マシンのライブマイグレーションを実行します。 VM の再起動とライブ マイグレーション後のディスク ストレージの内容を調べます。
前提条件
-
IAMユーザー"適切な権限を持つ"ROSAクラスタを作成してアクセスする
-
"HCP ROSAクラスター"(少なくとも 3 つのベアメタル ワーカー ノードを含む)
-
Trident 25.02以降 上記のTridentの前提条件については、"Trident設置部"詳細については。
Trident 25.02 リリース以降では、ROSA クラスター (または任意の OpenShift クラスター) のワーカー ノードを簡単に準備して、FSxN ストレージで iSCSI 操作を実行できます。iSCSI のワーカー ノードの準備を自動化するTrident 25.02 (またはそれ以降) をインストールするには、2 つの簡単な方法があります。OpenShift Virtualization をインストールする前に、トライデント バックエンド、ストレージ クラス、ボリューム スナップショット クラス オブジェクトを作成し、デフォルトとして設定しておく必要があります。参照するには"Trident設置部"詳細については。
初期セットアップ
Trident バックエンド、ストレージ クラス、および VolumeSnapshotClass を設定します。参照するには"Trident設置部"詳細については。
Trident バックエンド オブジェクトを作成するためのサンプル yaml
cat tbc.yaml
apiVersion: v1
kind: Secret
metadata:
name: backend-tbc-ontap-san-secret
type: Opaque
stringData:
username: fsxadmin
password: <password for the fsxN filesystem>
---
apiVersion: trident.netapp.io/v1
kind: TridentBackendConfig
metadata:
name: backend-tbc-ontap-san
spec:
version: 1
storageDriverName: ontap-san
managementLIF: <management lif of fsxN filesystem>
backendName: backend-tbc-ontap-san
svm: svm_FSxNForROSAiSCSI
credentials:
name: backend-tbc-ontap-san-secret
cat sc.yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: trident-csi
provisioner: csi.trident.netapp.io
parameters:
backendType: "ontap-san"
media: "ssd"
provisioningType: "thin"
snapshots: "true"
allowVolumeExpansion: true
cat snapshot-class.yaml
apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshotClass
metadata:
name: fsx-snapclass
driver: csi.trident.netapp.io
deletionPolicy: Retain
#oc create -f tbc,yaml -n trident
#oc create -f sc.yaml
#oc create -f snapshot-class.yaml
OpenShift Virtualization をインストールする前に、ストレージ クラスとボリューム スナップショット クラスがデフォルトとして設定されていることを確認します。デフォルトの設定方法の詳細については、"Tridentストレージとスナップショットクラスセクションでのデフォルトの設定"詳細については。
テンプレートからVMを作成する
Web コンソールを使用して、テンプレートから VM を作成します。 AWS コンソールの RedHat OpenShiftService から仮想マシンを作成します。クラスターには、VM の作成に使用できるテンプレートが用意されています。以下のスクリーンショットでは、このリストから fedora VM を選択しています。 VM に名前を付けて、[仮想マシンのカスタマイズ] をクリックします。 ディスク タブを選択し、ディスクの追加 をクリックします。ディスクの名前をできれば意味のある名前に変更し、ストレージ クラスとして trident-csi が選択されていることを確認します。 保存をクリックします。 仮想マシンの作成をクリックします
数分後、VMは実行状態になります
VM 用に作成されたすべてのオブジェクトを確認します
ストレージ ディスク。
VM のファイル システムには、パーティション、ファイル システムの種類、マウント ポイントが表示されます。
VM 用に 2 つの PVC が作成されます。1 つはブート ディスクから、もう 1 つはホット プラグ ディスク用です。
ブート ディスクの PVC では、アクセス モードが ReadWriteMany であり、ストレージ クラスが trident-csi であることが示されています。
同様に、ホットプラグ ディスクの PVC では、アクセス モードが ReadWriteMany であり、ストレージ クラスが trident-csi であることが示されています。
以下のスクリーンショットでは、VM のポッドのステータスが実行中であることがわかります。
ここでは、VM ポッドに関連付けられた 2 つのボリュームと、それらに関連付けられた 2 つの PVC を確認できます。
VM に接続する
「ウェブコンソールを開く」ボタンをクリックし、ゲスト認証情報を使用してログインします。
次のコマンドを発行します
$ df (to display information about the disk space usage on a file system).
$ dd if=/dev/urandom of=random.dat bs=1M count=10240 (to create a file called random.dat in the home dir and fill it with random data).
ディスクには 11 GB のデータが入っています。
vi を使用して、テストに使用するサンプル テキスト ファイルを作成します。
関連ブログ