2013年2月28日

【筆記】使用 kvm + vmbuiler 自動建置 Ubuntu Server 虛擬機器

建置好 KVM 虛擬化伺服器主機(host)之後,可以利用 vmbuilder 工具「自動建立虛擬機器」。

「自動」的流程包含:
  1. 自動建立虛擬機器的配置檔(*.xml)與磁碟(*.qcow2)
  2. 從網路(HTTP, FTP)或本地 ISO 映像檔,自動安裝 Ubuntu Server 作業系統
  3. 自動設定網路(IP, Gateway, DNS)
  4. 自動建立第一組使用者帳號密碼
  5. 自動 apt-get 安裝額外的套件(如 OpenSSH、VIM 等)

因此只要預先寫好 script,日後就可以快速(重新)產生新的虛擬機器。

如果使用過 VirtualBox 虛擬機器安裝 Ubuntu Server 作業系統,從頭到尾安裝大約需要 10 ~ 20 分鐘時間。

使用 vmbuiler 呢?在 XEON E3-1230V2 + 32GB + Intel 520 SSD 240GB 的機器上測試,使用 time 指令測試發現,只要 80 秒(1m19.298s)就能建立好新的 Ubuntu Server 虛擬機器,而且包含網路、OpenSSH套件都搞定喔。

關於 KVM 虛擬化伺服器的建置,請參考此篇筆記

建立一個 vmbuilder.sh 指令檔,內容參考以下:

sudo vmbuilder kvm ubuntu --suite precise --flavour virtual --arch i386 -o --libvirt qemu:///system -d /var/lib/libvirt/images/vm0-kvm --ip 192.168.0.101 --mask 255.255.255.0 --gw 192.168.0.1 --dns 168.95.1.1 --hostname vm0 --bridge br0 --user ubuntu --pass reversed --addpkg openssh-server --iso /var/lib/libvirt/images/ubuntu-12.04.2-server-i386.iso --mirror http://tw.archive.ubuntu.com/ubuntu

上面的紅色字體部分需要特別注意!相信聰明的看倌只要看設定內容,就會知道它的用途為何。

(其他進階設定請用「vmbuilder kvm ubuntu -help」指令查詢。)

執行之後,產生的虛擬機器相關檔案:

/etc/libvirt/qemu/vm0.xml
/var/lib/libvirt/images/vm0-kvm/*.qcow2

基本上不需要再做其他設定,就可以直接啟動新的虛擬機器:

virsh start vm0

接下來就能利用 ssh 登入新系統。

ssh ubuntu@192.168.0.101

(預設密碼是 reversed)

如果要刪除虛擬機器,則使用 virsh 工具。

virsh undefine vm0

再將磁碟檔案移除(無法復原請小心使用)。

sudo rm -rf /var/lib/libvirt/images/vm0-kvm

延伸閱讀
  1. JeOS and vmbuilder

沒有留言:

張貼留言

lyhcode by lyhcode
歡迎轉載,請務必註明出處!