查看是否支持虚拟化
egrep -o \'(vmx|svm)\' /proc/cpuinfo
如果有显示则支持虚拟化,没有显示则不支持
安装qemu 和virt 系列软件包
yum install qemu-kvm qemu-img virt-manager libvirt virt-install virt-viewer
qemu-kvm:qemu模拟器
qemu-img:qemu磁盘image管理器
virt-install:用来创建虚拟机的命令行工具
libvirt:提供libvirtd daemon来管理虚拟机和控制hypervisor
virt-viewer:图形控制台
如果安装失败更换yum源为阿里源
启动libvirt
service libvirtd start
启动virt 图形化管理界面,安装虚拟机
virt-manager
使用iso镜像安装虚拟机,找到iso镜像的位置
分配内存和cpu
分配磁盘
开始安装
创建好的虚拟机的xml文件如下,可以作为一个虚拟机模板使用。如何使用xml创建虚拟机,请参考另一篇博客 制作openstack使用的window镜像
<domain type=\'qemu\' id=\'1\'> <name>centos7.0</name> <uuid>15e50a63-3bf4-4d53-a13a-ff0b4f45a8ca</uuid> <memory unit=\'KiB\'>1048576</memory> <currentMemory unit=\'KiB\'>1048576</currentMemory> <vcpu placement=\'static\'>1</vcpu> <resource> <partition>/machine</partition> </resource> <os> <type arch=\'x86_64\' machine=\'pc-i440fx-rhel7.0.0\'>hvm</type> <boot dev=\'cdrom\'/> <boot dev=\'hd\'/> </os> <features> <acpi/> <apic/> </features> <clock offset=\'utc\'> <timer name=\'rtc\' tickpolicy=\'catchup\'/> <timer name=\'pit\' tickpolicy=\'delay\'/> <timer name=\'hpet\' present=\'no\'/> </clock> <on_poweroff>destroy</on_poweroff> <on_reboot>destroy</on_reboot> <on_crash>destroy</on_crash> <pm> <suspend-to-mem enabled=\'no\'/> <suspend-to-disk enabled=\'no\'/> </pm> <devices> <emulator>/usr/libexec/qemu-kvm</emulator> <disk type=\'file\' device=\'disk\'> <driver name=\'qemu\' type=\'qcow2\'/> <source file=\'/var/lib/libvirt/images/centos7.0.qcow2\'/> <backingStore/> <target dev=\'vda\' bus=\'virtio\'/> <alias name=\'virtio-disk0\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x07\' function=\'0x0\'/> </disk> <disk type=\'file\' device=\'cdrom\'> <driver name=\'qemu\' type=\'raw\'/> <source file=\'/home/openlab/openlab/CentOS-7-x86_64-DVD-1908.iso\'/> <backingStore/> <target dev=\'hda\' bus=\'ide\'/> <readonly/> <alias name=\'ide0-0-0\'/> <address type=\'drive\' controller=\'0\' bus=\'0\' target=\'0\' unit=\'0\'/> </disk> <controller type=\'usb\' index=\'0\' model=\'ich9-ehci1\'> <alias name=\'usb\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x05\' function=\'0x7\'/> </controller> <controller type=\'usb\' index=\'0\' model=\'ich9-uhci1\'> <alias name=\'usb\'/> <master startport=\'0\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x05\' function=\'0x0\' multifunction=\'on\'/> </controller> <controller type=\'usb\' index=\'0\' model=\'ich9-uhci2\'> <alias name=\'usb\'/> <master startport=\'2\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x05\' function=\'0x1\'/> </controller> <controller type=\'usb\' index=\'0\' model=\'ich9-uhci3\'> <alias name=\'usb\'/> <master startport=\'4\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x05\' function=\'0x2\'/> </controller> <controller type=\'pci\' index=\'0\' model=\'pci-root\'> <alias name=\'pci.0\'/> </controller> <controller type=\'ide\' index=\'0\'> <alias name=\'ide\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x01\' function=\'0x1\'/> </controller> <controller type=\'virtio-serial\' index=\'0\'> <alias name=\'virtio-serial0\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x06\' function=\'0x0\'/> </controller> <interface type=\'network\'> <mac address=\'52:54:00:27:71:37\'/> <source network=\'default\' bridge=\'virbr0\'/> <target dev=\'vnet0\'/> <model type=\'virtio\'/> <alias name=\'net0\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x03\' function=\'0x0\'/> </interface> <serial type=\'pty\'> <source path=\'/dev/pts/1\'/> <target type=\'isa-serial\' port=\'0\'> <model name=\'isa-serial\'/> </target> <alias name=\'serial0\'/> </serial> <console type=\'pty\' tty=\'/dev/pts/1\'> <source path=\'/dev/pts/1\'/> <target type=\'serial\' port=\'0\'/> <alias name=\'serial0\'/> </console> <channel type=\'unix\'> <source mode=\'bind\' path=\'/var/lib/libvirt/qemu/channel/target/domain-1-centos7.0/org.qemu.guest_agent.0\'/> <target type=\'virtio\' name=\'org.qemu.guest_agent.0\' state=\'disconnected\'/> <alias name=\'channel0\'/> <address type=\'virtio-serial\' controller=\'0\' bus=\'0\' port=\'1\'/> </channel> <channel type=\'spicevmc\'> <target type=\'virtio\' name=\'com.redhat.spice.0\' state=\'connected\'/> <alias name=\'channel1\'/> <address type=\'virtio-serial\' controller=\'0\' bus=\'0\' port=\'2\'/> </channel> <input type=\'tablet\' bus=\'usb\'> <alias name=\'input0\'/> <address type=\'usb\' bus=\'0\' port=\'1\'/> </input> <input type=\'mouse\' bus=\'ps2\'> <alias name=\'input1\'/> </input> <input type=\'keyboard\' bus=\'ps2\'> <alias name=\'input2\'/> </input> <graphics type=\'spice\' port=\'5900\' autoport=\'yes\' listen=\'127.0.0.1\'> <listen type=\'address\' address=\'127.0.0.1\'/> <image compression=\'off\'/> </graphics> <sound model=\'ich6\'> <alias name=\'sound0\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x04\' function=\'0x0\'/> </sound> <video> <model type=\'qxl\' ram=\'65536\' vram=\'65536\' vgamem=\'16384\' heads=\'1\' primary=\'yes\'/> <alias name=\'video0\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x02\' function=\'0x0\'/> </video> <redirdev bus=\'usb\' type=\'spicevmc\'> <alias name=\'redir0\'/> <address type=\'usb\' bus=\'0\' port=\'2\'/> </redirdev> <redirdev bus=\'usb\' type=\'spicevmc\'> <alias name=\'redir1\'/> <address type=\'usb\' bus=\'0\' port=\'3\'/> </redirdev> <memballoon model=\'virtio\'> <alias name=\'balloon0\'/> <address type=\'pci\' domain=\'0x0000\' bus=\'0x00\' slot=\'0x08\' function=\'0x0\'/> </memballoon> </devices> <seclabel type=\'dynamic\' model=\'dac\' relabel=\'yes\'> <label>+107:+107</label> <imagelabel>+107:+107</imagelabel> </seclabel> </domain>