8.5. 仮想マシンの編集
Red Hat OpenShift Service on AWS Web コンソールを使用して、仮想マシン (VM) 設定を更新できます。YAML ファイルまたは VirtualMachine details ページを更新できます。
コマンドラインを使用して仮想マシンを編集することもできます。
8.5.1. 仮想マシンのインスタンスタイプの変更 リンクのコピーリンクがクリップボードにコピーされました!
Web コンソールを使用して、実行中の仮想マシン (VM) に関連付けられているインスタンスタイプを変更できます。変更は即座に有効になります。
前提条件
- インスタンスタイプを使用して仮想マシンを作成している。
手順
-
Red Hat OpenShift Service on AWS Web コンソールで、Virtualization
VirtualMachines をクリックします。 - 仮想マシンを選択して、VirtualMachine details ページを開きます。
- Configuration タブをクリックします。
- Details タブで、インスタンスタイプテキストをクリックして Edit Instancetype ダイアログを開きます。たとえば、1 CPU | 2 GiB Memory をクリックします。
Series および Size リストを使用して、インスタンスタイプを編集します。
- Series リストからアイテムを選択して、そのシリーズに関連するサイズを表示します。たとえば、General Purpose を選択します。
- Size リストから仮想マシンの新しいインスタンスタイプを選択します。たとえば、medium: 1 CPUs, 4Gi Memory を選択します。これは、General Purpose シリーズで利用できます。
- Save をクリックします。
検証
- YAML タブをクリックします。
- Reload をクリックします。
- 仮想マシン YAML を確認し、インスタンスタイプが変更されたことを確認します。
8.5.2. 仮想マシン上でのメモリーのホットプラグ リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS Web コンソールを使用して、仮想マシン (VM) を再起動することなく、仮想マシンに割り当てられるメモリーの量を追加または削除できます。
手順
-
Virtualization
VirtualMachines に移動します。 - 目的の仮想マシンを選択して、VirtualMachine details ページを開きます。
- Configuration タブで、Edit CPU|Memory をクリックします。
必要なメモリー量を入力し、Save をクリックします。
注記仮想マシンのデフォルトの初期メモリー量の最大 3 倍までホットプラグできます。この制限を超えると再起動が必要になります。
システムはこれらの変更をすぐに適用します。仮想マシンが移行可能な場合は、ライブマイグレーションがトリガーされます。そうでない場合、または変更をライブ更新できない場合は、
RestartRequired
条件が仮想マシンに追加されます。
仮想マシンのメモリーのホットプラグを実行するには、virtio-mem
ドライバーに対するゲストオペレーティングシステムのサポートが必要です。このサポートは、特定のアップストリームのカーネルバージョンではなく、ゲストオペレーティングシステム内に含まれる有効なドライバーに依存します。
サポートされているゲストオペレーティングシステム:
- RHEL 9.4 以降
- RHEL 8.10 以降 (ホットアンプラグはデフォルトで無効)
-
その他の Linux ゲストには、カーネルバージョン 5.16 以降と
virtio-mem
カーネルモジュールが必要です。 -
Windows ゲストには、
virtio-mem
ドライバーバージョン 100.95.104.26200 以降が必要です。
8.5.3. 仮想マシン上での CPU のホットプラグ リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS Web コンソールを使用して、仮想マシン (VM) を再起動することなく、仮想マシンに割り当てられる CPU ソケットの数を増減できます。
手順
-
Virtualization
VirtualMachines に移動します。 - 目的の仮想マシンを選択して、VirtualMachine details ページを開きます。
- Configuration タブで、Edit CPU|Memory をクリックします。
- vCPU ラジオボタンを選択します。
必要な仮想 CPU ソケットの数を入力し、Save をクリックします。
注記仮想マシンの仮想 CPU ソケットのデフォルトの初期数の最大 3 倍までホットプラグできます。この制限を超えると再起動が必要になります。
仮想マシンが移行可能な場合は、ライブマイグレーションがトリガーされます。そうでない場合、または変更をライブ更新できない場合は、
RestartRequired
条件が仮想マシンに追加されます。
仮想マシンで spec.template.spec.domain.devices.networkInterfaceMultiQueue
フィールドが有効になっていて、CPU がホットプラグされている場合、次の動作が発生します。
- CPU のホットプラグ前に割り当てた既存のネットワークインターフェイスは、仮想 CPU (vCPU) を追加した後でも元のキューカウントを保持します。この動作は正常なものであり、基盤となる仮想化テクノロジーによって発生します。
- 新しい仮想 CPU 設定に合わせて既存のインターフェイスのキュー数を更新するには、仮想マシンを再起動します。再起動は、更新によってパフォーマンスが向上する場合にのみ必要です。
- CPU のホットプラグ後にホットプラグした新しい VirtIO ネットワークインターフェイスには、新しい仮想 CPU 設定と同じキューカウントが自動的に反映されます。
8.5.4. CLI を使用した仮想マシンの編集 リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインを使用して仮想マシンを編集できます。
前提条件
-
oc
CLI がインストールされている。
手順
次のコマンドを実行して、仮想マシンの設定を取得します。
oc edit vm <vm_name>
$ oc edit vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - YAML 設定を編集します。
実行中の仮想マシンを編集する場合は、以下のいずれかを実行する必要があります。
- 仮想マシンを再起動します。
新規の設定を有効にするために、以下のコマンドを実行します。
oc apply vm <vm_name> -n <namespace>
$ oc apply vm <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5.5. 仮想マシンへのディスクの追加 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS Web コンソールを使用して、仮想ディスクを仮想マシン (VM) に追加できます。
手順
-
Web コンソールで Virtualization
VirtualMachines に移動します。 - 仮想マシンを選択して、VirtualMachine details ページを開きます。
- Disks タブで、Add disk をクリックします。
Source、Name、Size、Type、Interface、および Storage Class を指定します。
- オプション: 空のディスクソースを使用し、データボリュームの作成時に最大の書き込みパフォーマンスが必要な場合に、事前割り当てを有効にできます。そのためには、Enable preallocation チェックボックスをオンにします。
-
オプション: Apply optimized StorageProfile settings をクリアして、仮想ディスクの Volume Mode と Access Mode を変更できます。これらのパラメーターを指定しない場合、システムは
kubevirt-storage-class-defaults
config map のデフォルト値を使用します。
- Add をクリックします。
仮想マシンが実行中の場合は、仮想マシンを再起動して変更を適用する必要があります。
8.5.5.1. ストレージフィールド リンクのコピーリンクがクリップボードにコピーされました!
フィールド | 説明 |
---|---|
空白 (PVC の作成) | 空のディスクを作成します。 |
URL を使用したインポート (PVC の作成) | URL (HTTP または HTTPS エンドポイント) を介してコンテンツをインポートします。 |
既存 PVC の使用 | クラスターですでに利用可能な PVC を使用します。 |
既存の PVC のクローン作成 (PVC の作成) | クラスターで利用可能な既存の PVC を選択し、このクローンを作成します。 |
レジストリーを使用したインポート (PVC の作成) | コンテナーレジストリーを使用してコンテンツをインポートします。 |
コンテナー (一時的) | クラスターからアクセスできるレジストリーにあるコンテナーからコンテンツをアップロードします。コンテナーディスクは、CD-ROM や一時的な仮想マシンなどの読み取り専用ファイルシステムにのみ使用する必要があります。 |
Name |
ディスクの名前。この名前には、小文字 ( |
Size | ディスクのサイズ (GiB 単位)。 |
型 | ディスクのタイプ。例: Disk または CD-ROM |
Interface | ディスクデバイスのタイプ。サポートされるインターフェイスは、virtIO、SATA、および SCSI です。 |
Storage Class | ディスクの作成に使用されるストレージクラス。 |
ストレージの詳細設定
以下のストレージの詳細設定はオプションであり、Blank、Import via URL、および Clone existing PVC ディスクで利用できます。
これらのパラメーターを指定しない場合、システムはデフォルトのストレージプロファイル値を使用します。
パラメーター | オプション | パラメーターの説明 |
---|---|---|
ボリュームモード | Filesystem | ファイルシステムベースのボリュームで仮想ディスクを保存します。 |
Block |
ブロックボリュームで仮想ディスクを直接保存します。基礎となるストレージがサポートしている場合は、 | |
アクセスモード | ReadWriteOnce (RWO) | ボリュームはシングルノードで読み取り/書き込みとしてマウントできます。 |
ReadWriteMany (RWX) | ボリュームは、一度に多くのノードで読み取り/書き込みとしてマウントできます。 注記 このモードはライブマイグレーションに必要です。 |
8.5.6. 仮想マシンに Windows ドライバーディスクをマウントする リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS Web コンソールを使用して、Windows ドライバーディスクを仮想マシンにマウントできます。
手順
-
Virtualization
VirtualMachines に移動します。 - 目的の仮想マシンを選択して、VirtualMachine details ページを開きます。
- Configuration タブで、Storage をクリックします。
Mount Windows drivers disk チェックボックスを選択します。
マウント済みディスクのリストに、Windows ドライバーディスクが表示されます。
8.5.7. シークレット、設定マップ、またはサービスアカウントの仮想マシンへの追加 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift Service on AWS Web コンソールを使用して、シークレット、config map、またはサービスアカウントを仮想マシンに追加します。
これらのリソースは、ディスクとして仮想マシンに追加されます。他のディスクをマウントするように、シークレット、設定マップ、またはサービスアカウントをマウントします。
仮想マシンが実行中の場合、仮想マシンを再起動するまで、変更は有効になりません。新しく追加されたリソースは、ページの上部で保留中の変更としてマークされます。
前提条件
- 追加するシークレット、設定マップ、またはサービスアカウントは、ターゲット仮想マシンと同じ namespace に存在する必要がある。
手順
-
サイドメニューから Virtualization
VirtualMachines をクリックします。 - 仮想マシンを選択して、VirtualMachine details ページを開きます。
-
Configuration
Environment をクリックします。 - Add Config Map, Secret or Service Account をクリックします。
- Select a resource をクリックし、リストから resource を選択します。6 文字のシリアル番号が、選択したリソースに対して自動的に生成されます。
- オプション: Reload をクリックして、環境を最後に保存した状態に戻します。
- Save をクリックします。
検証
-
VirtualMachine details ページで、Configuration
Disks をクリックし、リソースがディスクのリストに表示されていることを確認します。 -
Actions
Restart をクリックして、仮想マシンを再起動します。
他のディスクをマウントするように、シークレット、設定マップ、またはサービスアカウントをマウントできるようになりました。
8.5.8. 複数の仮想マシンを更新する リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインインターフェイス (CLI) を使用して、複数の仮想マシンを同時に更新できます。
前提条件
-
oc
CLI がインストールされている。 -
Red Hat OpenShift Service on AWS クラスターにアクセスでき、
cluster-admin
権限を持っている。
手順
次のコマンドを実行して、特権付きサービスアカウントを作成します。
oc adm new-project kubevirt-api-lifecycle-automation
$ oc adm new-project kubevirt-api-lifecycle-automation
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create sa kubevirt-api-lifecycle-automation -n kubevirt-api-lifecycle-automation
$ oc create sa kubevirt-api-lifecycle-automation -n kubevirt-api-lifecycle-automation
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create clusterrolebinding kubevirt-api-lifecycle-automation --clusterrole=cluster-admin --serviceaccount=kubevirt-api-lifecycle-automation:kubevirt-api-lifecycle-automation
$ oc create clusterrolebinding kubevirt-api-lifecycle-automation --clusterrole=cluster-admin --serviceaccount=kubevirt-api-lifecycle-automation:kubevirt-api-lifecycle-automation
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、
kubevirt-api-lifecycle
イメージのプル URL を決定します。oc get csv -n openshift-cnv -l=operators.coreos.com/kubevirt-hyperconverged.openshift-cnv -ojson | jq '.items[0].spec.relatedImages[] | select(.name|test(".*kubevirt-api-lifecycle-automation.*")) | .image'
$ oc get csv -n openshift-cnv -l=operators.coreos.com/kubevirt-hyperconverged.openshift-cnv -ojson | jq '.items[0].spec.relatedImages[] | select(.name|test(".*kubevirt-api-lifecycle-automation.*")) | .image'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の例に示すように、ジョブオブジェクトを作成して
Kubevirt-Api-Lifecycle-Automation
をデプロイします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 1
- イメージの値は、イメージのプル URL に置き換えます。
- 2
MACHINE_TYPE_GLOB
値は、独自のパターンに置き換えます。このパターンは、アップグレードが必要な非推奨のマシンタイプを検出するために使用されます。- 3
RESTART_REQUIRED
環境変数がtrue
に設定されている場合、マシンタイプの更新後に仮想マシンが再起動されます。仮想マシンを再起動したくない場合は、値をfalse
に設定します。- 4
namespace
環境値は、仮想マシンを検索する namespace を示します。ジョブがクラスター内のすべての namespace を調べるようにするには、パラメーターを空のままにします。- 5
LABEL_SELECTOR
環境変数を使用して、ジョブアクションを受信する仮想マシンを選択できます。ジョブをクラスター内のすべての仮想マシンに適用する場合は、パラメーターに値を割り当てないでください。
8.5.8.1. 仮想マシンでの一括操作の実行 リンクのコピーリンクがクリップボードにコピーされました!
Web コンソールの VirtualMachines リストビューを使用して、複数の仮想マシン (VM) に対して同時に一括操作を実行できます。これにより、最小限の手間で仮想マシンのグループを効率的に管理できます。
利用可能な一括操作
- Label VMs - 選択した仮想マシン全体に適用されるラベルを追加、編集、または削除します。
- Delete VMs - 削除する複数の仮想マシンを選択します。確認ダイアログに、削除対象として選択した仮想マシンの数が表示されます。
- Move VMs to folder - 選択した仮想マシンをフォルダーに移動します。すべての仮想マシンは同じ namespace に属している必要があります。
8.5.9. 高速ストレージアクセス用の複数の IOThreads の設定 リンクのコピーリンクがクリップボードにコピーされました!
ソリッドステートドライブ (SSD) や不揮発性メモリーエクスプレス (NVMe) などの高速ストレージを使用する仮想マシン (VM) に対して複数の IOThreads を設定することで、ストレージパフォーマンスを向上させることができます。この設定オプションは、仮想マシンの YAML を編集することによってのみ使用できます。
複数の IOThreads は、blockMultiQueue
が有効になっていて、ディスクバスが virtio
に設定されている場合にのみサポートされます。この構成を正しく機能させるには、この設定を行う必要があります。
手順
-
サイドメニューから Virtualization
VirtualMachines をクリックします。 - 仮想マシンを選択して、VirtualMachine details ページを開きます。
- YAML タブをクリックして、仮想マシンマニフェストを開きます。
YAML エディターで、
spec.template.spec.domain
セクションを見つけて、次のフィールドを追加または変更します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Save をクリックします。
仮想マシンの実行中は、spec.template.spec.domain
設定を変更できません。変更を適用するには、仮想マシンを停止してから、新しい設定を有効にするために仮想マシンを再起動する必要があります。