原文:http://www.hengtianyun.com/download-show-id-170.html
云的概念由来已久,追溯最早的理念,是为了将计算能力从技术限制中解除,希望能够集合大规模计算机的计算能力,而不是受限于物理机的性能瓶颈。后来伴随着硬件技术的发展,软件架构的改善,人们发现云能够应用于更多的业务场景,带来更多的好处,云的概念也逐渐变得详细和丰富。
现在提到云,人们都会想到一系列的好处,如配置灵活,成本降低,高可靠性,弹性扩展。业界已有的案例都充分证实了云的优点,市场对于云的接受度也在逐步上升,所以各类云产品和云平台越来越多,国外的公有云有亚马逊AWS、微软Azure、谷歌GAE等,国内的公有云有阿里云、新浪SAE、腾讯云、百度云、青云等,而私有云有红帽子、VMware、DELL、HP、IBM、恒天云等等。对于企业来讲,第一个摆在面前的问题就是应该选择公有云还是私有云?
首先了解一下公有云和私有云的概念:
Ø 私有云:是为一个客户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。该公司拥有基础设施,并可以控制在此基础设施上部署应用程序的方式。私有云可部署在企业数据中心的防火墙内,也可以将它们部署在一个安全的主机托管场所。私有云可由公司自己的 IT 机构,也可由云提供商进行构建。在此“托管式专用”模式中,像 Sun ,IBM这样的云计算提供商可以安装、配置和运营基础设施,以支持一个公司企业数据中心内的专用云。此模式赋予公司对于云资源使用情况的极高水平的控制能力,同时带来建立并运作该环境所需的专门知识。
Ø 公有云:公有云通常指第三方提供商为用户提供的能够使用的云,公有云一般可通过 Internet 使用,可能是免费或成本低廉的。这种云有许多实例,可在当今整个开放的公有网络中提供服务。外部用户通过互联网访问服务,并不拥有云计算资源。其意义在于能够以低廉的价格,提供有吸引力的服务给最终用户,创造新的业务价值,公有云作为一个支撑平台,还能够整合上游的服务(如增值业务,广告)提供者和下游最终用户,打造新的价值链和生态系统。
业界有种说法,云计算就应该像是电力服务一样,用户随用随到,用多少付多少。那么公有云和私有云在这种概念上的区别,就类似于公共用电和企业自发电一样,都有各自的应用场景。公有云和私有云最大的区别就在于云的所有权,也就是公用还是自用,两者在部署、应用、维护等方面上的差异也由此而来。
下面我们将从成本、安全、应用迁移集成以及服务质量保证等方面来分析公有云和私有云各自的特性。由于公有云的提供商众多,主要以阿里云作为代表来进行特性的比较。浙江省电子政务云作为地方政府性的专有云平台,具有一定的专用性和封闭性,但是据笔者了解其底层也是采用阿里云的飞天平台,故在某种程度上也是类似于阿里云。
成本
对于小企业和初创企业,选择私有云就意味着需要进行一次性的大量投资来采购软、硬件设备,并且在后期仍然需要投入人力来进行部署和维护,由于之前并无IT基础设施建设方面的经验,投入私有云无疑会是一个成本较高的选择。阿里云的收费则是按使用性能收费,如一台标准的四核16G服务器,存储为1T,用户需要付出每月1108元即可使用。企业不需要关心运营等事宜,可以有效的节省成本。
对于大企业或者有丰富IT基础运营经验的企业,如果之前的IT基础设施已经相当完善,选择阿里云无疑意味着对之前投资的IT资产的浪费,并且要额外在阿里云上重新购买一次计算资源。另外现有IT系统需要做调整或迁移以适应公有云,这无疑也是巨大的成本,选择私有云则只需考虑一次部署成本。
安全
在企业自建的环境中,企业对硬件和服务流程有着完全的控制,包括数据中心的位置、谁可以访问和使用这些基础设施等。但是如果采用第三方的云计算服务,企业就会考虑安全和法规方面的担心。除了国家法律规定外,一些企业还需要遵循相应的行业和上市企业所需要遵循的规定和标准。不是所有的服务提供商都能够满足这些法规遵循要求,因此企业在权衡使用时一定要详细评估这些方面。
另外对于只使用阿里云ECS的用户,企业和系统之间的数据传输必须通过internet连接进行,而不是企业内部网络,对于业务系统设计来讲,就必须考虑加强这部分的安全措施,否则容易出现数据被盗取的情况。
在防范攻击方面,阿里云在应用和系统的安全防护上有着一般小公司无法相比的技术优势,并且有着云盾这类成熟的产品。但必须注意的一点是,除了针对公司的APT攻击外,对于一般的攻击者来讲,阿里云是更优先的攻击研究目标,因为在公有云上发现的任何一个通用型漏洞,都可能会影响到在公有云上运行的所有应用。
现有应用集成
阿里云能够提供支持大规模的PaaS服务,如关系型数据库RDS或者对象存储服务OSS,这些功能对于海量的业务需求是非常好的资源支撑,然而这往往意味着用户不得不耗费精力来改变自己的应用架构以使用这些服务,更糟糕的情况是用户目前的应用服务无法与公有云对接,如阿里云RDS目前只支持MySQL或SQLServer数据库的迁移,而并不支持Oracle数据库,这就意味着使用Oracle的用户必须改变自己的数据库底层设计,需要先迁移至MySQL或SQLServer,然后再迁移至RDS,否则无法使用阿里云。对于业务系统来讲,不论是改变部分接口或者是做架构重构来迁移至阿里云,都意味着大量的开发和测试成本,并且会给业务服务可靠性带来风险。
私有云对于已有的业务系统相对宽容,它可以根据客户需求定制底层服务,从而适应业务系统。对于业务系统来讲,迁移至私有云基本不需要任何的应用层面的改动,对于客户或者开发部门来说,迁移是透明而不被察觉的。所以在现有应用集成方面,私有云对公有云有着绝对的优势。
数据可靠
当企业数据迁移至阿里云时,数据必须使用阿里云的存储,也就意味着所有的数据都将存储在阿里云之上。即使阿里云宣称数据是得到了极大的保护,有着99.999%的可靠性,但用户仍然无法掌握数据具体的冗余和灾备策略,也无法掌控具体的冗余数据和备份数据的存储情况。如ECS的快照功能,虽然可以设置对虚拟主机磁盘的自动快照备份,然而用户却无法控制保留哪个快照。
在私有云上,用户并不一定可以得到比公有云更健壮的冗余和备份策略,这取决于用户的需求和预算,换句话说,冗余和灾备策略对于私有云用户而言是公开的,企业可以掌控自己的业务数据,备份数据以及具体的策略,用户可以根据具体的业务现状选择适合自己的策略,而不是遵循公有云提供商的统一标准。
业务服务质量
对于业务系统来说,服务质量直接影响客户体验,而计算资源和网络资源则是服务质量的强力支撑。在阿里云,企业通过购买计算资源和网络资源来运行业务系统,但由于企业实际并不能掌控这些资源,而是通过与阿里云之间的SLA控制,那么企业为客户提供的业务服务质量就等于要打一个折扣,带宽和计算能力都不能得到100%的保障。
在私有云上,所有的物理资源,包括计算资源和网络资源都属于企业自身,企业可以根据业务发展来调整私有云的规模,并且在私有云上的一切资源都是可保障专门服务于业务系统,这一切都是透明的。
可伸缩
可伸缩是云的一个特性,主要目的是在业务规模较小时自动缩减降低成本,在业务规模变大时增加资源来支持业务。由于阿里云背后有着私有云无法相比的计算资源池,阿里云可以满足对于计算能力有着强烈变化的业务。而私有云虽然仍有可伸缩的特性,但是在降低成本或者是满足业务膨胀的支持方面表现的不如阿里云迅速快捷。
在阿里云的成功案例内,我们可以看到非常多的类似案例,如CCTV5的赛事转播,只有当出现热门赛事时,CCTV5才需要租用服务器进行网络直播,而在淡季时,就可以退掉阿里云服务。所以阿里云非常适合初创企业或者是短期的工程。当企业业务增长时,可以迅速调整资源来支撑业务,或者当项目结束后,资源可以被释放回阿里云。而在这两种情况下,自己采购搭建私有云要么会跟不上业务发展,要么会造成设备浪费。
总结
阿里云和私有云因为特性的不同,有各自的优势和劣势。而这些优势和劣势往往会根据企业自身的情况和需求发生变化。我们可以大概总结出阿里云和私有云的适用范围如下:
l 可预见有剧烈业务需求变动的初创企业或工程,应选择阿里云以充分利用阿里云的资源伸缩性。
l 无现有IT系统包袱并且没有IT背景或运维经验的企业,应选择阿里云来规避运营成本。
l 业务需求稳定并且对服务质量有较高要求的企业,应选择私有云来保证服务质量。
l 有成熟IT系统并且运维经验丰富的企业,应选择私有云来减少设备和人力浪费,并且能够显著降低现有系统迁移的成本和风险。
对数据安全和可靠性有特别需求的,应选择私有云来定制化自己的数据安全/冗余/灾备策略。