ConVirt 2 KVM /Xen 管理ツール

会社の仮想環境をVMware server ベースから KVMベースに移す前振りとして自宅の環境もKVMベースに移行中。
CentOSに標準で付いてくる libvirt + virtsh, virt-manager はシンプルなので自宅で使うのには良いのだけど、会社のようにある程度台数があると結構手間。(VMware server でもその辺面倒だった)
あと運用上 WebUI のほうがありがたい。
というわけでPrivateCloud 系のソフトなども含めていろいろ調べていたけどなかなか自分にあったものがなく悩んでいた。
そんなか見つけたのが ConVirt
convirture という会社が開発している Xen,KVMの管理ツールでもともとは XenMan という名前だったらしい。
ver 1系は Xで動くアプリだったのが 2系からWebアプリになってjquery など使った今風のUIになっている。

ConVirt 2 の管理サーバ ConVirt Management Server (CMS) は VM の形で提供されている。
なのでインストールは結構手軽だと思う。
私は CMSVM自体は libvirt で管理するようにしてみた。ConVirt自体は libvirt を使っていないようで、libvirtに登録されているVMは管理画面からは表示されない。またVMのイメージや登録情報などは ホストサーバの /var/cache/convirt 以下に置かれている。

インストールは以下のような感じ。

ホストOS: CentOS 5.6 x86_64

1. ホストOSにKVMをインストールし、virt-manager で管理できるようにしておく
2. convirtureのサイトにあるインストール手順確認
3. Using Appliance with KVM の "Download the appliance disk image here" から CMSVM をダウンロード
4. CMS VM を解凍して c2_appliance.disk.xm を /var/lib/libvirt/images/ にコピー
5. virt-manager から新しく VMを作成、ディスクイメージとして上記を選択(diskの種別は IDE)
6. 起動。
7. virt-manager のコンソールからログイン cms/convirt
8. cms起動
cd ~/convirt
./convirt-ctl start
9. cmsサーバの IPを確認して http://:8081/ へブラウザでアクセス
admin/admin でログイン

以上でとりあえずCMS起動まで出来た。
なおVMでなく自分でインストールすることもできるようです。RHEL系はこちら

CMSに管理すべきホストサーバを追加するのはここKVMの場合は ssh 経由で管理するのでホストサーバの rootのパスワードを登録する。

実際にゲストOSを起動する場合はホストサーバに /etc/qemu-ifup, qemu-ifdown が必要。
検索して見つけたこちらのサイトスクリプトをそのまま使わせてもらいました。

qemu-ifup

#!/bin/sh

echo "Bringing up $1 for bridged mode..."
ifconfig $1 0.0.0.0 promisc up
echo "Adding $1 to br0..."
brctl addif br0 $1

qemu-ifdown

#!/bin/sh

echo "Removing $1 to br0..."
brctl delif br0 $1
echo "Shutting down $1..."
ifconfig $1 down

これで実際にゲストOSを起動してCentOSのインストールまで出来ました。

まだ触り始めたばかりだけど自分が欲しかったものにかなり近い感じなのでしばらくこれを使ってみる予定。既存の lib-virt ともとくにバッティングしないみたいなのでそういった意味でも評価しやすいと感じます。