「インストール - KVM」の版間の差分

ナビゲーションに移動 検索に移動
427行目: 427行目:


== エラー時の対処方法 ==
== エラー時の対処方法 ==
===== ネットワーク =====
==== ネットワーク ====
VM起動時に下記のエラーが出力されて、VMが起動できないことがある。<br>
VM起動時に下記のエラーが出力されて、VMが起動できないことがある。<br>
  ERROR    Requested operation is not valid: network 'default' is not active
  ERROR    Requested operation is not valid: network 'default' is not active
487行目: 487行目:
  sudo systemctl restart libvirtd
  sudo systemctl restart libvirtd
<br>
<br>
===== DNSマスカレード =====
==== DNSマスカレード ====
VM起動時に下記のエラーが出力されて、VMが起動できないことがある。<br>
VM起動時に下記のエラーが出力されて、VMが起動できないことがある。<br>
  error: Failed to start network default
  error: Failed to start network default
494行目: 494行目:
この時、DNSマスカレードをインストールする。<br>
この時、DNSマスカレードをインストールする。<br>
  sudo zypper install dnsmasq
  sudo zypper install dnsmasq
<br>
==== ホストOSのスリープ / ハイバネート ====
ゲストOSの起動中にホストOSのスリープ / ハイバネートを実行する場合、ホストOSがロックアップするバグが存在する。<br>
<br>
VFIOを有効にしたゲストOSは、スリープ / ウェイクアップサイクルを通して実行したままにすると不安定になる傾向があり、<br>
シャットダウンを実行する時、ホストOSがロックアップすることが知られている。<br>
<br>
これを回避する方法は、libvirtフックスクリプトとsystemdユニットを使用して、<br>
ゲストOSの実行中にホストOSがスリープ状態になることを防ぐ。<br>
<br>
また、libvirtフックスクリプトを実行するためには、実行可能なパーミッションが必要である。<br>
sudo vi /etc/libvirt/hooks/qemu
<br>
<syntaxhighlight lang="sh">
# libvirtフックスクリプト
#!/usr/bin/env bash
OBJECT="$1"
OPERATION="$2"
SUBOPERATION="$3"
EXTRA_ARG="$4"
case
"$OPERATION" in "prepare")
    systemctl start libvirt-nosleep@"$OBJECT"
    ;;
"release")
    systemctl stop libvirt-nosleep@"$OBJECT"
    ;;
esac
</syntaxhighlight>
<br>
sudo vi /etc/systemd/system/libvirt-nosleep@.service
<br>
# systemdユニット
[Unit]
Description=Preventing sleep while libvirt domain "%i" is running
[Service]
Type=simple ExecStart=/usr/bin/systemd-inhibit --what=sleep --why="Libvirt domain \"%i\" is running" --who=%U --mode=block sleep infinity
<br><br>
<br><br>


案内メニュー