简介
KVM是Kemel Virtual Machine 的简写,目前Red Hat只支持在64位的AEL5 4及以上的系统
运行KVM.同时硬件需要支持VT技术。KVM的前身是QEMU, 2008 年被RedHat公司收购并获得
一项hypervisor技术,不过Red Hat的KVM被认为将成为未来Linux hypervisor 的主流。准确来说
KM仅仅是Linux内核的一个模块。管理和创建完整的KVM虚拟机,需要更多的辅助工具,本
章将介绍部署虚拟化环境、创建虚拟机实例, 以及虚拟机的基本管理。
一、在已有的系统基础上,安装kvm软件
1.设置kvm网络
用户模式:即NAT方式这种方式是默认网络, 数据包由NAT方式通过主机的接口进行
传选可以访同外网, 但是无法从外部访问虚拟机网络。
桥接模式:这种模式允许虚按机像一台独立的主机一样拥有网络,外部的机器可以直接
法河到虚花机内部但需要网卡支持,一般有线网卡都支持。
这里以Brdge桥接)为例。默认是nat模式
vim /etc/sysconfig/network-screpts/ifcfg-eth0
DEVICR=eth0
ONBOOT=yes
BRIDGE="br0"
TYPE=Ethernet
vim /etc/sysconfig/network-screpts/ifcfg-br0
DEVICE=bro
BOOTPROTO=static
ONBOOT=yes
TYPE=Bridge
IPADDR=192.168.10.10
NETMASK=255.255.255.0
service network restart
2.安装kvm所需软件
yum -y groupinstall "Desktop" //安装GNOME桌面环境
yum -y install qemu-lvm.x86_64 //kvm模块
qemu-kvm-tools.x86_64 //kvm调试工具,可不安装
python-virtinst.noarch //python组件,记录创建vm时的xml文件
qemu-utils.x86_64 //qemu组件,创建磁盘、启动虚拟机等
brige-utils.x86_64 //网络支持工具
libvirt //虚拟机管理工具
virt-manager //图形界面管理虚拟机 查看kvm模块是否安装 lsmod | grep kvm
3.kvm管理
virt-manager
1)创建存储池和镜像存储池。
2:)在data池中创建一个存储卷,并设置最大容量与分配容量。
3)生成虚拟机
完成以上就会新建一个虚拟机出来
三、管理
virth -h //查看命令帮助
virsh list --all //查看虚拟机状态
virsh shutdown centos7 //关闭虚拟机
virsh start centos7 //启动虚拟机
virsh create /var/lib/libvirt/amages/centos7.xml //启动虚拟机
virsh destroy centos7 //关闭电源
virsh suspend centos7 //挂起虚拟机
virsh resume centos7 //恢复虚拟机
virsh autostart centos7 //自动启动
virsh dumpxml centos7 > /etc/libvirt/qemu/centos7—1.xml //导出虚拟机文件配置
virsh undefine centos7 //删除虚拟机
cd /etc/libvirt/qemu/
mv centos7-1.xml centos7.xml
virsh define centos7.xml // 从新定义虚拟机
vim /etc/libvirt/qemu/centos7.xml //修改虚拟机配置文件 (用来修改系统内存大小,磁盘文件等信息)
virsh edit centos7 //通过virsh命令修改
四、管理kvm文件
通过文件管理可以直接查看,修改,复制虚报机的内部文件。 例如当系统因为配量问题无
法启动时,可以直接修改虚拟机的文件。虚报机磁盘文件有raw与gcow2格式,KM虚机机默认
使用gcow2格式,raw格式性能最好.速度最快,其缺点是不支持一些新的功能。如镜像,Zlib磁盘
压维,AES加密等,针对两种格式的文件有不同的工具可供选择。这里介绍本地YUM安装
libguestf-tools后产生的命令行工具 (这个工具可以直接读取qcow2 格式的磁盘文件。因北需要
将raw格式的磁盘文件装换成gcow2的格式).
1.转换raw格式磁盘至qcow2格式。
qemu-img info /var/lib/libirt/images/centos7.img //查看当前磁盘格式
qemu-img convert -f raw -O qcow2 /var/lib/libirt/images/centos7.img /var/lib/libirt/images/centos7.qcow2 //转换磁盘文件格式
vim edit centos7 //修改xml配置文件
virt-cat -a /var/lib/libirt/images/centos7.qcow2 /etc/sysconfig/network //类似于cat
virt-edit -a /var/lib/libirt/images/centos7.qcow2 /etc/resolv.conf
virh-df -h centos7 //查看虚拟机磁盘信息
virt-clone -o centos7 -n centos7-1 -f /var/lib/libirt/images/centos7-1.qcow2 //克隆centos7
五、虚拟机快照
virsh snapshot-create centos7 //创建centos7快照
virsh snapshot-current centos7 //查看版本
virsh snapshot-list centos7 //查看快照信息
virsh snapshot-revert centos7 1384594578 //恢复虚拟机状态至1384594578
virsh snapshot-delete centos7 1384594578 //删除快照