用virtualbox搭建私有云計算平臺

發表於2013-06-24

virtualBox是一個非常好用的虛擬機器軟體,而且還跨平臺,以前用過的都是桌面版,現在有一臺ubuntu server,沒有安裝圖形介面,google了一下,果然可以。效果和ec2或者linode vps差不多。再加上一個控制皮膚,估計就差不多了。

安裝

ubuntu server 下安裝的話,可以下載最新版 https://www.virtualbox.org/wiki/Linux_Downloads。然後安裝就可以了。出現問題及時google。現在各種教程太多了。

然後安裝擴充套件Oracle VM VirtualBox Extension Pack

vboxmanage install extpack xxx.vbox-extpack

下面開始從ubuntu-13.04-server-amd64.iso映象建立一個虛擬機器

#建立一個虛擬機器
vboxmanage createvm --name ubuntu1304 --ostype Ubuntu_64 --register

#編輯一下基本配置
vboxmanage modifyvm ubuntu1304 --memory 512 --cpus 1 --acpi on --bioslogoimagepath /home/zenith/logo.bmp --boot1 dvd

#建立一個虛擬硬碟
vboxmanage createhd --filename /home/zenith/ubuntu1304.vdi --size 20000

#建立一個storagectl,來掛載硬碟和光碟
vboxmanage storagectl ubuntu1304 --name "IDE Controller" --add ide --bootable on

#掛載硬碟
vboxmanage storageattach ubuntu1304 --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/zenith/ubuntu1304.vdi

#掛載光碟
vboxmanage storageattach ubuntu1304 --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium /home/zenith/ubuntu-13.04-server-amd64.iso

#開啟虛擬機器。通過遠端桌面連線安裝系統
VBoxHeadless -s ubuntu1 -e TCP/Ports=9001

#安裝完成以後。刪除光碟機
vboxmanage storageattach ubuntu1304 --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium none

#埠對映
vboxmanage modifyvm ubuntu1304 --natpf1 guestssh,tcp,,2000,,22

#刪除埠對映
vboxmanage modifyvm ubuntu1304 --natpf1 delete guestssh

#克隆
vboxmanage clonevm ubuntu1304 --name ubuntu1 --register

這樣就可以了。對於克隆的linux虛擬機器,啟動的時候,連不上網。需要更改/etc/udev/rules.d/70-persistent-net.rules檔案。把eth0那一行刪了。然後把eth1改成eth0.重啟即可。可能是因為虛擬機器clone,mac地址換了,所以ubuntu linux識別出一個新網路卡的原因。

vboxmanage命令比較強大。當然,可以直接編輯.vbox檔案,但是正如看到的,vbox頭部已經說明了:

** DO NOT EDIT THIS FILE.
** If you make changes to this file while any VirtualBox related application
** is running, your changes will be overwritten later, without taking effect.
** Use VBoxManage or the VirtualBox Manager GUI to make changes.

一開始覺得vboxmange命令太麻煩了,走一遍就熟悉了。當然,官方文件是最好的參考:http://www.virtualbox.org/manual/ch08.html。不知道這個文件是否有中文版,有時間的話,可以抽空翻譯一個。

在google code上發現一個用php寫的virtualBox GUI的東西:https://code.google.com/p/phpvirtualbox/。還沒試用,看著不錯。不錯既然有ssh控制宿主機了。gui也無所謂了。

現在執行的是安裝好一個系統,然後儲存著,需要的話,直接vmclone出來一個新的,使用。很方便,跟ec2或者linode vps效果差不多。

FAQ

安裝完系統,如何移除虛擬機器光碟機?

vboxmanage showvminfo xp1

找到光碟機的位置,比如IDE Controller (0, 1):

vboxmanage storageattach "windows xp" --storagectl "IDE Controller" --port 1 --device 0 --medium none

vboxheadless -s 啟動以後,用遠端桌面連結,感覺滑鼠不同步,怎麼解決?

沒有安裝擴充套件包。先去官網下載對應作業系統的擴充套件包,比如 VBoxGuestAdditions_4.2.12.iso,然後掛載,進入客戶機,安裝,重啟。

如何更改客戶機BIOS啟動logo?

vboxmange確實提供了這個設定。搜尋bioslogoimagepath。

遠端桌面連線,黏貼板不同步

vmboxmange設定:

[--clipboard disabled|hosttoguest|guesttohost|bidirectional]

 

via http://gfzj.us/545.html 

相關文章