Linux下KVM虚拟化环境部署

环境要求:

rhel5.4 64位系统以上版本才支持。

KVM 2.6.20以上,CPU支持虚拟化指令集(Intel-VT | AMD-V)

物理主机BIOS上设置CPU支持虚拟化、虚拟机设置中勾选Intel VT-x或AMD-V/RVI(V)

一、安装RHEL6/7或CENTOS6/7 ,英文最小化安装,配置好yum源,关闭iptables和selinux;

二、安装必要的软件:

   安装kvm模块:

      #yum install qemu-kvm.x86_64

   安装kvm调试工具:

      #yum install qemu-kvm-tools.x86_64

   安装python组件,主要用来记录创建vm时的xml文件:

      #yum install python-virtinst.noarch

   安装qemu组件,使用qemu命令来创建磁盘,启动虚拟机时用到:

      #yum install qemu-img.x86_64

   安装网络支持工具:

       #yum install bridge-utils.x86_64

   安装虚拟机管理工具,使用virsh或者virt-manager来管理虚拟机

      #yum install libvirt virt-manager

三、安装以上软件之后,重新启动,检查kvm模块是否安装完成:

      #lsmod | grep kvm 会显示两个模块:

      kvm_intel/kvm_amd

      kvm

四、检查虚拟化软件的安装情况:

      #virsh list –all

Id Name          State

 -------------------------------------------------

出现以上表名已经安装成功。

五、设置网络bridge模式:

    #cd /etc/sysconfig/network-scripts/

    #vim ifcfg-eth0

     在该文件中新加一行BRIDGE=br0

     新建一个桥接网卡文件:

    #vim ifcfg-br0 内容如下:

    DEVICE=br0

    TYPE=Bridge

    ONBOOT=yes

    BOOTPROTO=static

    NM_CONTROLLED=no

IPADDR=

    NETMASK=

    GATEWAY=

创建好该文件之后关闭NetworkManager服务,重启network服务;

#serviceNetworkManager stop

#service networkrestart  能正常重启表明网络设置成功。

六、创建虚拟机,有两种方法:一是通过virt-manager图形化界面创建;二是通过virt-install命令创建。

A、命令创建如下:

#virt-install–name vmtest1 –ram 4096 –vcpus=2 /

–diskpath=/data_kvm/store/test.img,size=50 ,format=raw,bus=virtio /

--networkbridge=br0,model=virtio –cdrom /data_kvm/iso/rhel-6.7-x86_64.iso /

 --vnc –accelerate –force–autostart

参数含义:

 --name 为虚拟机起个名字;

 --ram  分配给虚拟机的内存,单位MB;

 --vcpus 分配给虚拟机的cpu个数;

 --cdrom 指定安装文件的绝对路径;

 --disk   指定虚拟机img文件路径,如果虚拟机使用lvm分区,这里指向到lvm的分区;

    size  虚拟机文件大小,单位GB;

    bus  虚拟机磁盘使用的总线类型,为了使虚拟机达到好的性能,这里使用virtio;

    cache 虚拟机磁盘的cache类型;

 --network bridge 指定桥接网卡;

    model 网卡模式,这里使用性能更好的virtio;

 --graphics 图形参数;

B、图形化创建如下:

 宿主机上安装vnc-server:

   #yum installtigervnc-server

   #vim ~/.vnc/xstartup 最后一行改为:gnome-session&

   #vim/etc/sysconfig/vncservers  添加一行:VNCSERVERS=”1:root”

   #vncpasswd  设置vnc连接密码;

   #service vncserver start

   #vncserver &

   #service iptables stop

   #setenforce 0

之后在windows客户端打开vnc.exe连接即可在windows客户机上远程打开linux的图形界面。连接时填写IP:1其中IP为linux主机的IP,1表示第一个桌面;

打开宿主机的图形界面之后,打开一个terminal终端,键入命令virt-manager会打开一个虚拟机管理窗口如下:

Linux下KVM虚拟化环境部署_第1张图片

在这个窗口中可以管理虚拟机也可以创建新的虚拟机。

七、使用KVM命令集管理虚拟机

     7.1、查看命令帮助:

       #virsh –h

    7.2、查看KVM的配置文件存放目录:

       #ls /etc/libvirt/qemu

    7.3、查看虚拟机的状态:

       #virsh list –all

    7.4、虚拟机的开机与关机:

       首先要确认acpid服务安装并运行:

       #service acpid status

       #virsh shutdown centos7.0

       #virsh start centos7.0

    7.5、强制关闭虚拟机的电源:

       #virsh destroy centos7.0

    7.6、通过配置文件启动虚拟机:

       #virsh create /etc/libvirt/qemu/centos7.0.xml

    7.7、挂起虚拟机:

       #virsh suspend centos7.0

    7.8、恢复挂起的虚拟机:

       #virsh resume centos7.0

    7.9、配置虚拟机伴随宿主机自动启动:

       #virsh autostart centos7.0

    7.10、导出虚拟机的配置:

       #virsh dumpxml centos7.0 > /etc/libvirt/qemu/centos7.0.xml

    7.11、修改虚拟机的配置信息:

       #virsh edit centos7.0

       #vim /etc/libvirt/qemu/centos7.0.xml

八、KVM的快照管理

注:

    1.  快照实际上做的是虚拟机的XML配置文件,默认快照XML文件在/var/lib/libvirt/qemu/snapshot/虚拟机名/下;

    2.  快照只支持qcow2磁盘格式的系统。

8.1、虚拟机创建快照

     [root@kvm ~]# virshsnapshot-create vm1

     或创建快照的同时,再创建一个快照别名:

     [root@kvm ~]# virsh snapshot-create-as vm1first_snap

8.2、查看虚拟机历史快照信息

     [root@kvm ~]# virshsnapshot-list vm1

8.3、查看虚拟机磁盘信息

     [root@kvm ~]# qemu-imginfo /vm-images/vm1.img

8.4、查看当前快照信息

     [root@kvm ~]#virshsnapshot-current vm1

8.5、恢复到之前快照

     [root@kvm ~]# virshsnapshot-revert vm1 first-snap

     查看当前快照信息是否恢复成功:

     [root@kvm ~]# virshsnapshot-current vm1  //查看输出的name是不是要恢复的快照name。

8.6、删除指定快照

     [root@kvm ~]#virshsnapshot-delete vm1 first-snap




你可能感兴趣的:(KVM虚拟化)