virsh创建虚拟机

Posted ronghui

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了virsh创建虚拟机相关的知识,希望对你有一定的参考价值。

  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.raw  10G

   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-eth0  ifcfg-br0

   vi  ifcfg-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
     virsh  start CentOS-6.6-x86.64

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

       技术分享图片

常用virsh指令:
(1)virsh list 列出当前虚拟机列表,不包括未启动的
(2)virsh list --all 列出所有虚拟机,包括所有已经定义的虚拟机
(3)virsh destroy vm-name 关闭虚拟机
(4)virsh start vm-name 启动虚拟机
(5)virsh edit vm-name 编辑虚拟机xml文件
(6)virsh undefine vm-name 删除虚拟机
(7)virsh shutdown vm-name 停止虚拟机
(8)virsh reboot vm-name 重启虚拟机
(9)virsh autostart vm-name 虚拟机随宿主机启动































以上是关于virsh创建虚拟机的主要内容,如果未能解决你的问题,请参考以下文章

[理] virsh 命令

使用命令virsh管理网络设备,创建桥设备 和 使用virt-manager创建虚拟机

虚拟化技术之kvm管理工具virsh常用基础命令

virsh命令行管理工具

KVM — virsh 指令行工具

KVM — virsh 指令行工具