2eew 发表于 2016-1-18 09:38:35

virsh基于KVM创建虚拟机

1. 查看cpu是否支持虚拟化
和 Xen 不同,KVM 需要有 CPU 的支持(Intel VT 或 AMD SVM),在安装 KVM 之前检查一下 CPU 是否提供了虚拟技术的支持


1
egrep 'vmx|svm' /proc/cpuinfo




2. 安装工具包


1
yum install qemu-kvm qemu-kvm-tools virt-manager libvirt




3. 查看kvm是否安装成功


1
lsmod | grep kvm




      
4. 关闭防火墙


1
2
   setenforce 0
   service iptables stop




   5. 修改 qemu.conf 配置,把下面几个地方的注释去掉,然后把 dynamic_ownership 的值改成0,禁止 libvirtd 动态修改文件的归属


1
2
3
4
   vi /etc/libvirt/qemu.conf改成如下:
   user = “root”
   group=”root”
   dynamic_ownership = 0




       重启libvirtd服务   

1
service libvirtd restart




上面如果不改的话安装的时候会报如下错误:
ERROR   内部错误 processexited while connecting to monitor: char device redirected to /dev/pts/3
2016-01-16T00:26:14.879409Z qemu-kvm:-drivefile=/root/centos6.raw,if=none,id=drive-virtio-disk0,format=raw,cache=none:could not open disk image /root/centos6.raw: Permission denied
Domain installation does not appear tohave been successful.
If it was, you can restart your domain byrunning:
virsh --connect qemu:///system start CentOS-x86.64
otherwise, please restart yourinstallation

   6. 创建虚拟磁盘


1
   qemu-img create-f raw /root/centos6.6.raw10G




   7. 安装虚拟机


1
2
3
4
5
6
7
8
9
10
11
   virt-install\
       --virt-type kvm \
       --name CentOS-6.6-x86.64 \   # 虚拟机名
       --ram 512 \                  #分配内存大小
       --cdrom=/root/CentOS-6.7-i386-minimal.iso\#系统镜像路径
       --disk path=/root/centos6.6.raw \               #磁盘路径
       --network network=default \                  #网络默认
       --graphics vnc,listen=0.0.0.0 \
       --noautoconsole \                               #不自动开启控制台
       --os-type=linux -\                               #系统类型 linux
       --os-variant=rhel6                              #系统版本




8.使用vnc客户端连接刚刚创建的虚拟机

   

   连接成功之后就进入系统安装界面了

9.配置虚拟网桥
   添加桥接设备br0:


1
brctl addbr br0





1
2
cd /etc/sysconfig/network-scripts/
cp ifcfg-eth0ifcfg-br0




   viifcfg-br0配置改为如下:   


1
2
3
4
5
6
7
8
DEVICE=br0
    TYPE=Bridge
    ONBOOT=yes
    NM_CONTROLLED=no
    BOOTPROTO=static
    IPADDR=192.168.1.221
    NETMASK=255.255.255.0
    GATEWAY=192.168.1.1




vi ifcfg-eth0配置改为如下:


1
2
3
4
5
    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=no
    BRIDGE=br0




重启网络服务:


1
Service network restart




10.为虚拟机配置桥接


1
2
3
4
virsh edit CentOS-6.6-x86.64#编辑虚拟机的配置xml文件将网络配置改为如下:
      <interface type='bridge'>
      <mac address='52:54:00:87:2d:7b'/>
      <sourcebridge='br0'/>




   11.重启虚拟机


1
2
   virsh destroy CentOS-6.6-x86.64
   virshstart CentOS-6.6-x86.64




   12.测试虚拟机能否ping通宿主机

      

常用virsh指令:
(1)virsh list 列出当前虚拟机列表,不包括未启动的
(2)virshlist --all 列出所有虚拟机,包括所有已经定义的虚拟机
(3)virshdestroy vm-name 关闭虚拟机
(4)virshstart vm-name 启动虚拟机
(5)virshedit vm-name 编辑虚拟机xml文件
(6)virshundefine vm-name 删除虚拟机
(7)virshshutdown vm-name 停止虚拟机
(8)virshreboot vm-name 重启虚拟机
(9)virshautostart vm-name 虚拟机随宿主机启动
页: [1]
查看完整版本: virsh基于KVM创建虚拟机