12.7. Web コンソールを使用した仮想マシンのライブ移行
継続的に実行する必要があるタスクを実行している仮想マシンを移行する場合は、シャットダウンせずに、その仮想マシンを別の KVM ホストに移行できます。これはライブマイグレーションとも呼ばれます。以下の手順では、Web コンソールを使用した移行方法を説明します。
I/O 負荷が高いタスクなど、KVM がメモリーページを転送するよりも速い速度でメモリーページを変更するタスクには、仮想マシンをライブマイグレーションしないことが推奨されます。
前提条件
RHEL 9 Web コンソールがインストールされている。
手順は、Web コンソールのインストールおよび有効化 を参照してください。
- Web コンソールの仮想マシンプラグインが システムにインストールされている。
- 移行元ホストと移行先ホストが実行中である。
移行先ホストで以下のポートが開いていることを確認します。
- ポート 22 は、SSH を使用して宛先ホストに接続するために必要です。
- ポート 16509 は、TLS を使用して宛先ホストに接続するために必要です。
- ポート 16514 は、TCP を使用して宛先ホストに接続するために必要です。
- ポート 49152-49215 は、QEMU がメモリーおよびディスク移行データを転送するために必要です。
- 仮想マシンは、移行先ホストの CPU 機能と互換性がある必要があります。これを確認するには、仮想マシン移行のホスト CPU の互換性の確認 を参照してください。
- 仮想マシンのディスクイメージは、移行元ホストおよび移行先ホストからアクセス可能な 共有ストレージ に配置されています。
仮想マシンの実行中に移行する場合は、ネットワークの帯域幅が、仮想マシンがダーティーメモリーページを生成する速度を超える必要があります。
ライブマイグレーションを開始する前に仮想マシンのダーティーページ速度を取得するには、コマンドラインインターフェイスで次の手順を行います。
短期間、仮想マシンのダーティーページ生成速度を監視します。
# virsh domdirtyrate-calc vm-name 30
監視が終了したら、結果を取得します。
# virsh domstats vm-name --dirtyrate Domain: 'vm-name' dirtyrate.calc_status=2 dirtyrate.calc_start_time=200942 dirtyrate.calc_period=30 dirtyrate.megabytes_per_second=2
この例では、仮想マシンが 1 秒あたり 2MB のダーティーメモリーページを生成しています。帯域幅が 2MB/s 以下のネットワーク上でこのような仮想マシンをライブマイグレーションしようとすると、仮想マシンを一時停止したり、ワークロードを低くしたりしないと、ライブマイグレーションが進行しません。
ライブマイグレーションが正常に終了するように、Red Hat では、ネットワークの帯域幅が仮想マシンのダーティーページの生成速度を大幅に上回ることを推奨しています。
calc_period
オプションの値は、ワークロードとダーティーページ速度により異なる場合があります。いくつかの calc_period
値を試して、環境のダーティーページ速度に合わせた最適な期間を決定できます。
手順
Web コンソールの仮想マシンインターフェイスで、移行する仮想マシンのメニュー ボタン
をクリックします。仮想マシン操作を制御するためのドロップダウンメニューが表示されます。
仮想マシンを別のホストに移行ダイアログボックスが表示されます。
- 宛先ホストの URI を入力します。
移行の期間を設定します。
- Permanent - 仮想マシンを永続的に移行する場合はチェックを外します。永続的な移行では、移行元ホストから仮想マシンの設定が完全に削除されます。
- Temporary - 一時的な移行では、仮想マシンのコピーを移行先ホストに移行します。このコピーは、仮想マシンのシャットダウン時に移行先ホストから削除されます。元の仮想マシンは、ソースホストに残ります。
仮想マシンが移行先ホストに移行されます。
検証
仮想マシンの移行に成功し、正常に機能しているかどうかを確認するには、次のコマンドを実行します。
- 移行先ホストで利用可能な仮想マシンのリストに仮想マシンが表示されているかどうかを確認します。
- 移行した仮想マシンを起動し、起動するかどうかを確認します。