我心中的虚拟化和云计算

在我们要理解虚拟化和云计算的区别之前,我们有必要搞懂,究竟什么是虚拟化、什么是云计算。

一、虚拟化的概念
虚拟化就是利用“集中式”的概念。将单台或多台服务器集中起来,做集群,充分利用硬件服务器的网络、计算(如CPU、内存)、存储资源等。举个很简单的列子,我们自己使用的电脑,其CPU使用率通常在20%以下、物理内存使用一般是在40%以下。显然,虽然这样运行应用程序、使用系统会比较流畅,但也浪费了很多宝贵资源,如果是在服务器上,则更为宝贵。

那有没有一种方法可以充分的利用这些资源呢?答案是肯定的。——虚拟化。
即在硬件服务器上(你可以简单理解为个人电脑),安装某种虚拟化应用,再在这个虚拟化应用上安装VM,要构成整个虚拟化的生产环境,还得需要客户端、管理端等。

当前,主流的虚拟化产品或技术主要有:VMware的vSphere系列;Citrix的Xen Server系列;微软的Hyper-V系列;开源的KVM、Docker、Convirt等。

按照虚拟化的平台、对象可依次分为,服务器虚拟化(分别针对VMware的Esxi、Citrix的Xen Server、Windows的Hyper-V等,依赖于宿主Linux系统的KVM)、桌面虚拟化(分别针对VMware的View、Citrix的Xen Desktop等)和应用虚拟化(将应用程序打包在容器中,以沙箱方式运行,与OS隔离,这方面技术主流为Docker)。服务器虚拟化是其最底层,桌面虚拟化和应用虚拟化属于同一级。

最后一句
虚拟化属于云计算中的IaaS层,即基础设施层,可以作为一个系统,直接安装在硬件裸机上。其作用是“承上启下”。——承上,为上层建筑提供虚拟化服务;——启下,使用虚拟化的抽象技术充分利用硬件资源。

二、云计算的概念
云计算就是利用“分布式”的概念。通过IP网络的方式将N台服务器连接起来,以解决单台服务器无法解决的问题。比如说现在非常火热的数据挖掘、数据分析等大数据处理。每台服务器做自己的事情,彼此任务不同。
云计算有哪些独门秘籍呢:
· 基于互联网的超级计算模式–即把存储于个人电脑、移动电话和其他设备上的大量信息和处理器资源集中在一起,协同工作。在极大规模上可扩展的信息技术能力向外部客户作为服务来提供的一种计算方式。
· 数据在云端:不怕丢失,不必备份,可以任意点的恢复 ;
· 软件在云端:不必下载自动升级 ;
· 无所不在的计算:在任何时间,任意地点,任何设备登录后就可以进行计算服务;
· 无限强大的计算:具有无限空间的,无限速度。

当前,主流的云计算技术主要有(一般都是开源的):大名鼎鼎的Hadoop家族;OpenStack;CloudStack;Cloud Foundry等。当然与这些相关的数据存储技术还有NOSQL非关系型数据库家族,包括了文档型的MongoDB、可持久化数据的内存型Redis、内存键值型的Memcached。
为云计算提供底层数据存储的分布式文件系统主要有:Ceph、Swift、HDFS、GFS等。

最后一句
上面提到的云计算中的技术属于PaaS层,更往上了一点,与底层硬件不直接联姻。偏向于业务系统方面了。

三、虚拟化和云计算的联系与区别
联系:虚拟化是云计算的基础平台,它们都是云计算的范畴,千万不要理解为虚拟化和云计算不相关,那就真错了,通过在虚拟化平台(比如VM)上,采用云计算,部署业务系统。

区别:虚拟化是直接和硬件机器打交道,目的是充分利用硬件级资源,利用其整个生态环境,保障VM的高可靠性、高可用性等。云计算中部署的则直接是企业、个人的业务系统(比如ERP、数据处理、Office等)。简言之,就是执行的业务不同。通过虚拟化创建好了VM,至于你要用它来干什么、怎么干,那就是上层建筑“云计算”的事情了。

插曲
作为自己对虚拟化和云计算的看法,那就不得不提到让人兴奋的“桌面云”。当然桌面云也不是什么很抽象、高深的神马技术。简单的来说,就是在客户端上使用“远程连接”的方式使用远端的操作系统及其应用程序。
桌面云作为虚拟化和云计算的交集,即可使用虚拟化的技术部署,亦可使用云计算的技术部署(Hadoop除外),但本质上都是虚拟化技术。
桌面云为什么让人兴奋,原因在于:在网络互联互通的环境中,你可以使用Android、ios等手机、平板、笔记本、PC机等连接使用远端的操作系统,实现移动办公、随时随地办公,真正实现:
——让云端,触手可及!


你可能感兴趣的:(我心中的虚拟化和云计算)