CLIでVMを作成。
root@hat1:~# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=10.04
DISTRIB_CODENAME=lucid
DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS"
root@hat1:~# apt-get install python-vm-builder
下準備
作業ディレクトリを作成
root@hat1:~# mkdir VMBuilder
パーティションの設定
root@hat1:~/VMBuilder# cat vmbuilder.partition
root 8000
swap 512
リモートからアクセスできるように SSH サーバの設定
root@hat1:~/VMBuilder# cat boot.sh
apt-get update
apt-get install -qqy --force-yes openssh-server
初めてログインしたときにパスワードを変更させる。
root@hat1:~/VMBuilder# cat login.sh
passwd
ミラーサイト。
/etc/apt/sourcs.list から適当にチョイス。
root@hat1:~/VMBuilder# less /etc/apt/sources.list
#
# deb cdrom:[Ubuntu-Server 10.04 LTS _Lucid Lynx_ - Release amd64 (20100427)]/ lucid main restricted
#deb cdrom:[Ubuntu-Server 10.04 LTS _Lucid Lynx_ - Release amd64 (20100427)]/ lucid main restricted
# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://jp.archive.ubuntu.com/ubuntu/ lucid main restricted
deb-src http://jp.archive.ubuntu.com/ubuntu/ lucid main restricted
root@hat1:~/VMBuilder# vmbuilder kvm ubuntu --suite lucid --flavor virtual --arch i386 -o --libvirt qemu;///system --ip 192.168.11.120 --mask 255.255.255.0 --gw 192.168.11.1 --dns 192.168.11.1 --user user --name user --pass default --tmpfs - --firstboot boot.sh --mirror http://jp.archive.ubuntu.com/ubuntu/ --addpkg acpid --part ./vmbuilder.partition --firstlogin ./login.sh
--user ユーザ名
--name フルネーム
--pass パスワード
--suite : Ubuntu のリリースを指定
--libvert : VMに登録
--tmpfs - vmbuilder 用にメモリを1G確保
--ip , --mask , --dns : ネットワーク設定
--firstboot 初めて起動したときに boot.sh を実行 ( ssh server をインストール )
--firstlogin 初めてログインしたときに login.sh を実行 ( パスワードを変更 )
--addpkg acpid リスタート、シャットダウン制御ができるように acpid をインストール
vmbuilder ハイパーバイザー ディストリビューション
ハイパーバイザー: xen , kvm , vmw6 , vmserver
ディストリビューション: ubuntu
上記を設定ファイルにかけるみたい。
root@hat1:~/VMBuilder# cat my_vm.cfg
[DEFULT]
arch = i386
ip = 192.168.11.120
mask = 255.255.255.0
gw = 192.168.11.1
dns = 192.168.11.1
user = user
name = user
pass = default
tmpfs = -
firstboot = /root/VMBuilder/boot.sh
firstlogin = /root/VMBuilder/login.sh
[ubuntu]
mirror = http://jp.archive.ubuntu.com/ubuntu/
suite = lucid
flavor = virtual
addpkd = acpid
[kvm]
libvirt = qemu:///system
root@hat1:~/VMBuilder# vmbuilder kvm ubuntu -c my_vm.cfg
できたっぽい。
vmbuilder を実行したディレクトリに ubuntu-kvm っていうディレクトリができた。
root@hat1:~/VMBuilder# cd ubuntu-kvm/
root@hat1:~/VMBuilder/ubuntu-kvm# ls
run.sh tmpx1vgro.qcow2
VMイメージ tmpx1vgro.qcow2
root@hat1:~/VMBuilder/ubuntu-kvm# cat run.sh
#!/bin/sh
exec kvm -m 128 -smp 1 -drive file=tmpx1vgro.qcow2 "$@"
VMの登録もされているみたい。
root@hat1:/etc/libvirt/qemu# pwd
/etc/libvirt/qemu
root@hat1:/etc/libvirt/qemu# ls ubuntu.xml
ubuntu.xml
vmbuilder で作成した VM ( ubuntu ) が登録された。
root@hat1:~# virsh list --all
Id 名前 状態
----------------------------------
- centos5-1 シャットオフ
- centos5-1-clone シャットオフ
- centos5-1-clone2 シャットオフ
- ubuntu シャットオフ
ユーザ名、パスワードが設定したのにならなかった。。
デフォルトの user: ubuntu , pass: ubuntu になってた。。
発ログイン後のスクリプトが走らないな。。
コンフィグファイル(my_vm.cfg)の書き方がおかしかったのかな。。。
とりあえず VM のインストールができたので OK ということで。