【每周推荐阅读】虚拟化技术

“云计算”兴起主要得益于两大类技术的应用:大数据处理 和 资源托管。资源托管,通俗点说,就是资源虚拟化相关的技术。

 

早些年,我在VMWARE工作的时候,就参与了商业应用最成熟的虚拟化套件vphere的开发。其实,无论是商业闭源的VMware产品,还是开源XEN/KVM,甚至当今兴起的cgroup/container,本质上都属于两类虚拟化技术:全虚拟化技术(Full-Virtualization)和半虚拟化技术(或者称为并行虚拟化,Para-Virtualization)。

  • 全虚拟化技术可以让与host不同的虚拟机(VM)映像运行在完全不同指令集的host系统或者硬件上。例如,在Window上运行CentOS系统,或者在CentOS上运行window系统;抑或在32位硬件上运行64位的操作系统等等。全虚拟化通过完全的指令解析和转义来实现不同异构系统之间的过渡,本质上来说是一个”映射“过程(包括:指令映射,寻址空间映射,资源表映射等等)。典型系统如商业应用的vmware,开源应用的xen/kvm +qemu。
  • 并行虚拟化技术则是虚拟与host自身系统同质的系统。一般来说,在不搭乘相关的仿真器(如qemu),也只能支持与host同样的操作系统实例。如今单机服务器的性能越来越强大,资源和计算能力通常都是有富余的,在这样情况下采用para-virtualization将单台物理机虚拟成多台机器可以有效的提高资源利用率。与全虚拟化最大不同在于,对于跑在虚拟机中的应用,是在隔离下直接使用底层硬件跑,因此性能会比全虚拟化大大提高。典型系统如openvz, container, kvm等等。值得一提的是,相比于2009年我参与cgroup/lxc社区进行kernel开发的时候比,如今的cgroup/container已经完全具备构建完整虚拟机所需要的两个重要基础特征功能:隔离和强制。

虚拟化技术有很多应用。其中热迁移(将虚拟机从一台物理机迁移到另外一台物理机的过程内部应用运行不断连接和停服务)(Live-migration)是商业产品vmware的核心技术之一。通过Live-Migration,可以很方便实现虚拟机负载均衡,或者提高资源利用率而实现Green Computing。本周推荐虚拟化技术相关的paper是2003年发表在SOSP的Xen and the art of virtualization,讲述xen虚拟机相关技术以及综述。

 

你可能感兴趣的:(虚拟化)