本文鏈接: http://www.php-oa.com/2010/02/22/ubutnu-kvm-vmware.html
RedHat 紅帽CTO Brian Steven在一次記者招待會(huì)說(shuō):“我們致力于Xen,RHEL 5有10年的生命周期,因此會(huì)有一個(gè)較大的交叉過(guò)渡。我們將在Red Hat 6中全面使用KVM,但KVM目前已經(jīng)準(zhǔn)備就緒,完全可以正式投入到數(shù)據(jù)中心和云中,不用再等待了!”
KVM要使用2.6.20以上的內(nèi)核才行.Ubuntu到是不用擔(dān)心,它基本一直使用的是最新的內(nèi)核.
需要關(guān)心一點(diǎn)就是,你的硬件,CPU是不是支持半虛擬(VT/AMD-V),使用下面的命令可以查看是否支持
grep -E '(vmx|svm)' /proc/cpuinfo
我原來(lái)以為KVM很難裝,沒(méi)想到現(xiàn)在容易成這樣了.太方便了
sudo apt-get install kvm libvirt-bin ubuntu-vm-builder bridge-utils kvm-pxe uml-utilities
安裝KVM在ubuntu中的GUI管理軟件,象我,拿ubuntu當(dāng)桌面,就不使用命令…呵呵
sudo apt-get install virt-manager virt-viewer
需要設(shè)置一下網(wǎng)橋
sudo /etc/init.d/networking stop
我們來(lái)修改一下配置
sudo vim /etc/network/interfaces
靜態(tài)IP和使用DHCP是不一樣的,DHCP修改成下面這樣
auto br0 iface br0 inet dhcp bridge_ports eth0 bridge_stp off bridge_fd 5 bridge_maxwait 5
或
static:
auto br0 iface br0 inet static address 192.168.0.xxx network 192.168.0.0 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1 bridge_ports eth0 bridge_stp off bridge_fd 5 bridge_maxwait 5
完事后
進(jìn)入ubuntu的“應(yīng)用程序”-> “系統(tǒng)工具” -> “虛擬系統(tǒng)管理”就可以全GUI來(lái)玩kvm啦
在 Centos 中安裝 kvm 也一樣很容易,
1. 安裝 KVM 和 virtinst (一個(gè)創(chuàng)建 virtual machines 的工具 )
yum install kvm kmod-kvm qemu libvirt python-virtinst
2. 裝完后記的重起,重起后檢查模塊是否有加載
$ lsmod | grep kvm kvm_amd 50452 0 kvm 109264 1 kvm_amd
也可以使用 virsh 來(lái)測(cè)試
virsh -c qemu:///system list
3. 安裝橋接管理的工具
yum install bridge-utils
4. 安裝 GUI 的管理軟件
yum install virt-manager
KVM 現(xiàn)在相當(dāng)成熟,在三個(gè)比較常用管理程序(我所知道的),大家平時(shí)玩玩的話,就用 GUI 來(lái)管理就好了,GUI 都會(huì)我就不詳細(xì)寫了:
virt-manager: 這個(gè)我最常用,是 GUI 的,需要 x windows 的支持。這個(gè)是 RedHat 開(kāi)發(fā),大家想了解可以到 http://virt- manager.et.redhat.com/ 上看看
virt-install:python 寫的文字介面的管理 kvm 的程序,這個(gè)也是Red Hat 開(kāi)發(fā)的哦。
ubuntu-vm-builder:這個(gè)是 Canonical (Ubuntu)開(kāi)發(fā)的文字的管理程序。
(1. 安裝 virt-install 和 圖形化的連接軟件 virt-viewer
sudo apt-get install python-virtinst virt-viewer
詳細(xì)使用可以 man virt-install
(2. virt-install 安裝虛擬系統(tǒng)
例:
virt-install --connect qemu:///system --name= 虛擬機(jī)器的名字 --ram=設(shè)置內(nèi)存的大小 [MB] --os-type=操作系統(tǒng)的類型 [linux ] --os-variant=操作系統(tǒng)的版本 [centos 5.4] --hvm [全虛擬化( hvm )與半虛擬化( paravirt )選擇其一] --paravirt [全虛擬化( hvm )與半虛擬化( paravirt )選擇其一] --accelerate [KVM 加速器] --cdrom=系統(tǒng)安裝的CD路徑 [*.iso] --file=虛擬硬盤的路徑 [*.qcow2] --file-size=虛擬硬盤的大小 [GB] --bridge=br0 --vnc --noautoconsole --debug
注意 Windows 只能用有全虛擬化( hvm )與半虛擬化( paravirt )中選擇 hvm.hvm 的意思是指硬件輔助的虛擬化,就是需要所謂的 VT 支持的。
建出來(lái)的虛擬機(jī)會(huì)在 /etc/libvirt/qemu/虛擬機(jī)器名稱.xml 有個(gè)配置文件
(3. 使用 virt-install 啟動(dòng)虛擬的機(jī)器
進(jìn)入 virsh 中,所有 virsh 的操作都要先進(jìn)入這個(gè)
$virsh
管理啟動(dòng)
virsh# start 虛擬機(jī)器名字 virsh# list --all virsh# quit
(4. 安裝管理查看 virt-install 安裝后的系統(tǒng)是否正常
virt-viewer --connect qemu+ssh://賬號(hào)@虛擬機(jī)實(shí)體主機(jī)IP 要連接的虛擬機(jī)器名字
在原來(lái)的基礎(chǔ)上復(fù)制一個(gè)新的虛擬機(jī)器
virt-clone --connect=qemu:///system -o 舊的虛擬機(jī)器名稱 -n 新的虛擬機(jī)器名稱 -f 新的虛擬硬碟路徑 [*.qcow2]
查看所有虛擬出的機(jī)器
virsh# list --all
dump 虛擬出的機(jī)器配置文件
virsh# dumpxml 虛擬出的機(jī)器名稱 /tmp/虛擬出的機(jī)器配置文件 [*.xml]
使用現(xiàn)有的虛擬出的機(jī)器配置文件建立虛擬新機(jī)器
virsh# define /etc/libvirt/qemu/虛擬出的機(jī)器配置文件 [*.xml]
移除虛擬出的機(jī)器
virsh# undefine 虛擬出的機(jī)器名稱
關(guān)閉虛擬出的機(jī)器
virsh# shutdown 虛擬出的機(jī)器名稱
關(guān)掉虛擬出的機(jī)器的電源
virsh# destory 虛擬出的機(jī)器名稱
1.提升KVM的網(wǎng)絡(luò)和硬盤IO在linux中的性能
官方提供了一個(gè)叫kvm-guest-drivers-windows的網(wǎng)卡驅(qū)動(dòng)很不錯(cuò),虛擬機(jī)的啟動(dòng)參數(shù)那里加上model=virtio這個(gè)參數(shù),界 面中也是可以設(shè)置的.硬盤也有virtio的驅(qū)動(dòng),記的使用.在Virt-manager 中可以選擇 virtio disk.獲得高性能的網(wǎng)絡(luò)和磁盤操作
virtio的網(wǎng)卡驅(qū)動(dòng)的地址: http://sourceforge.net/project/showfiles.php?group_id=180599&package_id=267943
virtio的硬盤驅(qū)動(dòng)的地址:http://www.linux-kvm.com/sites/default/files/viostor.iso
2.和真實(shí)機(jī)器中資料共享
這個(gè)是超級(jí)方便的,不需要象VBox搞個(gè)文件夾,只要在Host的設(shè)置中直接給真實(shí)的Dev的塊設(shè)備直接設(shè)定到Guest的配置中,然后在進(jìn)入kvm中的系統(tǒng),直接mount就行
3.轉(zhuǎn)換VMWare的image讓KVM能使用
我們先要安裝一個(gè)小軟件virt-goodies.
sudo apt-get install virt-goodies
然后使用vmware2libvirt來(lái)給VMWare VM的基本資料vmx轉(zhuǎn)成KVM可以讀入的XML. 如
vmware2libvirt -f myvm.vmx > myvm.xml
在轉(zhuǎn)VMWare VM的disk image, 使用qemu-img轉(zhuǎn)成KVM能讀的文件.
qemu-img convert -f vmdk myvm.vmdk -O qcow2 myvm.qcow2
可能還需要修改一下vmx轉(zhuǎn)成的xml,
disk中的target dev,在VMWARE是ide(target dev=’hda’ bus=’ide’)可能要修改成scsi(target dev=’sda’ bus=’scsi’),我們看能不能找到ROOT就知道是不是用對(duì)了;
bridge mode, 給interface type=’network’修改成interface type=’bridge’, 而source network=’default’修改成source bridge=’br0′.
qcow選項(xiàng),則會(huì)創(chuàng)建QCOW(寫時(shí)復(fù)制)格式
修改后給VM的配置加入到libvirtd中.
virsh -c qemu:///system define myvm.xml virsh -c qemu:///system list --all
FAQ:
1.如果在安裝的時(shí)候見(jiàn)到"FATAL: Error inserting kvm_intel"
這是因?yàn)闆](méi)有在BIOS中打開(kāi)virtualization.需要進(jìn)入BIOS中打開(kāi),然后斷電重起.進(jìn)入系統(tǒng)后打modprobe kvm-intel來(lái)加載模塊
先在虛擬機(jī)中打開(kāi)windows自己的遠(yuǎn)程桌面,然后給用戶設(shè)定密碼,然后運(yùn)行 rundll32 netplwiz.dll,UsersRunDll 啟 用windows的自動(dòng)登錄。(這三步必不可少,否則rdesktop是無(wú)法連上winxp的)
重新啟動(dòng)虛擬機(jī),當(dāng)聽(tīng)到winxp后臺(tái)登錄的聲音后,即可用rdesktop遠(yuǎn)程登錄:
rdesktop localhost:3389 -u *** -p *** -g 1280×700 -r sound:local
-u winxp的用戶名, -p winxp的密碼, -r sound:local 啟用聲音
聯(lián)系客服