ローリングコンバットピッチなう!

AIとか仮想化とかペーパークラフトとか

Ubuntu16.04LTS+Xen(その1: 死闘編)

Core2Duoのメインマシンがメモリ4GBになったので、ちょっと仮想化で遊んでみたいと思い色々調べていました。残念ながらCore2DuoIntel VTに対応していないのでKVMが動かない。
で、目を付けたのがXenです。最近はあまり流行らない感じもありますが準仮想化でハードウェア仮想化支援機構の無いCPUでも最小限のオーバーヘッドでGuest OSを動かせるのはありがたい限り。

で、まずはUbuntu16.04でのXenのインストールについて調査。が、どうも割と新しい情報でもUbuntu14.04+Xenみたいな記事で16.04LTSやそれより新しいモノにXenを入れた記事が見当たらない。この状態いきなりメインマシンに入れるのも怖いのでサブの実験機、こちらは更に非力なCeleron 550(シングルコア)+メモリ2GBのVAIO TypeNで試すことに。

Ubuntu16.04ではなくLinux Mint Mate18.03ですが、基本的にはUbuntu16.04を同じでいけるだろうと...
で、以下の記事とか参照して色々やったんですが...
https://help.ubuntu.com/community/Xen ★基本はこれに従う

Guestが動かない。virt-installvirt-managerとかで楽してGuestイメージを作ろうとしたのが良くなかったのか数々の問題にぶちあたる。

  1. virt-install問題

    下記の様にCentOS7のDomU作成挑みますが...

    sudo virt-install --name centos7-test --vcpu 1 --ram 512 --file <image file path> --file-size 10 --nographics --paravirt --location http://ftp.riken.jp/Linux/centos/7/os/x86_64/

    こんなエラーが発生。

    ERROR    ソケットの '/var/run/libvirt/libvirt-sock' への接続に失敗しました: そのようなファイルやディレクトリはありません

    libvirt-binをインストールしてみる。

    # sudo apt install libvirt-bin

    これでvirt-installを実行

    ERROR    'NoneType' object is not iterable

    うーん、色々ググッてみたけど解決策判らず。

  2. virt-managerを試してみる。

    # sudo apt install virt-manager

    インストールは問題なさげに成功

    # sudo virt-manager
    No protocol specified
    Unable to init server: Could not connect: 接続を拒否されました
    No protocol specified
    Unable to init server: Could not connect: 接続を拒否されました
    No protocol specified
    Unable to init server: Could not connect: 接続を拒否されました
    
    (virt-manager:1952): Gtk-WARNING **: cannot open display: :0
    ^C

    ま、こんな感じでエラーが。これはすぐに解決

    # xhost si:localuser:root

    これでvirt-managerが起動するようになる。
    が、virt-managerからGUIでimageファイルサイズだの、メモリサイズだの、インストーラURLだの指定してDomU作成に挑むと..
    「xenlightがVMを生成できない」みたいなエラー吐いて結局DomUが起動できない。
    色々ググるとapparmorの設定で治るだの、apparmorアンインストールすればイケるだの情報があるんですが、ダメでした

もしかするとMintじゃダメなのでは?と本家Ubuntu16.04を再インストールして試したけど全くダメだった。

で、仕方なくLinux Mintに戻して、手動でDomUのcfg作成に挑むのでした。