KVM实战(一)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

KVM实战课程目标了解KVM操作KVM掌握KVM学以至用,提高生产力。一、介绍KVM二、操作KVM三、优化KVM四、KVM管理目录介绍KVM介绍KVM内核虚拟化技术Kernel-basedvirtrualmachineRedhat6.0之后集成到内核,之前为xenRedhat收购kvm解决异构KVM工作结构虚拟化方式硬件虚拟化KVMXEN软件虚拟化OPENVZ容器虚拟化docker虚拟化方式半虚拟化就是在全虚拟化的基础上,把客户操作系统进行了修改,增加了一个专门的API,这个API可以将客户操作系统发出的指令进行最优化,即不需要Hypervisor耗费一定的资源进行翻译操作,因此Hypervisor的工作负担变得非常的小,因此整体的性能也有很大的提高。全虚拟化完全虚拟化技术又叫硬件辅助虚拟化技术,最初所使用的虚拟化技术就是全虚拟化(FullVirtualization)技术,它在虚拟机(VM)和硬件之间加了一个软件层--Hypervisor,或者叫做虚拟机管理程序(VMM)。hypervisor可以划分为两大类。首先是类型1,这种hypervisor是直接运行在物理硬件之上的。其次是类型2,这种hypervisor运行在另一个操作系统(运行在物理硬件之上)中。类型1hypervisor的一个例子是基于内核的虚拟机(KVM——它本身是一个基于操作系统的hypervisor)。类型2hypervisor包括QEMU和WINE。使用虚拟化的区别,优势便于管理节省空间易于维护快速部署KVM是什么一个linux的内核模块只提供CPU和内存的虚拟化,通过/dev/kvm实现工作层级Qemu是什么硬件模拟器运行于用户态ring3当进行系统调用时产生上下文切换,调用内核态。当一起工作的时候,KVM管理CPU和MEM的访问,QEMU仿真硬件资源(硬盘,声卡,USB,等等)当QEMU单独运行时,QEMU同时模拟CPU和硬件。Qemu基于KVM的虚拟化技术RHEVOirtopenstackwebvirt实际操作KVMCPU开启虚拟化支持打开BIOSCPUVIRTRUALATION打开vmcpu支持安装epelyum-yinstallyum-fastestmirrorepel-release#rpm-ivh导入指纹rpm--import/etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6检查硬件支持情况cat/etc/redhat-releaseegrep'(vmx|svm)'/proc/cpuinfo安装软件包yuminstallqemu-kvmrpm-qlqemu-kvm安装管理工具yuminstallqemu-kvmvirt-managerpython-virtinstqemu-kvm-tools注centos7的repo没有python-virtinst需要单独下载安装模块激活cat/etc/sysconfig/modules/kvm.moduleslsmod|grepkvmrpm-qlqemu-kvmkvm是一个qemu进程创建硬盘qemu-imgcreate-fraw/opt/kvm.raw10Gqemu-imginfo/opt/kvm.raw查看硬盘信息创建虚拟机,默认监听5900/usr/libexec/qemu-kvm安装libvirtyuminstalllibvirtlibvirt-pythonservicelibvirtdstartLibvirt功能图创建kvm虚拟机virt-install--virt-typekvm--namekvm-demo--ram512--cdrom=/opt/centos65_64m.iso--networknetwork=default--graphicsvnc,listen=0.0.0.0--noautoconsole--os-type=linux--os-variant=rhel6--diskpath=/opt/kvm.rawPs–ef|grepkvm查看kvmCd/etc/libvirt/qemu/查看配置文件网卡文件kvm.xml文件介绍Virsh管理虚拟机Virsh–listallVirshstartkvm-nameDumpxml导出xml文件Destroy停止Start开始Define定义一个xmlDomidshowid注:删除一个虚拟机以后需重启libvirt会自动消失。通过修改xml文件调整内存/etc/libvirt/qemu改完需要重新定义virshdefine/etc/libvirt/qemu/kvm-demo.xml修改xml,需要virsheditxxx.xml或是vimxxx.xml然后definexxx.xml安装客户系统Psef|grepdns通过VNC进入安装Clone虚拟机1、导出xmlvirshdumpxmlkvm-demo/etc/libvirt/qemu/kvm-2.xml2、copy磁盘文件cp/opt/kvm.raw/opt/kvm2.raw3、修改xml文件vim/etc/libvirt/qemu/kvm2.xml{name,uuid,sourcefile,}4、definexmldefine/etc/libvirt/qemu/kvm2.xml5、virshstartkvm2UDEV问题Centos6使用udev机制复制后会变更eth号需要手工处理方法1,手动变更配置文件/etc/sysconfig/network-scripts/ifcfg-eth0toeth1方法2,变更udev文件删除已生成的udev规则rm-rf/etc/udev/rule.d/70-persistent-net.rules硬盘扩容增加硬盘qemu-imgresizekvm2.raw+1G(需要再验证,生产环境慎用)只支持raw查看xml变化转换硬盘格式1、qemu-imgconvert-c-fraw-Oqcow2kvm.rawkvm.qcow22、修改xml文件vimetc/libvirt/qemu/kvm-demo.xml{drivername,sourcefile}3、修改xml,需要virsheditxxx.xml或是vimxxx.xml然后definexxx.xml4、检测文件块qemu-imgcheck/opt/kvm.qcow25、qemu-imginfo/opt/opt/kvm.qcow2Raw与qcow2Raw与qcow2区别RAW裸格式,简单,可用dd直接生成,速度最快Qcow2支持压缩、快照、加密、copyonwirte特性,性能接近rawvmdkvmare专用,性能稳定,速度快。创建qcow2虚拟机virt-install--virt-typekvm--namek5--ram512--cdrom=/opt/CentOS-6.5-x86_64-minimal.iso--networknetwork=default--graphicsvnc,listen=0.0.0.0--noautoconsole--os-type=linux--os-variant=rhel6--diskpath=/opt/k5.qcow2,format=qcow2--vcpus=1注:必须在path后加上size,否则无法安装。Size=8参数为G,指定镜像大小,默认raw模式时生效,如果没有镜像,会创建一个。Format=qcow2用qcow2文件必须指定此项目,否客虚拟机无法识别硬盘。Kvm存储池默认位置/var/lib/libvirt/images查看存储virshpool-list–all查看信息virshvol-listkvm_images查看卷信息virshvol-infokvm.imgkvm_images创建存储池1)定义一个存储池virshpool-define-askvm_imagesdir----/opt2)查看创建的存储池信息virshpool-list--all3)建立基于文件夹的存储池virshpool-buildkvm_images4)使存储池生效virshpool-startkvm_images5)存储池还不是自动运行,使用virshpool-autostartvirshpool-autostartkvm_images6)验证存储池virshpool-infokvm_images创建qcow2镜像方法1virshvol-create-askvm_images.img8G--formatqcow2方法2qemu-imgcreate-fqcow2/opt/kvm.qcow210GLibvirt功能图调用libvirt快照管理创建快照qemu-imgsnapshot-cb1/opt/k2.qcow2qemu-i查看快照qemu-imgsnapshot-l/opt/kvm.qcow2恢复快照qemu-imgsnapshot–ab1/opt/k2.qcow2注意:一个快照一个名字,不要使用相同的名字qemu-imghelp查看帮助qemu-imgsnapshot–a使用–c创建-d删除–l显示

1 / 43
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功