11月16日、LPI-Japan主催のセミナーでKVMに関する講演をさせていただきました。当研究所ではこれまでにqemu-kvmをソースからコンパイルして使うことを前提に色々な紹介をしてきましたが、講演では広く気軽に試していただくよう、Ubuntu Desktop Editionを例にパッケージでインストールする方法を取り上げました。講演ではスライドでお見せした部分を、当ブログではじっくりコンソールでご覧にいれたいと思います。
サーバの準備
「Desktop環境で気軽に試していただく」ということで、サーバ(PC)についてうるさい条件はつけていません。強いて言うなら
- VT対応のCPUがよいが、なくても試せます
- メモリは1GB以上。試すだけなら半分ぐらいでも大丈夫です
- ディスクは空き容量20GBほど。5GB以下だと仮想マシンが入りません
ぐらいでしょうか。これにUbuntu Desktop Editionをインストールします。バージョンは10.04でも大丈夫ですが、10.10が最新版です。Ubuntuのインストールにあたって特別な設定やオプションは必要ありません。
KVMパッケージのインストール
Applications → Accessories → Terminal を実行し、コマンドラインから次のように入力します。
$ sudo apt-get install qemu-kvm kvm-pxe
次にKVMモジュールを有効化します。
$ sudo modprobe kvm
以上で完了です。ちなみにUbuntu 10.10の場合、インストールされるqemuのバージョンは7月27日にリリースされた0.12.5になります。
br0の設定
当ブログのネットワーク設定編をご覧いただいた方でしたらお分かりと思いますが、VMに外部ネットワークを接続するためにはブリッジ・インターフェースを用意する必要があります。そのために /etc/network/interfaces を書き換えます。以下にDHCPでアドレスを貰う場合の設定をご紹介します。
auto lo iface lo inet loopback auto eth0 iface eth0 inet manual auto br0 iface br0 inet dhcp bridge_ports eth0
ファイルを書き換えたらインターフェースをリスタートします。
$ sudo /etc/init.d/networking restart
これでホスト・サーバのインターフェースはbr0となり、ブリッジが利用できるようになります。
VMインストールのための準備
次にVMのHDDに当たるイメージファイルを作成します。ディスク性能編でご紹介しましたが、ごく簡単に試すならqcow2フォーマットで作成しましょう。
$ qemu-img create -f vm.img 10G
やっぱりパフォーマンスが気になるということでしたら、スパースファイルにならないようddを使って作ります。
$ dd if=/dev/zero of=vm.img bs=1M count=10240
ディスクの空き容量を超えないよう注意しましょう。
最後にインストールしたいOSのisoイメージファイルを用意しておきます。以上で準備完了です。
VMを起動する
それではいよいよVMを起動してみましょう。カレントディレクトリにvm.imgとxxxx.isoファイルがあると仮定します。
$ sudo kvm vm.img -m 256 -net nic,model=e1000,macaddress=xx:xx:xx:xx:xx:xx -net tap,ifname=tap0 -cdrom xxxx.iso -boot d
これでCD-ROMからブートして、HDDに見立てたファイルvm.imgにインストールできるようになります。
スクリーンショットを撮るために用意したPCがしょぼくて、VTが付いていません。そのためにKVMサポートが動いていません。
このようにGUI環境下ではウィンドウがそのままVMとなり、フォーカスがある限りVMに対する操作がキーボードやマウスを使って行えます。マウスカーソルはVMのウィンドウに固定されますが、タイトル部分に出ているようにCTL+ALTを押すとリリースできます。
qemuモニタ呼び出し
qemuモニタを利用するには、VMのウィンドウでCTL+ALT+2を押下します。すると画面がqemuモニタに切り替わります。元のVMのスクリーンにはCTL+ALT+1で戻せます。ちなみにCTL+ALT+3ではシリアルポートに繋ぐことができます。
VMの終了
VMを終了するには、行儀よくVM内でシャットダウンすることをお勧めしますが、インストールが終了したときなど、リブートがうまくいかず固まってしまうこともあります。そんなときはqemuモニタからquitすれば、VMはあっさり終了します。
インストール完了後の起動
インストールが完了したら、CD-ROMを外して再起動します。qemuモニタからejectしてもいいのですが、qemuを終了して再起動するのが楽です。そのときコマンドラインから -cdrom オプションと -boot オプションを外します。
$ sudo kvm vm.img -m 256 -net nic,model=e1000,macaddress=xx:xx:xx:xx:xx:xx -net tap,ifname=tap0
このコマンドはVMの起動ごとに実行することになるので、スクリプトにしておくと楽です。
おわりに
いかがでしょうか、SDLを使うととても簡単にKVMが試していただけると思います。本格的に使う場合はVMのウィンドウがいちいち邪魔だったり、VMプロセスがTerminalをロックしてしまったりするので、-nographicオプションや-vnc、-monitor、-daemonizeといったオプションを駆使していけばよいと思います。そのような使い方については、当ブログの過去の記事をご参照いただければと思います。
[…] This post was mentioned on Twitter by Kazuhisa Hara, Naoto MATSUMOTO, Takumi Saitoh, れいさ(引越準備), 鷲北 賢 and others. 鷲北 賢 said: さくらインターネット研究所ブログ KVMを使う(Ubuntu Desktop編) http://res […]
over the counter herpes treatment
[…]here are some links to sites that we link to because we think they are worth visiting[…]