Ubuntu KVM 使用總結

來源:互聯網
上載者:User

前面寫了一系列文章,現在在這裡用一篇文章概括一下,方便查看。本文針對Ubuntu 13.10 server。

宿主機的安裝檢查CPU是否支援虛擬化

root@kvmhost:~# egrep '(vmx|svm)' --color=always /proc/cpuinfoflags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 popcnt lahf_lm dts tpr_shadow vnmi flexpriority ept vpidflags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm dca sse4_1 sse4_2 popcnt lahf_lm dts tpr_shadow vnmi flexpriority ept vpid

安裝KVM和KVM Builder

apt-get install ubuntu-virt-server python-vm-builder kvm-ipxe  


設定使用者組

adduser `id -un` libvirtdadduser `id -un` kvm

id -un返回的是root使用者,這樣root使用者就加入了libvirtd和kvm使用者組


檢查

然後reboot後,再登入,運行下面的命令檢查

root@kvmhost:~# virsh -c qemu:///system list Id Name                 State----------------------------------

如上顯示說明KVM安裝正常。


配置網路

如下設定/etc/network/interfaces

# The loopback network interfaceauto loiface lo inet loopback# The primary network interfaceauto eth1iface eth1 inet manualauto br0iface br0 inet static      address 10.150.140.103      network 10.150.140.0      netmask 255.255.0.0      broadcast 10.150.255.255      gateway 10.150.0.254      dns-nameservers 10.150.0.253 8.8.8.8      bridge_ports eth1      bridge_fd 9      bridge_hello 2      bridge_maxage 12      bridge_stp off


注意,原來eth1的IP地址現在設定給了br0,並且eth1設定為manual方式。

br0下面的dns, netmask, broadcast都來自原來eth1的設定。

KVM宿主機設定完畢,重新啟動吧。


KVM Builder補丁

從Ubuntu 12.10開始,KVM Builder就有一個bug,導致建立虛擬機器的時候遇到如下錯誤:

Selecting previously unselected package linux-image-virtual.Unpacking linux-image-virtual (from .../linux-image-virtual_3.5.0.17.19_amd64.deb) ..., stderr: grep: /proc/cpuinfo: No such file or directory
這個是Ubuntu 12.10/13.10內建的vmbuilder的bug,原因是沒有mount /proc目錄,這裡討論了這個問題,並提供了臨時解決方案:

https://bugs.launchpad.net/ubuntu/+source/vm-builder/+bug/1037607


打補丁的命令如下:

wget https://launchpadlibrarian.net/120169451/usr_share_pyshared_VMBuilder_plugins_ubuntu_dapper.py.diffcp /usr/share/pyshared/VMBuilder/plugins/ubuntu/dapper.py ./dapper.py_bkpatch /usr/share/pyshared/VMBuilder/plugins/ubuntu/dapper.py ./usr_share_pyshared_VMBuilder_plugins_ubuntu_dapper.py.diff


建立虛擬機器

建立好的虛擬機器的/etc/apt/sources.list檔案需要修改,最好從宿主機複製一份。

Clone虛擬機器安裝軟體:
apt-get install virtinst

比如已經有了vm_base虛擬機器,用virsh shutdown關閉它,然後開始clone。

首先建立要存放的目錄

mkdir -p /var/lib/libvirt/images/infobright

然後將vm_base虛擬機器複製一份到infobright

virt-clone -o vm_base -n infobright --file /var/lib/libvirt/images/infobright/a.img --file /var/lib/libvirt/images/infobright/b.img

還要安裝一些軟體可以在宿主機上直接編輯虛擬機器的設定檔

apt-get install guestfish  
apt-get install libguestfs-tools 

第二個命令安裝的時候,請回答yes,如果回答no,以後功能可能不正常,需要重新運行命令配置:

update-guestfs-appliance 

好,現在可以修改幾個檔案

virt-edit -d infobright /etc/hostnamevirt-edit -d infobright /etc/hosts


修改網路設定,注意,VM內部可以使用其他的子網配置,不一定和KVM宿主機相同。

virt-edit -d infobright /etc/network/interfaces

auto eth0iface eth0 inet static        address 10.150.144.23        netmask 255.255.0.0        network 10.0.0.0        gateway 10.150.0.1        # dns-* options are implemented by the resolvconf package, if installed        dns-nameservers 10.150.0.253 8.8.8.8        up route add default gw 10.150.0.254        up route add -net 115.182.51.0 netmask 255.255.255.0 gw 10.150.0.1 dev eth1        up route add -net 10.0.0.0 netmask 255.0.0.0 gw 10.150.0.1 dev eth1

複製到其他宿主機

複製虛擬機器資料檔案,比如:

scp -r root@10.150.140.103:/var/lib/libvirt/images/vm_base /var/lib/libvirt/images/

然後複製虛擬機器組態檔,比如:

scp -r root@10.150.140.103:/etc/libvirt/qemu/vm_base.xml /etc/libvirt/qemu/

現在添加虛擬機器:

virsh define /etc/libvirt/qemu/vm_base.xml

現在可以用virt-edit修改網路設定檔了,不再贅述。


虛擬機器管理修改虛擬機器的xml檔案

用virsh edit vm_name 命令修改對應的xml檔案,如果想使用emacs,則需要將emacs設定為預設編輯器

在/root/.bashrc檔案中添加:

export EDITOR=/usr/bin/emacs




更新中 ...

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.