Connect to remote virtual machines
KVM で仮想環境を構築して、リモートPC からアクセスしてみました。
ゲストOS の作成と環境設定には仮想マシンマネージャー(virt-manager)を使いました。リモートPC からアクセスしてもサウンドは有効です。
GNOME Boxes からもアクセスできます。

目次
システム構成
- サーバPC: Ubuntu GNOME 15.10
- リモートPC: Ubuntu GNOME 15.10
サーバPC の設定
- パッケージのインストール$ sudo apt-get install openssh-server kvm libvirt-bin bridge-utils virt-manager 
仮想環境の作成
仮想マシンマネージャー(virt-manager)でサーバPC 上にゲストOS をインストールします。
リモートPC の環境が構築済みであれば、リモートPC からでも作業できます。
- [システムツール]-[仮想マシンマネージャー]を選択
- [ファイル]-[新しい仮想マシン]を選択
- 画面の指示に従ってOS をインストールします。
 [管理しているストレージか、他の既存のストレージを選択する]でイメージの格納先とイメージファイル名を指定できます。
- [表示]-[詳細]を選択し、「タイトル」を適宜変更します。なお、「名前」の方は半角空白を指定できません。
リモートPC の設定
- パッケージのインストール - $ sudo apt-get install virt-manager 
- SSH の設定 - $ ssh-keygen 
 $ ssh-copy-id -i ~/.ssh/id_rsa.pub username@server_hostname
- サーバへの接続設定 
- [システムツール]-[仮想マシンマネージャー]を選択 
- [ファイル]-[接続を追加]を選択 
 - リモートホストに接続をチェック
 - ユーザ名を変更
 - ホスト名にサーバPC を指定
- [接続]を押下 
- 仮想マシンの実行 
- 仮想マシンを一覧から選択して、[編集]-[仮想マシンの詳細]を選択 
- [仮想マシン]の[実行]または[復元]を選択 
- [表示]-[画面の拡大縮小]-[仮想マシンのウィンドウを自動的にリサイズ]をチェック 
Tips
virsh で一覧表示
| $ virsh list --all | 
GNOME Boxes によるローカル接続
ローカルからGNOME Boxes で仮想マシンに接続できます。 スナップショットも共有されます。
  
GNOME Boxes によるリモート接続
リモートからGNOME Boxes で仮想マシンに接続するには、以下のようにポートの設定を変更します
| 87 <graphics type='spice' autoport='yes'/> | 
| 87 <graphics type='spice' port='15900' autoport='no' listen='0.0.0.0'> | 
| $ sudo virsh define /etc/libvirt/qemu/ubuntu-gnome-1604.xml | 
その後、virt-manager で仮想マシンを実行状態にしておき、GNOME Boxes 上で接続URI をspice://192.168.0.2:15900 として接続します。
qcow2 形式イメージへ変換
スナップショットを作るためには、qcow2 形式でイメージを作成します。 別の形式から変換する場合は、以下のコマンドを実行します。
  $ qemu-img convert -O qcow2 before-raw.img  after-qcow2.img
イメージの移動と再登録
イメージを移動する場合は、ファイルの移動の他に定義の変更も必要です。
  $ mv ubuntu-gnome-1604.img /mnt/VMs/
$ virsh edit ubuntu-gnome-1604
  34     <disk type='file' device='disk'>
35       <driver name='qemu' type='qcow2'/>
36       <source  file='/mnt/VMs/ubuntu-gnome-1604.img'/>
37       <target dev='hda' bus='ide'/>
38       <address type='drive' controller='0' bus='0' target='0' unit='0'/>
39     </disk>
  $ sudo virsh define /etc/libvirt/qemu/ubuntu-gnome-1604.xml


