Virt-manager
Virt-Manager は、仮想マシン管理サービスを提供する Libvirt ライブラリ向けのグラフィカルユーザーインターフェースです。Virt-manager のインターフェースにより、端末を使用せずに仮想マシンの作成・削除・操作が簡単に行えます。
Virt-manager は主に KVM をサポートしますが、Xen や LXC など他のハイパーバイザーにも対応しています。
目次
インストール
まず Libvirt または Linux コンテナ のページを参照し、仮想マシンを作成できるように設定します。その後 virt-manager パッケージをインストールします。必要であれば QEMU もインストールしてください。
LXC 接続を使うには、libvirtd.service ユニットを有効化/起動します。
QEMU 接続を使うには、libvirtd.socket ユニットを有効化/起動します。
サービスが正常に起動していることを確認するには、ユニットステータスを確認してください。
設定
基本設定
自分自身を libvirt ユーザーグループに追加します。
また、Virt-manager のデフォルトプール以外のファイル/フォルダを使用する場合、それらが libvirt-qemu グループに属していることを確認すると良いでしょう。そうでない場合、パーミッションエラーが発生する可能性があります。
# chown "$USER":libvirt-qemu /path/to/vm/folder
Socket を使わない root なしの KVM
通常ユーザー(root ではない)として使用するには、KVM の設定が必要です。これにより libvirt のネットワーク機能も有効になります。
以下の設定を変更して、UNIX ドメインソケットの所有権を libvirt にし、ソケットのパーミッションを読み書き可能にします:
/etc/libvirt/libvirtd.conf
... unix_sock_group = 'libvirt' ... unix_sock_rw_perms = '0770' ...
自分のユーザーを libvirt ユーザーグループに追加します。
また、/etc/libvirt/qemu.conf にユーザーを設定します。そうしないと、QEMU がローカルドライブへアクセスしようとしたときにパーミッション拒否エラーになります。
user = "libvirt-qemu" や group = "libvirt-qemu" を検索し、コメントを外して自分のユーザー名または ID に変更してください。編集後は以下のようになります。
/etc/libvirt/qemu.conf
# Some examples of valid values are: # # user = "qemu" # A user named "qemu" # user = "+0" # Super user (uid=0) # user = "100" # A user named "100" or a user with uid=100 # user = "username" # The group for QEMU processes run by the system instance. It can be # specified in a similar way to user. group = "username"
Virt-Manager を開くと、デフォルトでは QEMU 接続の system バリアント(root)が使用されます。
これを user 接続に変更するには、File > Add Connection に移動します。
ハイパーバイザーとして QEMU/KVM User session を選択して OK をクリックします。これにより user セッションに自動接続されるようになります。system 接続は切断・削除しても構いません。
ネットワーキング
user session でネットワークブリッジを使用するには、まず libvirt のシステム管理側でセットアップする必要があります。
そのためには libvirt の デーモン が起動している必要があります。
正常に起動すれば、Virt-manager 上で QEMU 接続の system バリアント(root)を開けます。ネットワークタブでブリッジを希望の設定で作成します。
その後、user session の仮想マシンからそのブリッジを使用するには、ブリッジ構成に従って qemu-bridge-helper を設定してください。
設定が完了すると、そのブリッジは user session の仮想ネットワーク内で利用可能になります。
NAT - ブリッジ - ホストオンリー
NAT
NAT は、VM をホストと同じ IP 経路にルーティングします。このオプションは Show hardware -> NIC で選択でき、追加設定は不要です。
ブリッジ
ブリッジモードは、VM がネットワーク内の独立したクライアントとして動作します。 Virt-manager では、明示的にインターフェースを選択する必要があります。
VirtualBox や VMware のように自動選択はされません。 ブリッジを使用するには、NAT を使った 仮想インターフェースの作成 が推奨されます。
(実際のインターフェースも使えますが、追加設定が必要になる場合があります。)
ホストオンリー
ホストオンリー構成では、ホストとゲスト間のネットワーク操作のみが可能です。
Virt-manager にはこのオプションは存在しません。 代わりに、仮想的に分離されたネットワークに接続されたブリッジを使用します。詳しくは #Creating a Virtual Interface を参照してください。
接続の詳細
仮想インターフェースの作成
Edit -> Connection Details -> add に移動します。
以下のオプションが利用可能です:
NAT、Routed、Open、Isolated、SR-IOV Pool
3D アクセラレーション
virtio はパラバーチャルな 3D グラフィックドライバです。基本的な 3D アクセラレーションを有効にするには:
- 仮想マシンの設定ページへ移動します。
- "Add Hardware" ボタンをクリック > Video > "Model" を "Virtio" に設定。その後、他の "Video" 仮想ハードウェアを削除します(サイドバー内)。
- "Display Spice" に移動し、"Listen Type" を "None" に設定。"OpenGL" チェックボックスを有効にし、適切なレンダラーを選択します。
- "Video Virtio" を選択し、"3D Acceleration" にチェックを入れます。
3D グラフィックのテストには mesa-utils パッケージの glxgears を使用できます。glxgears -info を使えば、OpenGL レンダラーの情報も表示されます。