Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7417
  • 博文数量: 5
  • 博客积分: 225
  • 博客等级: 二等列兵
  • 技术积分: 70
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-08 08:40
文章分类
文章存档

2010年(5)

我的朋友
最近访客

分类:

2010-06-02 23:36:31

从以下四种维度分析虚拟化
1 最早的虚拟化是IBM的动态分区技术,再有SUN的container技术,后来才是计算机硬件系统虚拟化。虚拟化本身的含义更广,还包括网络虚拟化、存储虚拟化、桌面虚拟化等,这里考虑计算机硬件系统虚拟化
2 虚拟化本身是对资源的封装和可管理化,首先是对计算机硬件系统的封装和可管理化,在计算机硬件系统其上的OS间增加一个软件层, 软件层加计算机系统硬件对OS呈现为不同的计算机硬件系统,使得计算机硬件系统资源和其上的OS隔离解偶。同时也使得OS及以上(软件资源和数据资源)可管理, 共物理结点OS间的隔离。这种封装性并非没有先例,最早期计算机没有OS,应用程序直接在计算机硬件系统上跑,后来慢慢在两者间增加了功能完备的OS软件, 使得计算机硬件系统和其上的应用程序隔离解偶。同时也使得应用程序可管理,共OS的应用程序间的隔离和封装。现在只不过又加了一层软件。资源(计算机硬件系统资源、软件资源和数据资源)的可管理性实现后,剩下的是另一方面:资源的管理,即资源的调度分配。前者已经由虚拟化实现,关键在后者(与其谈虚拟化,不如谈资源分配)当然虚拟机软件往往把前者和部分后者都实现在一起(就像OS一样),所以重点考虑后者
3 如2所述,资源的封装和管理并非虚拟化独有的,在OS中已经实现了。实际上资源的管理可以在各层实现。从APP到中间件到OS到VMM各层都可以实现,所以虚拟化技术并非非用不可的技术。只不过虚拟化是最底层的资源管理技术,是最通用的技术,越底层的技术越通用,但是需要考虑的场景需求也越多,也就越困难。而越上层的技术越不通用,但是越能针对特定的场景效果越好(以软交换为例,实时性强,容量大,业务状态变化太频繁,不适合虚拟机迁移)。这里边最困难的还是分布式的资源管理
4 资源管理的各个维度,在各层都可能有。资源的分配调度(优先级抢占,不同业务搭配)、迁移、备份、资源需求的预测。这里面有一个好的思想,那就是业务跟着数据/存储走(举例:P2P, GFS/bigtable)。所以如果把业务处理(软件资源)和数据解偶,管理好数据资源在各个节点间的分配,业务负荷的资源分配就自然解决了。因此分布式资源管理的难点可能就在于资源需求的预测和数据资源在各个节点间的分配(重分配)

5
如4所述, 资源的调度,数据的迁移其实可以分为两个维度各两个层面,横向的资源管理和纵向的资源管理,横向的例如操作系统,钟祥的例如分布式操作系统。数据和负荷的迁移还包括负荷的分发和负荷的迁移(重分发)。如4所述,业务跟着数据走,可以通过数据迁移/负荷迁移(重分发)实现自动负荷分发和自动扩容。因为数据迁移的可扩展性、性能越来越强。从单个CPU到多CPU到超多CPU(48和,100核)到大规模集群,通信机制从共享并行总线到交换式串行总线到10GE交换网络到100GE交换网络

6 虚拟机迁移是一种数据迁移,好处是通用的完整的透明的迁移,坏处是代价大。而应用层则相反。所以前者对MSX意义不是非常大。这种资源重分配到底放在那一层,需要权衡对于云上各种业务共享硬件资源,不能在应用层做这件事,一定需要中间层。代价和(通用/完整/透明的)的权衡目前的计算机硬件系统虚拟化做的不好,但是container技术(OS虚拟化)可能通过为应用而不是OS构造隔离的环境可以实现迁移的小开销,同时维持(通用/完整/透明的)(仍然是资源的封装和可管理化)

结合虚拟化技术、 P2p、memory pool/memory virtualization/分布式缓存等技术的负荷分发/
负荷的迁移(重分发)/自动扩容伸缩/负荷重分发

用户看云,云就是业务,里面的全是忽悠,例如Amazon EC,将VM当作物理机卖给用户,用户以为是物理机,忽悠,如果用户知道了....

虚拟化一定要跟着云。虚拟化技术远早于云,但是直到云的兴起,才被广为关注,例如vmware被存储厂商EMC收购


资源管理层: P2P/GFS-Bigtable/分布式OS  VDC-center/Cloud OS。虚拟化仅仅直至资源的封装和可管理话是没用的,一定要结合分布式的资源管理技术,发挥虚拟化的通用性、透明性。所以需要分析Vmware VDC-OS CLoud OS

The most dìficult and key thing ís to consolidate resource encapsulation of virtualization and resource management. The latter consist of horizontal resource management including load dispatching between physical nodes, load transfering between physical nodes, and verical resource management including resource management inside a physical node, resource schedle between different users and services
阅读(574) | 评论(0) | 转发(0) |
0

上一篇:分布式技术、云计算和虚拟化技术

下一篇:没有了

给主人留下些什么吧!~~