什么是云计算呢?云计算的特征是什么呢?
其实云端(cloud)就代表了互联网(Internet),通过网络的计算能力,取代使用你原本安装在自己电脑上的软件,或者是取代原本你把资料存在自己硬盘的动作,你转而通过网络来进行各种工作,并存放档案资料在网络,也就是庞大的虚拟空间上。我们通过所使用的网络服务,把资料存放在网络上的服务器中,并借由浏览器浏览这些服务的网页,使用上面的界面进行各种计算和工作。
在云计算中,服务器并不会管你电脑的计算能量有多强。有的同事在办公室用PC连上Google Docs,在家则是用Apple MacBook,同时还有很多其他的服务可以通过你的手机或iPhone与Android平台手机上的应用软件来完成。
你可以在任何一台电脑上登入使用云端服务,而一个朋友或同事也可以登入并和你一起在一样的文件上工作。Google Docs只是能够协同操作的一种办公室型态云计算服务。有些服务甚至还可以让人在全球不同的地点登入服务并同时在一样的文件上工作。
云计算也许听起来很棒,但是它还是有一些隐忧的,也是你在使用时必须要考虑的地方。正如同开放源代码阵营名人Richard Stallman指出的,你的资料是在第三方厂商的手上,而且是在你控制以外的。
最有可能遇到的问题是安全性,鲜少有公司会想窃取你的资料并做出无耻的网站设计,但最好还是研究一下各种网站和网络服务,找一些可信赖的专家推荐的。
幸运的是,一点点常识和一些简单的正确电脑操作练习可以将这类安全性失误的影响降至最低,避免将你的机密资料放在云端上,如果你真的放了,例如利用网上银行时,避免在网咖、学校或图书馆内的公用电脑上进行,也别太随便给出自己真正的联络资料,避免每个帐号都使用同一个密码,就算只更改一个字母也好。
云计算第二个主要问题是可能暂时故障导致你无法使用某项服务,你可能把资料放在某个网站上而这个网站却因服务器故障导致某一段时间无法进入,Twitter就因偶发性挂点而恶名昭彰,每次它的网站挂掉时就会出现“掉落的鲸鱼”图案, 更糟的是,你有可能因此而遗失全部的资料。
最糟、最糟的情况是,当你想搜索自己在云端上的资料时却发现“情空中万里无云”,如果你想野餐这当然是好事,但如果是这个为你保管资料的公司突然关门大吉,可就大事不妙了。
如果你还没有备份自己的资料,你真的应该开始备份了。如果你不信邪,用iTunes就好了,但如果你信邪而且开始备份这些资料,就一直备份下去吧...想想要把全部的CD都跑过一次要花上多少时间(如果你还保有它们的话),更别提那些你借来的CD或是已经购买的MP3。
想像一下明早你醒来时发现它们全部不见了,至少你还有音乐可以听,但如果遗失的是你的生日或婚礼或在瑞典穿着日本浴衣驾驶拖拉机的照片,那可能反而是件好事。
对于到底什么是云计算,至少可以找到100种解释。目前广为接受的是中国云计算专家咨询委员会副主任、秘书长刘鹏教授给出的定义:“云计算是通过网络提供可伸缩的廉价的分布式计算能力。”
从技术上看,大数据与云计算的关系就像一枚硬币的正反面一样密不可分。大数据必然无法用单台的计算机进行处理,必须采用分布式计算架构。它的特色在于对海量数据的挖掘,但它必须依托云计算的分布式处理、分布式数据库、云存储和虚拟化技术。
云计算是一种商业计算模型,它将计算任务分布在大量计算机构成的资源池上,使用户能够按需获取计算力、存储空间和信息服务。
这种资源池称为“云”。“云”是一些可以自我维护和管理的虚拟计算资源,通常是一些大型服务器集群,包括计算服务器、存储服务器和宽带资源等。云计算将计算资源集中起来,并通过专门软件实现自动管理,无需人为参与。用户可以动态申请部分资源,支持各种应用程序的运转,无需为繁琐的细节而烦恼,能够更加专注于自己的业务,有利于提高效率、降低成本和技术创新。云计算的核心理念是资源池,这与早在2002年就提出的网格计算池(Computing Pool)的概念非常相似。网格计算池将计算和存储资源虚拟成为一个可以任意组合分配的集合,池的规模可以动态扩展,分配给用户的处理能力可以动态回收重用。这种模式能够大大提高资源的利用率,提升平台的服务质量。
之所以称为“云”,是因为它在某些方面具有现实中云的特征:云一般都较大;云的规模可以动态伸缩,它的边界是模糊的;云在空中飘忽不定,无法也无需确定它的具体位置,但它确实存在于某处。之所以称为“云”,还因为云计算的鼻祖之一Amazon公司将大家曾经称为网格计算的东西,取了一个新名称“弹性计算云”(Elastic Computing Cloud),并取得了商业上的成功。
这里描述的云的建立过程和结构,只是一种比较普通和容易理解的形式。由于技术的不同、实现方式的不同,各家云的实现方式和结构会有很大的不同。但是,一些基本的概念是相同的,其共同的核心要点包括:
一定要有资源池。把分散的计算资源集中到大的资源池里,以方便统一管理和分配。例如前面讲的D所管理的资源池。
按需分配、自助服务。用户实际消耗多少资源,就被分配多少资源;用户对自己得到的资源能够自助管理。例如前面讲的“机房”。
灵活的资源变化。随便撤掉一台硬件的电脑,其上面的信息和活动会自动转移到别处去;随便增加一台电脑,其资源会随时添加到资源池里去。所有这些增减,用户根本意识不到。例如前面讲的“配载调配和平衡”。
一定要有记账系统。用户消耗了多少资源,如何给这些资源计费,系统有详尽的信息采集和报告,以便对用户收费(即使是免费,也得有详细的记账)。例如前面提到用户输入信用卡,就是以记账为前提。
在组建云的技术上,说到底,就是用软件产品(如前面提到的C和D,并通过监控程序)来管理、组织、和分配经过抽象或虚拟的硬件计算资源。除了个别企业用自己的技术建设、和服务外,现在常见的云技术提供者主要有:VMware、微软、Citrix、和OpenStack等。前两者是完全的商业产品;Citrix公司在监控程序上采用的是开源的Xen;OpenStack则完全是开源免费的,它的监控程序主要采用开源的KVM和Xen,也可以是其它的开源软件。
按照服务的对象和范围,云可以分为三类:
私有云:建一个云,如果只是为了单位(企业或机构)自己使用,就是私有云。就前面提到的“机房”而言,每个“机房”只是为本单位的不同部门、或不同用途而设立的。
公众云:如果云的服务对象是社会上的客户,就是公众云。前面提到的“机房”可以是任何社会上的企业、单位、或个人。Amazon公司的AWS是现在世界上最大的公众云。其它公众云提供商还有Google、Salesforce、苹果的iCloud等等。
混合云:如果一个云,既是为单位自己使用,也对外开放资源服务,就是混合云。有时,把两个或多个私有云的联合,也叫混合云。
“云计算”的五大特点
大规模、分布式“云”一般具有相当的规模,一些知名的云供应商如Google云计算、Amazon、IBM、微软、阿里等也都拥能拥有上百万级的服务器规模。而依靠这些分布式的服务器所构建起来的“云”能够为使用者提供前所未有的计算能力。
虚拟化云计算都会采用虚拟化技术,用户并不需要关注具体的硬件实体,只需要选择一家云服务提供商,注册一个账号,登陆到它们的云控制台,去购买和配置你需要的服务(比如 云服务器,云存储,CDN等等),再为你的应用做一些简单的配置之后,你就可以让你的应用对外服务了,这比传统的在企业的数据中心去部署一套应用要简单方便得多。而且你可以随时随地通过你的PC或移动设备来控制你的资源,这就好像是云服务商为每一个用户都提供了一个IDC(Internet Data Center)一样。
高可用性和扩展性那些知名的云计算供应商一般都会采用数据多副本容错、计算节点同构可互换等措施来保障服务的高可靠性。基于云服务的应用可以持续对外提供服务(7*24小时),另外“云”的规模可以动态伸缩,来满足应用和用户规模增长的需要。
按需服务,更加经济用户可以根据自己的需要来购买服务,甚至可以按使用量来进行精确计费。这能大大节省IT成本,而资源的整体利用率也将得到明显的改善。
安全网络安全已经成为所有企业或个人创业者必须面对的问题,企业的IT团队或个人很难应对那些来自网络的恶意攻击,而使用云服务则可以借助更专业的安全团队来有效降低安全风险。