虚位以待(AD)
虚位以待(AD)
首页 > 操作系统 > Ubuntu/Debian > UbuntuKVM使用总结

UbuntuKVM使用总结
类别:Ubuntu/Debian   作者:码皇   来源:Ubuntu KVM 使用总结     点击:

前面写了一系列文章,现在在这里用一篇文章概括一下,方便查看。本文针对Ubuntu 13 10 server。宿主机的安装检查CPU是否支持虚拟化root@kvmhost:~ egrep & 039;(vmx|svm) & 039; --color=always proc cpuinfofla

前面写了一系列文章,现在在这里用一篇文章概括一下,方便查看。本文针对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

检查

然后reboot后,再登录,运行下面的命令检查

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

配置网络

如下设置/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 
    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
    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

复制到其他宿主机

虚拟机管理

修改虚拟机的xml文件

用virsh edit vm_name 命令修改对应的xml文件,如果想使用emacs,则需要将emacs设置为默认编辑器

在/root/.bashrc文件中添加:

    export EDITOR=/usr/bin/emacs
相关热词搜索: 网络安全 qq技术 网站安全 系统安全 企业安