Top / 雑記:2010-10-11

サーバ構築メモ#3(KVM編その2)(2010年10月11日)

Ubuntu10.10(Maverick)が正式リリースされKernelのバージョンが2.6.35になったので
Ubuntu10.10+KVM+QEMU+vhost-netを試してみる際のメモ

まずはvhostモジュールを組み込んでみる
$sudo modprobe vhost-net
これでkvm上でvhostが使用可能になる

Ubuntu標準搭載のQEMUはvhostに対応していないので
gitを使用して最新版を取ってくる
まずgitをインストールし、必要なソースコードを取得
$sudo apt-get install git-core
$git clone git://git.kernel.org/pub/scm/linux/kernel/git/mst/qemu-kvm.git qemu
$cd qemu

コンパイルに必要なモジュールを取ってくる
$sudo apt-get install zlib1g-dev libpci-dev libaio-dev uuid-dev ncurses-dev

ソースコードからバイナリを構築する
$./configure
$make

インストールを行う
$sudo make install

今までのスクリプトと互換性を保つために適当にシンボリックリンクを作成
$sudo ln -s /usr/local/bin/qemu-system-x86_64 /usr/bin/kvm

毎回modprobeするのは面倒なのでrc.localで自動的に行うようにする
$sudo vi /etc/rc.local


# vhost-net module
modprobe vhost-net



以下、前回のKVM編(ブリッジ接続の項目以下)と同様の作業を行う
その際にvhostが有効になるように起動スクリプトを下記のように追記
$sudo vi /home/run_main


#!/bin/sh
kvm -m 512 -vnc :0 -monitor telnet::4000,server,nowait -k ja -daemonize \
  -drive file=/home/server-main.img,if=virtio,index=0,boot=on \
  -drive file=/home/server-sub.img,if=virtio,index=1 \
  -net nic,model=virtio,macaddr=52:54:00:12:34:56 \
  -net tap,ifname=tap0,script=/etc/kvm/kvm-ifup,downscript=/etc/kvm/kvm-ifdown,vhost=on



軽くテストを行いましたが、2TB以上のストレージをマウントするとデータを破壊するバグ等は
0.12.5以降修正されているので、問題なさそうです