KVM是Kernel Virtual Machine的简写,目前Redhat只支持在64位的Rhel5.4以上的系统运行KVM,同时硬件需要支持VT技术。KVM的前身是QEMU,在2008年被redhat公司收购并获得了一项hypervisor技术,不过redhat的KVM被认为将成为未来linux hypervisor的主流,准确的来说KVM不仅仅是linux内核的一个模块。管理和创建完成的KVM虚拟机,需要更多的辅助工具。接下来部署KVM虚拟化环境。

公司部分的linux服务器利用率不是很高,为了充分利用这些linux服务器,可以部署KVM ,在物理机上运行多个业务系统,比如在运行Nginx服务器上部署KVM,然后在虚拟机上运行Tomcat

虚拟机开启方式

内存:2048M
处理器:核心数 2
虚拟化引擎:首选模式:intel VT-x 或 AMD-V
勾选‘虚拟化intel vt-x/EPT 或 AMD-V/RVI(V)’
勾选‘虚拟化cpu性能计数器’

硬盘:100G以上
最简单的安装方法就是在安装系统的时候,选择桌面安装,然后选择虚拟化选项
yum -y install qemu-kvm.x86_64 qemu-kvm-tools.x86_64 qemu-img.x86_64 python-virtinst.noarch bridge-utils.x86_64 libvirt virt-manager
没有图形化界面的需要安装yum -y groupinstall gnome-desktop
qemu-kvm.x86_64 //kvm模块

qemu-kvm-tools.x86_64 //kvm调试工具,可不安装

python-virtinst.noarch //python组件,记录创建vm时的xml文件

qemu-img.x86_64 //qemu组件,创建磁盘,启动虚拟机等

bridge-utils.x86_64 //网络支持工具

libvirt //虚拟机管理工具

virt-manager //图形界面管理虚拟机
然后重启
2.设置网络
将ens33网卡改成br0网卡,ens33添加一项BRIDGE=“br0”,ip注释

cp /etc/sysconfig/network-scripts/ifcfg-eth1 /etc/sysconfig/network-scripts/ifcfg-br0
 vim /etc/sysconfig/network-scripts/ifcfg-br0DEVICE=br0
 TYPE=Bridge
 ONBOOT=yes
 NM_CONTROLLED=no
 BOOTPROTO=static
 IPADDR=192.168.10.1
 NETMASK=255.255.255.0


重启network服务
service network restart
3.kvm管理
应用程序–系统工具—终端

1)打开KVM管理控制台

virt-manager

或者

应用程序—系统工具—虚拟系统管理器

2)双击localhost (qemu)

3)选择存储,点击+(新建存储池) hs 输入/data_kvm/store 这个位置用于存储后创建的虚拟机

4)按照上面的做法在创建一个镜像存储池,用来存储系统的镜像,方便安装
存储池:hs_iso—目录:/data_kvm/iso

5)创建存储卷
hs — 新建卷 —
*名称:test01_kvm
*最大容量:10240MB
*分配:10240MB

6)新建虚拟机

(1)*应用程序—系统工具—虚拟系统管理器—右键‘localhost’—新建

(2)名称:test01

(3)使用CD-ROM或DVD
操作系统类型:linux
版本:Red Hat Enterprise Linux 6

(4)选择管理的和其他现有存储
/data_kvm/store/test01_kvm.img

(5)勾选‘在安装前自定义配置’ — 完成

(6)Overview—机器设置—时钟偏移:localtime—应用

(7)Boot Options — 勾选‘主机引导时启动虚拟机 ’–应用
此应用可以实现宿主机启动的同时启动虚拟机

(8)显示VNC — keymap — copy local keymap —应用

此应用可以实现远程管理

(9)配置完成— begin installation —安装虚拟机

安装centos6.5虚拟机的过程略----按照学习过的方法安装即可

使用KVM命令集管理虚拟机

1.主机要求
*使用1台物理机器
*一台服务器安装CentOS 6.5的64位系统(即test01)
*test01是在宿主机test01中安装的虚拟机
*安装虚拟机
*使用Xshell远程控制
2…KVM基本功能管理

【帮助】

virsh -h

【显示配置文档位置】

ls /etc/libvirt/qemu/

【查看虚拟机状态】

virsh list --all

【关机】

virsh shutdown test01

【开机】

virsh start test01

【关闭电源】

virsh destroy test01

【通过配置文件启动虚拟机】

virsh create /etc/libvirt/qemu/test01.xml

virsh list --all

【挂起】

virsh suspend test01

virsh list --all

【恢复】

virsh resume test01

【自动随宿主机一起启动】

virsh autostart test01

【导出虚拟机配置】

virsh dumpxml test01 > /etc/libvirt/qemu/test02.xml

virsh shutdown test01

【删除虚拟机】

virsh undefine test01

ls /etc/libvirt/qemu/

virsh list --all

cd /etc/libvirt/qemu

mv test02.xml test01.xml

【通过备份的配置文件重新定义虚拟机】

virsh define test01.xml

virsh list --all

【下面两种都可以编辑配置文档】

vim /etc/libvirt/qemu/test01.xml

virsh edit test01

3…KVM文件管理
【此工具可以直接读取qcow2格式的磁盘文件】

yum -y install libguestfs-tools

【查看当前磁盘格式】

qemu-img info /data_kvm/store/test01.img

virsh shutdown test01

【转换磁盘格式】

qemu-img convert -f raw -O qcow2 /data_kvm/store/test01.img /data_kvm/store/test01.qcow2

-O 大写‘O’

【修改.xml的配置文件】

virsh edit test01

……

/usr/libexec/qemu-kvm



……

【类似于cat命令】

virt-cat -a /data_kvm/store/test01.qcow2 /etc/sysconfig/network

【类似于edit命令】

virt-edit -a /data_kvm/store/test01.qcow2 /etc/resolv.conf

【查看虚拟机磁盘信息】

virt-df -h test01

4…虚拟机克隆

virsh list --all

【克隆01到02】

virt-clone -o test01 -n test02 -f /data_kvm/store/test02.qcow2

virsh list --all

virsh start test02

5…虚拟机快照
kvm虚拟机使用镜像功能,磁盘格式必须为qcow2.

【创建快照】

virsh snapshot-create test01

【查看快照版本信息】

virsh snapshot-current test01

【查看快照信息】

virsh snapshot-list test01

【恢复快照到指定】

virsh snapshot-revert test01 1282572463

virsh snapshot-current test01

【删除快照】

virsh snapshot-delete test01 1282572463