VPS虚拟化架构OpenVZ和KVM的区别
1.各种主题
1.OpenVZ:基于Linux平台的操作系统级服务器虚拟化解决方案。
2.KVM:允许您直接连接键盘、视频和鼠标(KVM)端口来访问和控制您的计算机。
2.功能多样
1.OpenVZ:在单个物理服务器上创建多个隔离的虚拟专用服务器(VPS),并尽可能高效地共享硬件和管理资源。
2.KVM:提供真正的主板级访问,支持多平台服务器和串口设备。
3.各种优点
1.OpenVZ:具有标准启动脚本,可以在以下提供的VPS上运行:软件制造商不需要对OpenVZ进行任何特殊修改或调整。
2.KVM:即插即用设计,操作方便、简单。
我们可以支持各种品牌的计算机和服务器,包括PC、SUN、MAC。
参考来源:百度百科-KVM
参考来源:百度百科-openVZ
简述虚拟化的架构及特点
虚拟化[1]是一个广义术语,指的是在虚拟基础上而不是在真实基础上运行的计算组件。
它是一个简化管理和优化资源的解决方案。
就像一座开放透明的办公楼,整层没有固定的墙体。
用户可以以相同的成本建造一个更加独立、合适的办公空间,从而节省成本并最大限度地提高空间利用率。
这种根据不同的需求重新调度有限的固定资源以达到最大利用率的思想在IT领域被称为虚拟化技术。
CPU虚拟化技术可以用单个CPU模拟多个CPU并行,使一个平台可以同时运行多个操作系统,应用程序可以在独立的空间运行而不互相影响,从而大大提高计算机工作效率。
虚拟化技术与多任务和超线程技术完全不同。
多任务是指一个操作系统中多个程序同时并行执行。
在虚拟化技术中,可以同时运行多个操作系统,每个操作系统都有多个程序运行在虚拟CPU或虚拟主机上;而超线程技术只是用单CPU模拟双CPU,以平衡程序的性能。
两个模拟的CPU只能一起工作。
虚拟化技术也不同于VMwareWorkstation等同样可以实现虚拟效果的软件。
这是一项重大的技术进步,具体体现在减少与软件虚拟机相关的开销以及支持更广泛的操作系统方面。
虚拟化技术有很多定义,下面给出一些这样的定义。
“虚拟化是以用户和应用程序可以轻松利用的方式表示计算资源的过程,而不是以在实施、地理位置或物理包装方面专有的方式表示这些资源,换句话说,它提供数据、计算能力、存储资源和其他资源的逻辑视图,而不是物理视图。
”-乔纳森·尤尼斯,IlluminataInc.“虚拟化是表示计算资源的逻辑组(或子集)的过程,以便可以利用原始配置的方式访问它们。
这种新的资源虚拟视图并不独立于实施、地理位置、或底层资源《物理配置的限制》——维基百科《虚拟化:为一组相似的资源提供一组通用的抽象接口,从而隐藏属性和操作之间的差异,并允许以通用的方式查看和维护资源。
”-OpenGridServicesArchitectureGlossaryofTerms。
KVM虚拟化详解
KVM虚拟化详解1.KVM虚拟化架构1.1常见虚拟化架构比较常见的虚拟化架构有ESXi、Xen、KVM等。ESXi内核实现了所有虚拟化功能。
Xen只实现CPU和内存虚拟化,IO虚拟化和调度管理由Domain0实现。
KVM内核实现CPU和内存虚拟化,QEMU实现IO虚拟化并通过Linux进程调度器管理虚拟机。
1.2KVM架构核心模块KVM架构包括KVM核心模块和QEMU设备模拟。
KVM内核模块负责CPU和内存虚拟化,QEMU实现IO虚拟化。
两者共同进行虚拟机管理。
2.CPU虚拟化2.1pCPU和vCPU物理服务器配置2个物理pCPU,每个pCPU有多个核心。
开启超线程技术后,每个核心拥有2个线程。
在虚拟化环境中,一个线程对应一个vCPU。
KVM将每个VM视为用户空间中的一个QEMU进程,分配给guest虚拟机的vCPU就是该进程的线程。
2.2虚拟化类型比较ESXi是全虚拟化,VMM运行在Ring0上,完全模拟底层硬件。
Xen支持全虚拟化和半虚拟化。
KVM依赖于硬件辅助的全虚拟化。
2.3KVMCPU虚拟化KVM中的vCPU以三种模式运行:来宾模式运行GuestOS、用户模式运行QEMU、内核模式运行KVM内核。
一旦KVM内核加载完成,执行VMXON指令即可进入VMX操作模式。
VMM运行VMEexit切换到Root模式处理特权指令,然后执行VMLANCH或VMRESUME指令切换回Non-root模式。
3、内存虚拟化3.1EPT和VPIDIntel的EPT和AMD的NPT硬件辅助内存虚拟化技术通过硬件实现内存地址转换。
Guest读写CR3寄存器或GuestPageFault,执行INVLPG指令,无需触发VMExit,降低内存转换复杂度。
3.2透明大页THP透明大页THP技术自动创建、管理和使用大页内存,提高内存使用效率和性能,同时避免了传统大页的弊端。
3.3内存过量分配内存过量分配会导致分配给Guest的内存总量大于实际的物理内存总量。
内存交换、气球和分页技术实现了内存超额。
4.IO设备虚拟化4.1IO设备虚拟化概述KVM支持设备模拟、virtio驱动、设备透传和共享。
4.2设备模拟和virtio驱动设备模拟通过QEMU实现。
Virtio驱动程序将前端驱动程序部署在guest中,将后端驱动程序部署在QEMU中,通过虚拟环形缓冲区队列交换IO请求和执行信息。
4.3设备直通和共享设备直通PCIPass-through将物理主机设备直接分配给客户机。
设备共享SR-IOV标准允许物理设备支持多个虚拟功能接口,并将它们独立地分配给不同的来宾。
4.4其他IO设备功能图像和声音是使用QEMU的SDL实现的。
热插拔支持KVM中的PCI设备,CPU和内存热插拔受到平台和操作系统的限制。