超越虚拟化:构想真正的云计算
网友 网络
当操作系统突破了硬件的束缚并深化了与管理程序的关联时,虚拟机就会显得几乎有些离奇。云计算的下一次飞跃或许将会发生在被显示设计和调整作为VM运行的操作系统出现的时候。
 
每当看到规模适度的IT基础架构很少或者完全没有虚拟化时我都会觉得很不解,而当我了解到他们根本就没有打算在不久的将来接受虚拟化时我会感到更加惊讶。不管是出于“赶快给我离开”的态度还是单纯的为了减少预算,在今天,坚持传统的物理基础设施的做法都是疯狂的。

  首先,这些公司购买了什么作为服务器?如果他们使用新的四核或四核以上的服务器替换旧的单、双核的服务器并且只是简单地移动服务,那么他们他们已经有了足够多的硬件。每个服务器工作负载都运行在可以轻松地处理6台虚拟服务器即使同时还包含了免费的系统管理程序的硬件上。难道这些公司在服务器虚拟化成为过去式时才会接受虚拟化吗?

 
 
放眼未来几年,可以预期我们将看到管理虚拟服务器的方式会发生根本改变。仿佛从头到尾的企业虚拟化还不是真正的革命,我觉得未来还会有许多风暴会席卷而来。下一次飞跃将会发生在被显式设计和调整作为VM运行的操作系统出现的时候,由于缺乏有意义的驱动程序支持和其它物理服务器世界的特性,这种操作系统甚至将不会运行在物理硬件上。而将数千个驱动程序和特定功能的硬件带入VM的意义何在?它们一点用处都没有!

  最终,我们将看到广泛使用的操作系统版本:它替代了现今大多数作为支撑的操作系统,解决了多年来的冗余和膨胀以支持专门用于管理程序的内核,并且在内存、CPU和I/O资源如何运作和管理方面有着独到的想法。现在我们回到了通过热插拔扩展将CPU和RAM引入到VM中的时代,这种热插拔扩展最初设想是用于物理RAM和CPU的扩展。

  但是要实现上面的想法还有很长一段路要走。当一个操作系统内核可以即时请求、适应并使用额外的计算资源而不必了解这些资源背后的信息时,我们会更接近真正的云计算的概念:在每次运算过程中都不用考虑底层的硬件,没有固定CPU的概念,没有静态或者固定RAM的概念。这些操作系统通过调度层次的管理程序紧密集成一起,丝毫不关心单个处理器核心的亲和力、优化NUMA或运行着的RAM。

  这自然需要许多年才能完全实现,但我肯定它的到来。到时,管理程序将变得足够强大和聪明,可以管理那些用于任何兼容的主机OS的函数,本质上把每个VM变成了应用程序池。随着应用程序负载的增加,内核更关心的是与日益增长的管理程序的资源需求量的沟通,管理程序随后作出较低级别的决策,用来决定VM可以消耗哪些物理资源以及在必要时将其它实例转移到不同的物理服务器上以释放空间。

  反过来,这将去除指定模拟CPU和RAM限制而不是设置最小、最大和突发的限制给VM的概念——类似并行虚拟化,但完全与OS无关,而且不依赖内核主机OS作为中间层和固定内核。每个VM都可能知道它是一个运行的VM,但通过管理程序管理事务它也会运行自身的内核并直接解决硬件问题。

  随着在运行中升级的能力的出现,即通过升级被动管理程序、即时转移附近的负载、随后升级其他方面,我们说的带有嵌入式管理程序的固定用途的服务器可能是多余的,对于小型物理服务器同样如此,这些小型物理服务器基本上由包含完全用软件管理的底板级网络接口的CPU和RAM插槽组成。

  这些高级的虚拟服务器完全是虚拟服务器吗?或者说它们完全是服务器吗?如果它们发展成为类似了解它们所处环境的数据库和应用程序的软件服务,那就没必要在同一段时间内运行多个实例了。

  你可能只有两个而不是几十个Web服务VM,但是这两个VM频率可以从500MHz瞬间增长到32GBHz,因为负载在同一时间内从消耗6GB RAM跳跃到了512GB,而不需要分配任何固定值。可以想象,在使用适当的高速底板后,随着管理程序瓜分优先任务,保持RAM从本地到单个进程,一个服务器实例可以跨越两个或更多的物理服务器。当然,我们说的是整体的多线程应用程序,但是这不正是隐藏在虚拟化和多核CPU背后的整个想法吗?

  或许,在未来的某一天,我们将看到一架甚至若干架刀片机箱,我们看到的不是数十台上面运行着管理程序的物理服务器,相反,我们把它们看成一大堆将被任意数量的服务消耗的资源。如果出现了一个硬件故障,可以很容易通过热插拔更换故障的部分,唯一的损失可能是数百个进程从包含了数以万计的进程的表中消失,而这些消失的进程将会瞬间在其它地方重新启动,这样就不会对服务造成重大损失。

  也许,如果我们能看到这样的现实,那些仍然在维护一个破旧的物理数据中心的固执者可能最后会赞成在每个物理机箱中运行多个服务器的想法。到那时,他们将别无选择,也将没有其它能替代的选择。

CIO之家 www.ciozj.com 公众号:imciow
关联的文档
也许您喜欢