2.1. マシンタイプのアップグレード
これについては、Ubuntu Wikiにもいくつかの制約と考慮事項とともに記載されています。22
既存の定義済みゲストのマシン タイプを次のように更新する必要がある場合があります。
• 最新のセキュリティ修正プログラムと機能を入手する
• 現在サポートされていないリリースで作成されたゲストを引き続き使用する
一般的に、qemu/kvm を新しいメジャー バージョンにアップグレードするときには、マシン タイプを更新することをお勧めします。ただし、この変更はゲストから見えるため、自動化タスクになることはほとんどありません。ゲスト デバイスの外観が変わったり、ゲストに新機能がアナウンスされたりする場合があります。Linux は通常、このような変更を非常にうまく許容しますが、ゲストの設定とワークロードに大きく依存するため、これを評価する必要があります。
システムの所有者/管理者によって行われます。他のオペレーティング システムでは、ハードウェアを変更すると重大な影響が出ることが知られています。物理マシンのすべてのデバイスとファームウェアを最新のリビジョンに置き換えるのと同様に、マシン タイプの変更を検討してください。ここで適用されるすべての考慮事項は、マシン タイプのアップグレードの評価にも適用されます。
通常、大規模な構成変更では、ゲスト定義とディスク状態をバックアップして、万が一に備えてロールバックできるようにしておくのが賢明です。virsh または同様のツールを使用してマシン タイプを更新するための統合された単一のコマンドはありません。これはマシン定義の通常の一部です。したがって、他のほとんどのものと同じ方法で更新されます。
まずマシンをシャットダウンし、その状態になるまで待ちます。
virsh シャットダウン
# 待って
virsh リスト --inactive
# これでマシンが「シャットダウン」としてリストされるはずです
19 http://wiki.qemu.org/Main_Page
20 http://wiki.qemu.org/download/qemu-doc.html#sec_005finvocation
21 http://wiki.qemu.org/download/qemu-doc.html#pcsys_005fmonitor
22 https://wiki.ubuntu.com/QemuKVMMigration#Upgrade_machine_type
次に、マシン定義を編集し、マシン属性の type タグでタイプを見つけます。
virsh 編集
えーっと
これを必要な値に変更します。使用可能なタイプを確認する必要がある場合は、「-M ?」を使用します。利便性のためにアップストリーム タイプを提供していますが、Ubuntu タイプのみがサポートされていることに注意してください。そこでは、現在のデフォルトも確認できます。一般的に、新しい機能を利用するために、また、新しいデバイス仮想化にのみ適用されるバグ修正のメリットを得るために、可能であれば新しいタイプに変更することを強くお勧めします。
kvm -M ?
# マシンタイプをリストします。例:
pc-i440fx-xenial Ubuntu 16.04 PC (i440FX + PIIX、1996) (デフォルト)
...
この後、ゲストを再度起動できます。 必要に応じて、ゲストとホストから現在のマシン タイプを確認できます。
virshスタート
# アクティブな XML 定義をダンプしてホストからチェックする
virsh ダンプxml | xmllint --xpath "文字列(//domain/os/type/@machine)" -
# またはゲストから dmidecode 経由で実行 (サポートされている場合) sudo dmidecode | grep Product -A 1
製品名: 標準 PC (i440FX + PIIX、1996) バージョン: pc-i440fx-xenial
xml ファイルなどの非ライブ定義を保持している場合は、それらも更新することを忘れないでください。