虚拟化与云计算是什么关系?

虚拟化和云计算这两个概念,都是标志计算机.

虚拟化和云计算这两个概念,都是标志计算机技术发展进入新阶段的关键技术和理念。它们的核心理念都是从抽象资源中创建可用的环境。但是,两者又不是完全相同的技术。所以很容易被混为一谈。那么什么是虚拟化,什么是云计算,它们之间是一种什么样的关系?

什么是虚拟化?

我们先看一个简单的例子,以前,当我们运行操作系统时,我们只能在一台物理服务器上运行一个操作系统。如果我们需要同时运行多个操作系统,我们则需要具备多个服务器来运行所有的操作系统,因为每个操作系统都需要一台专属的物理服务器(Linux和Windows各自都需要专门的物理服务器)。

上面这种操作方式,我们称之为物理隔离,是一种硬件层面上的隔离。这种隔离会导致资源隔离的颗粒度较大,利用率不高。

虚拟化是将上面所说的物理基础架构(如服务器、网络硬件、存储等)与计算环境(如操作系统和应用程序等)分开以创建虚拟IT资产的软件技术。通过虚拟化,达到抽象和隔离物理硬件中各项资源之目的,之后把这些资源提供给叫做虚拟机的虚拟环境,共享硬件资源。

虚拟化按照对象的不同,分为硬件虚拟化和软件虚拟化。对于硬件虚拟化,硬件是实现虚拟化的基础,硬件(主要是CPU)会为虚拟化软件提供支持,从而实现硬件资源的虚拟化。比如说让一个CPU工作起来像多个CPU在并行运行,从而使得在一部电脑内同时运行多个操作系统成为可能。

而软件虚拟化就是利用软件技术,在现有的物理平台上实现对物理平台访问的截获和模拟。在软件虚拟化技术中,有些技术不需要硬件支持,如:QEMU;而有些软件虚拟化技术,则依赖硬件支持,如:VMware、KVM。

回到本章开始的问题,要在同一个服务器上运行两套不同的操作系统(如Windows和Linux),我们就可以通过虚拟化技术,将操作系统与底层硬件分开。

这个时候,通过虚拟化,我们把资源粒度切的更细,提高整机资源的利用率,同时就可以减少机房对电能、空间和散热能力的需求。另外,虚拟化也使得我们能够通过软件配置,轻松的创建,重启,销毁虚拟机。

什么是云计算?

不同的用户,对云计算的认知是不同的,计算机专业的学生会认为云计算就是网格计算,并行计算,这与云计算刚出来之时称呼有些近似;作为一个普通网民,他可能会认为云计算其实就是网盘,类似百度云和微云这些网盘;对于一个搞IT的工程师,他会认为云计算是服务器,比如说网站服务器。那么,云计算应该是怎样的?

在我们看来,云计算其实是互联网的隐喻。

意味着可以通过Internet而不是通过局域网等内部部署来存储/访问数据和程序。可以跨任何网络向用户按需提供计算、网络和存储基础架构资源、服务、平台和应用。因此,认为云计算是共享数据和软件的一种交付服务。所以我们可以经常看到有这些服务类型的描述。

  • SaaS: Software-as-a-Service(软件即服务)
  • PaaS: Platform-as-a-Service(平台即服务)
  • IaaS: Infrastructure-as-a-Service(基础设施即服务)

这三者之间主要的区别在于第一个单词含义,后面的aaS是as-a-service(即服务)的意思。它们的本质之一是在于云化或池化的程度,或者说对于软件程序而言,用户所能管理管辖的界面。

其中IaaS是基础层、PaaS是平台层的,而SaaS是软件层。对于IaaS: Infrastructure-as-a-Service(基础设施即服务),它是最基础的云计算服务模型,通过将服务器、存储和网络硬件等池化后以虚拟化技术提供给用户使用。

有这样一个比如,云计算的三种服务模式就如同吃饺子。没有云计算时,相当于在家自己做饺子,所有材料包括饺子以及灶具都得自己准备。

当有了IaaS基础设施即服务时,只需要准备好锅与煤气灶,还有餐桌、厨具就好了,我们只需要从饺子供应商买回饺子,然后煮一下就可以吃了,这就是。

同时我们也可以直接叫平台平台即服务(PaaS),通过外卖平台让卖饺子的餐厅直接把做好的热腾腾的饺子送过来,你只需要准备餐桌就好了。

如果什么都不想准备,甚至连桌子都懒得整理的话,就直接去饺子店吃好了。那里什么都已经准备好了。这就是软件及服务(SaaS)。

也就是说,通过云计算,意味着企业至少不再需要在现场来构建昂贵硬件,只需要拥有跨越网络(如互联网)的能力。

虚拟化和云计算?

虚拟化和云计算是两种完全独特的技术。我们可以认为,虚拟化是操控硬件的软件技术,而云计算是指由操控产生的服务。即我们可以将虚拟化视为技术,将云计算视为服务。虚拟化是云计算的基础技术能力。

因此,结合虚拟化来说,云计算的不同服务模式其实是虚拟化在隔离上的深度和细度问题,以及从物理硬件到运行所需资源的虚拟化程度。

就像前面说的,虚拟化在最开始是硬件虚拟化,通过虚拟机的形式解决物理硬件隔离的各种问题。当大量的虚拟机被生成出来,然后配合特定的管理、计算、安全以及相应的网络设施,就我们通说所说的IaaS基础设施即服务。

再进一步,是基于应用层面隔离的PaaS平台即服务,这是一种软件虚拟化,同一个PaaS平台可以同时运行多个应用并运行相同的执行,各个应用之间彼此独立。再细一步,将应用以及相关的数据都绑定在一起,将这一切资源也虚拟化,使得应用不必依赖其执行环境,这也就是我们容器(Container)技术,一种基于操作系统内核的进程隔离。

那么,随着技术以的发展,云计算的未来会是怎样的?

按照很多专家预测,云计算最终会发展成为一项类似电能的公众资源。这种资源用户想用多少就用多少,按需付费,不用担心资源是否足够,也不用担心地域和时间的限制,随时随地可用,就像手机需要充电了可以很方便的接入使用,只要有插座(API/Socket)。

发表回复