CentOS 6.5下安装KVM

来源:互联网 发布:双系统windows引导修复 编辑:程序博客网 时间:2024/05/21 09:26
一、检查CPU是否支持虚拟化。(在主板BIOS中开启CPU的VirtualizationTechnology)
# grep -E -o 'vmx|svm' /proc/cpuinfo
vmx


二、基础环境配置
1.安装KVM软件包
# yum -y groupinstall 'Virtualization' 'Virtualization Client' 'Virtualization Platform' 'Virtualization Tools'


查看模块
# lsmod | grep kvm
kvm_intel              53484  6
kvm                   316506  1 kvm_intel




2.网卡桥接配置


2.1 如果启用了NetworkManager,最好关闭该服务,因为该服务与network有冲突。
chkconfig NetworkManager off
service NetworkManager stop


2.2 关闭 selinux 并重启系统
# vi /etc/sysconfig/selinux
SELINUX=disabled


2.3 编辑网卡
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=none
BRIDGE=br0


# vi /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.200.15
NETMASK=255.255.255.0
GATEWAY=192.168.200.1
DNS1=202.106.0.20


2.4 重启服务器
reboot


2.5 查看网络
# brctl show
bridge name bridge idSTP enabledinterfaces
br0 8000.ac4e914d0aa2noeth0
virbr0 8000.5254004d5befyesvirbr0-nic


2.6 检查ip转发是否开启
# cat /etc/sysctl.conf |grep ip_forward
net.ipv4.ip_forward = 0 




3.创建虚拟机
3.1 创建磁盘镜像文件,文件格式qcow2格式是kvm支持的标准格式,raw格式为虚拟磁盘文件通用格式。
创建文件名win2008r2.qcow2的磁盘镜像文件名,文件格式为qcow2,磁盘大小为100G
# qemu-img create -f qcow2 /kvm/pjgl/win2008r2.qcow2 100G


查看磁盘镜像文件信息 
# qemu-img info /kvm/pjgl/win2008r2.qcow2


3.2 创建虚拟机配置文件


<!--
WARNING: THIS IS AN AUTO-GENERATED FILE. CHANGES TO IT ARE LIKELY TO BE 
OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
  virsh edit win2008r2
or other application using the libvirt API.
-->


<domain type='kvm'>
  <name>win2008r2</name>
  <uuid>7b6f172b-7a03-c629-f6cb-4127bdbdfb51</uuid>
  <memory unit='KiB'>2097152</memory>
  <currentMemory unit='KiB'>2097152</currentMemory>
  <vcpu placement='static'>2</vcpu>
  <os>
    <type arch='x86_64' machine='rhel6.6.0'>hvm</type>
    <boot dev='cdrom'/>
    <boot dev='hd'/>


  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='localtime'>
    <timer name='rtc' tickpolicy='catchup'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback'/>
      <source file='/kvm/win2008r2/win2008r2.qcow2'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/iso/Windows_2008R2_64-bit.ISO'/>
      <target dev='hdc' bus='ide'/>
      <readonly/>
      <address type='drive' controller='0' bus='1' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x7'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0' multifunction='on'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x1'/>
    </controller>
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x2'/>
    </controller>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:b3:c6:d3'/>
      <source bridge='br0'/>
      <model type='e1000'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='tablet' bus='usb'/>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='5903' autoport='no' listen='0.0.0.0'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='vga' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
</domain>




将上面的内容复制到win2008r2.xml文件后,根据情况修改系统名称、UUID、MAC地址、光盘镜像的路径、磁盘镜像的路径等。


3.3 启动虚拟机
# virsh
# define /kvm/pjgl/win2008r2.xml
# list --all
# start win2008r2


3.4 配置防火墙策略
防火墙缺省是不允许连接这些端口的,使用下列步骤配置防火墙,允许VNC客户端连接VNC server。
# vi /etc/sysconfig/iptables  
1) 找到下面的语句:
-A INPUT -j REJECT --reject-with icmp-host-prohibited
在此行之前,加上下面的内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5900:5920 -j ACCEPT   #允许其它机器访问本机的5900到5903端口
2) 然后使用root身份重新启动防火墙:
# service iptables restart
3) 设置开机自动启动
# chkconfig iptables on


3.5 使用TightVNC Viewer客户端,进入系统UI界面安装操作系统,并进行配置即可。 

0 0