12FF5B8

hico_horiuchiの技術系な覚え書き.

WebVirtMgr + Apache on Ubuntu 12.04

タイトルの通り,ちょっと詰まったので記事にしておく.

研究室ではKVMで仮装マシンを動かしていて,ホストマシンが複数台ある.
それらをVPSのコントロールパネルみたいにWebで管理したかった.

調べてみたらWebVirtMgrという,libvirtをWebから管理するものがあったので導入してみた.

WebVirtMgrのインストール

基本的にGitHubのInstall WebVirtMgrに書いてある通りに進める.
ただし,以下の変更点があるので注意.

  • 1. Installation
    • apt-get installsupervisornginxをインストールしない.
  • 3. Setup Nginx
    • 飛ばす.
  • 4. Setup Websocket proxy (noVNC) and Supervisor
    • 「Add file webvirtmgr.conf in /etc/supervisor/conf.d:」と「Restart supervisor daemon」を飛ばす.

Apacheのインストール

通常はnginxでプロキシを立てて使うようだけど,今回は同じサーバで既にGitLab用のnginxが動いてるし,ポート番号を変えたかったので,Apacheを入れた.

まず,必要なパッケージをインストール.

$ sudo apt-get install virtinst apache2 libapache2-mod-python libapache2-mod-wsgi python-novnc python-numpy

/etc/apache2/sites-available/webvirtmgrを次の内容で作成する.

WSGIScriptAlias / /var/www/webvirtmgr/webvirtmgr/wsgi.py
WSGIPythonPath /var/www/webvirtmgr/

Alias /static /var/www/webvirtmgr/static/
Alias /media /var/www/webvirtmgr/media/

<Directory /var/www/webvirtmgr/webvirtmgr>
    <Files wsgi.py>
        Order deny,allow
        Allow from all
    </Files>
</Directory>

作成したWebVirtMgrのサイト設定を有効にする.

$ sudo a2ensite webvirtmgr
$ sudo service apache2 restart

これでWebブラウザからサーバの8000番ポートにアクセスするとログイン画面が表示されるはず.

libvirtqemuの設定

公式のドキュメントを参照.

ufwの設定

WebVirtMgrとホストマシンで,それぞれ以下のポートを開けておく必要がある.

  • WebVirtMgr
  • ホストマシン
    • 5900~: QEMUVNC(VM毎に空いている番号に順に割り振り)
    • 16509: libvirt

まとめ

Apachemod_python周りで苦戦したけど,なんとかインストールできた.
Webから一通りの操作ができ,何よりVNCが使えるのが非常に便利だ.