1、12 ZQY ZQY.All rights reserved.34虚拟化核心技术介绍虚拟化实现虚拟化管理虚拟化软件比较 虚拟化技术介绍1 Kvm虚拟化2 Libvirt工具3 第一部分 虚拟化技术介绍PART 0101 ZQY ZQY.All rights reserved.虚拟化技术使用软件方式重新定义划分硬件资源,实现硬件资源的动态分配、跨系统共享,提高资源利用率,降低成本通过虚拟化技术将一台计算机虚拟为多台逻辑计算机同时运行多个不同的操作系统相互独立运行可以相互通信 虚拟化技术1.1 ZQY ZQY.All rights reserved.虚拟化技术使用软件方式重新定义划分硬件资源,实现
2、硬件资源的动态分配、跨系统共享,提高资源利用率,降低成本通过虚拟化技术将一台计算机虚拟为多台逻辑计算机同时运行多个不同的操作系统相互独立运行可以相互通信 虚拟化技术1.2 ZQY ZQY.All rights reserved.全虚拟化架构客户操作系统虚拟硬件Hypervisor虚拟化层宿主操作系统物理硬件应用程序不用修改客户操作系统内核对物理硬件的访问效率有损耗虚拟硬件并不存在,由虚拟化层转化为对物理硬件的访问1.3 ZQY ZQY.All rights reserved.服务器虚拟化技术 虚拟化软件是可以让一台物理主机建立与执行一至多个虚拟化环境的软件,具体如下:虚拟化前虚拟化后虚拟化将硬
3、件、操作系统和应用程序一同封装一个可迁移的虚拟机档案文件中 软件必须与硬件相结合 每台机器只能 运行单一的操作系统 每个操作系统有一个或多个应用程序负载(通常只有一个)增加虚拟化层 裸金属架构 每台机器上有多个操作系统和多个应用负载未更改过的应用未更改过的OS虚拟硬件Virtualization Layer1.4 ZQY ZQY.All rights reserved.目前从Hypervisor(虚拟机管理程序)安装位置分类,虚拟化层面包括安装在硬件层上、安装在宿主操作系统层上、安装在内核层上,具体如下:p 安装在硬件层上:由Hypervisor直接管理硬件,如VMWare ESXi、微软、思
4、杰KVM、XEN等硬件Hypervisor(虚拟机管理程序)操作系统操作系统p 安装在宿主操作系统上:Hypervisor安装在宿主操作系统上,通过宿主操作系统使用硬件,如VirtualBox、VMWare Workstation等硬件Hypervisor(虚拟机管理程序)客户操作系统客户操作系统宿主操作系统硬件内核、Hypervisor(虚拟机管理程序)操作系统上层操作系统上层p 安装在内核层上:Hypervisor安装在宿主操作系统内核上,客户操作系统调用宿主操作系统内核,如OpenVZ等1.5 服务器虚拟化技术 ZQY ZQY.All rights reserved.从虚拟化程度分类,虚
5、拟化技术包括完全虚拟化、半虚拟化、操作系统级虚拟化等,具体如下:p全虚拟化:通过Hypervisor(虚拟机管理程序)来分享底层硬件,客户操作系统无需意识到在虚拟环境运行,受保护的指令由Hypervisor来捕获和处理p特点:全虚拟化最大的优点是操作系统无需任何修改。它的限制则是操作系统必须能够支持底层硬件p半虚拟化:使用Hypervisor(虚拟机管理程序)分享底层的硬件,但客户操作系统集成了虚拟化方面的代码。由于操作系统自身能够与虚拟进程进行很好的协作,无需Hypervisor捕获和处理特殊指令p特点:半虚拟化需要客户操作系统配合Hypervisor做一些修改,性能与原始系统相近。硬件Hy
6、pervisor(虚拟机管理程序)操作系统操作系统管理应用应用硬件Hypervisor(虚拟机管理程序)操作系统操作系统管理应用应用驱动程序驱动程序p操作系统级虚拟化:内核与Hypervisor(虚拟机管理程序)集成,操作系统上层与内核共同组成完整操作系统p特点:性能较高,但操作系统只能是Linux(可以是不同版本)内核、Hypervisor(虚拟机管理程序)操作系统上层操作系统上层管理应用应用硬件1.6 服务器虚拟化技术 ZQY ZQY.All rights reserved.q 服务器虚拟化主要有以下四方面的功能:相对于硬件独立无需修改即可在任何服务器上运行虚拟机分区在单一物理服务器上同时
7、运行多个虚拟机隔离在同一服务器上的虚拟机之间相互隔离封装整个虚拟机都保存在文件中,而且可以通过移动和复制这些文件的方式来移动和复制该虚拟机1.7 服务器虚拟化技术 ZQY ZQY.All rights reserved.全虚拟化、半虚拟化全虚拟化半虚拟化1.8 ZQY ZQY.All rights reserved.传统虚拟化架构1.9 第二部分 Kvm虚拟化PART 0202Kvm虚拟化架构2.1 第三部分 Libvirt工具PART 0303Libvirt与Kvmlibvirt为了更方便地管理平台虚拟化技术而设计的开放源代码的应用程序接口、守护进程和管理工具,提供了对虚拟化客户机的管理、对
8、虚拟化网络和存储的管理libvirt是目前使用最为广泛的对KVM的虚拟机进行管理的工具盒应用程序接口,而且一些常用的虚拟机管理工具(virsh/virt-install/virt-manager等)和云计算框架平台(OpenStack/OpenNebula等)都是在底层使用 libvirt的应用程序接口。3.1降低硬件成本l减少生产、开发测试、过渡服务器数量l经济的灾难恢复 l撤退out-of-warranty硬件降低运营成本l降低系统管理成本l降低系统数据中心基础设施成本虚拟化架构优势硬件费用软件费用大约 30%-70%的降低虚拟架构前虚拟架构后3.2为每个工作负载节约的总成本 服务器100
9、080$5,816网络交换机8410$296功率(千瓦时)40752$759制冷(千瓦时)50964$949不动产(平方英尺)2053257$431为每个工作负载节省的成本(3 年以来)$8,251*之前之后节省的开支虚拟化将服务器、存储及网络连接基础架构整合到一起,旨在安全地实现更高的利用率。物理基础架构1运营成本23.3降低运维管理成本每个管理员的工作负载3075虚拟化之前 虚拟化之后90225生产率、灵活性与响应度3相同的人数完成更多的工作=节省运营成本提高生产率的动力:瞬间调配动态修补零宕机维护内置高可用性自动进行灾难恢复3.4虚拟架构优势:提高了劳动生产率关键任务传统方式虚拟架构部署
10、一个新的服务器3-10 天硬件采购1-4 小时 部署5 10分钟部署新服务器(采用模板和部署向导)硬件维护1-3小时维护窗口数天/周的变更管理准备零宕机硬件升级迁移服务器集成数天/周的变更管理准备1小时 左右,采用P2V移动服务器优化负载4-6小时 迁移所有维护窗口内,服务中断数天/数周的变更管理准备2 5分钟,无服务中断 3.512 ZQY ZQY.All rights reserved.34虚拟化核心技术介绍虚拟化实现虚拟化管理虚拟化软件比较 虚拟化软件包1 虚拟化安装2 虚拟化图形化使用3 虚拟化命令行使用4 第一部分 虚拟化软件包PART 0101虚拟化安装方式l服务器安装,在安装操作
11、系统过程中,将服务器角色安装为虚拟化主机,专用于虚拟化l服务器安装好之后,安装虚拟化软件,部署虚拟机虚拟化平台安装l专用虚拟化安装软件,直接将服务器安装为虚拟化HOST节点l虚拟化平台分为管理端和虚拟化HOST节点虚拟化安装1.1检查CPU是否支持虚拟化技术lIntel VT-xlAMD-V虚拟化安装之前检查1.2确认Linux内核已经支持虚拟化技术l如果没有输出YES,请先确认BIOS中已经开启虚拟化功能grep“vmx”/proc/cpuinfo&echo“yes”grep“svm”/proc/cpuinfo&echo“yes”1.3虚拟化安装之前检查 第二部分 虚拟化安装PART 020
12、2按转换虚拟化需要的软件包lkvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v安装方式可以使用yum安装方式,也可以使用rpm包单独安装方式lyum install Package_name Package_name y lyum groupinstall“software_groupname”-ylrpm ivh Package_name 虚拟化软件安装2.1虚拟化服务启动2.2虚拟机安装l图形化安装l命令行方式安装l使用模板安装虚拟机安装可以使用已存
13、在的虚拟机导入的方式l导入已存在虚拟机,相当于虚拟机迁移l虚拟机镜像格式转换,适配其他类型的虚拟化虚拟机安装2.3 第三部分 虚拟化图形化使用PART 0303图形化方式安装3.1 第四部分 虚拟化命令行使用PART 0404命令安装方式 virt-install -paravirt -name demo -memory 500 -disk/var/lib/xen/images/demo.img,size=6 -graphics none -location http:/ /6/x86_64/os/virt-install命令支持很多自定义安装方式,可以定义虚拟机安装的多种方式 可通过man
14、virt-install获取更多的帮助信息及参数信息4.112 ZQY ZQY.All rights reserved.34虚拟化核心技术介绍虚拟化实现虚拟化管理虚拟化软件比较 虚拟机管理1 虚拟化网络2 虚拟机镜像3 第一部分 虚拟机管理PART 0101单机虚拟化管理lvirt-manager管理l命令行管理、配置文件管理虚拟化平台管理l虚拟化平台通常情况下有虚拟化管理平台l以WEB的方式管理及调用l开源虚拟化管理平台OVirt虚拟机化管理1.1每一个虚拟机都有一个配置文件l配置文件可以通过图形化的方式改变l直接修改配置文件虚拟机配置管理1.2 第二部分 虚拟化网络PART 0202虚拟化
15、网络管理虚拟化网络桥接方式2.1桥接、Nat网络2.2桥接网络br0配置2.3NAT网络,虚拟机通过复用物理主机网卡进行流量转发默认情况下,NAT网络在虚拟化中自带DHCP服务,为内部虚拟机提供192.168.122.0/24地址DHCP默认使用的服务dnsmasql提供DNS服务l提供DHCP服务l提供TFTP服务虚拟化Nat网络2.4 第三部分 虚拟机镜像PART 0303KVM虚拟化支持镜像格式虚拟机镜像管理镜像名称镜像特点raw原始裸格式文件,以一个文件表示速度快qcow2qcow2 镜像格式是 QEMU 模拟器支持的一种磁盘镜像。用一个文件的形式来表示一块固定大小的块设备磁盘。与普通
16、的 raw 格式的镜像相比更小的空间占用支持写时拷贝(COW,copy-on-write)支持快照(snapshot)可选择基于 zlib 的压缩方式可以选择 AES 加密3.1qemu-imglqemu-img命令可以转换镜像格式l识别镜像合适,查看镜像信息镜像管理命令3.212 ZQY ZQY.All rights reserved.34虚拟化核心技术介绍虚拟化实现虚拟化管理虚拟化软件比较 虚拟化软件比较1 虚拟化软件市场情况2 第一部分 虚拟化软件比较PART 0101 目前虚拟化软件主要分为两类:以Vmware、微软、思杰等为代表的商用套装软件和以KVM、VirtualBox、Open
17、VZ等为代表的开源软件,具体情况如下虚拟化分类1.1 目前,用户量较大的商业虚拟化套装软件主要包括VMWare、微软、思杰等,CCCC对上述商用虚拟化套装软件进行了测试,测试对比如下:商业版虚拟化1.2 而随着虚拟化普及,各开源组织也推出了各种开源的虚拟化软件,如KVM、VirtualBox、OpenVZ、Xen等数十种,下面选取4种活跃程度较高、用户量较大的开源虚拟化软件进行对比:开源虚拟化1.3 第二部分 虚拟化软件市场情况PART 0202商业虚拟化市场q VMware在全球云计算系统管理软件市场中的份额为20.5%,在全球处于领先地位,Microsoft和Cisco的市场份额分别排名第
18、5、第7,份额分别为9.9%和4.3%。2.1开源虚拟化市场2.2p考虑目前虚拟化软件种类多,CCCC已引入了VMWare、微软等多种品牌,采用可跨品牌的虚拟化管理平台可更易于完成虚拟化管理平台整合。目前,可跨品牌的虚拟化管理平台有下列形式:商用套装软件:由厂商销售的成套管理平台软件,目前有EMC、HP、微软、VMWare等多家厂商可提供类似套装软件开源软件:由开源社区开发及维护,源代码公开的管理平台软件,如OpenStack等。定制开发软件:由开发商根据CCCC需求及虚拟化软件的接口,定制开发相关管理平台软件,实现管理需求p开源软件OpenStack介绍:OpenStack是一个为公共及私有云的建设与管理提供软件的开源项目:以Apache许可证授权,并且是一个自由软件和开放源代码项目。OpenStack项目主要是简化了云部署过程并提高了可扩展性。OpenStack是支持虚拟化产品较多的管理平台:可支持大量开源虚拟化产品(如Xen、KVM等)及商业化虚拟化产品(如Hyper-V、Vmware、XenServer、PowerVM等)。统一资源管理平台2.3See you on our next meetingThank you for your attention