云的概念由来已久,追溯最早的理念是为了将计算能力从技术限制中解除,希望能够集合大规模计算机的计算能力,而不是受限于物理机的性能瓶颈。后来伴随着硬件技术的发展,软件架构的改善,人们发现云能够应用于更多的业务场景,带来更多的好处,云的概念也逐渐变得详细和丰富。

现在提到云,人们都会想到一系列的好处,如配置灵活、成本降低、高可靠性、弹性扩展等。业界已有的案例都充分证实了云的优点,市场对于云的接受度也在逐步上升,所以各类云产品和云平台越来越多。国外的公有云有亚马逊AWS、微软Azure、谷歌GAE等;国内的公有云有阿里云、新浪SAE、腾讯云、百度云、青云等;而私有云有红帽子、VMware、DELL、HP、IBM、恒天云等等。对于企业来讲,第一个摆在面前的问题就是应该选择公有云还是私有云?

首先了解一下公有云和私有云的概念:

- 私有云是为一个客户单独使用而构建的,因而提供对数据、安全性和服务质量的最有效控制。该公司拥有基础设施,并可以控制在此基础设施上部署应用程序的方式。私有云可部署在企业数据中心的防火墙内,也可以将它们部署在一个安全的主机托管场所。私有云可由公司自己的IT机构,也可由云提供商进行构建。在此“托管式专用”模式中,像Sun,IBM等云计算提供商可以安装、配置和运营基础设施,以支持一个公司企业数据中心内的专用云。此模式赋予公司对于云资源使用情况的极高水平的控制能力,同时带来建立并运作该环境所需的专门知识。

- 公有云通常指第三方提供商为用户提供的能够使用的云。公有云一般可通过Internet使用,可能是免费或成本低廉的。这种云有许多实例,可在当今整个开放的公有网络中提供服务。外部用户通过互联网访问服务,并不拥有云计算资源。其意义在于能够以低廉的价格提供有吸引力的服务给最终用户,创造新的业务价值。公有云作为一个支撑平台还能够整合上游的服务(如增值业务、广告)提供者和下游最终用户打造新的价值链和生态系统。

业界有种说法,云计算就应该像是电力服务一样,用户随用随到用多少付多少。那么公有云和私有云在这种概念上的区别就类似于公共用电和企业自发电一样都有各自的应用场景。公有云和私有云最大的区别就在于云的所有权也就是公用还是自用两者在部署、应用、维护等方面上的差异也由此而来。

公有云和私有云各有优缺点,具体选择需要根据企业的实际需求来决定。在成本方面,私有云需要一次性投入大量资金购买软、硬件设备,并且后期还需要投入人力进行部署和维护,成本较高;而公有云则是按使用性能收费,可以有效节省成本。在安全方面,企业自建的环境中可以对硬件和服务流程进行完全控制,但使用第三方云计算服务时需要考虑安全和法规方面的担忧。另外对于只使用阿里云ECS的用户,企业和系统之间的数据传输必须通过internet连接进行,而不是企业内部网络,这也需要加强安全措施。

下面我们将从应用迁移集成、服务质量保证等方面来分析公有云和私有云各自的特性。由于公有云的提供商众多,主要以阿里云作为代表来进行特性的比较。浙江省电子政务云作为地方政府性的专有云平台,具有一定的专用性和封闭性,但是据笔者了解其底层也是采用阿里云的飞天平台,故在某种程度上也 是类似于阿里云。

阿里云能够提供支持大规模的PaaS服务,如关系型数据库RDS或者对象存储服务OSS,这些功能对于海量的业务需求是非常好的资源支撑。然而这往往意味着用户不得不耗费精力来改变自己的应用架构以使用这些服务,更糟糕的情况是用户目前的应用服务无法与公有云对接。

私有云对于已有的业务系统相对宽容,它可以根据客户需求定制底层服务,从而适应业务系统。对于业务系统来讲,迁移至私有云基本不需要任何的 应用层面的改动,对于客户或者开发部门来说,迁移是透明而不被察觉的。所以在现有应用集成方面,私有云对公有云有着绝对的优势。

当企业数据迁移至阿里云时,数据必须使用阿里云的存储,也就意味着所有的数据都将存储在阿里云之上。即使阿里云宣称数据是得到了极大的保 护,有着99.999%的可靠性,但用户仍然无法掌握数据具体的冗余和灾备策略,也无法掌控具体的冗余数据和备份数据的存储情况。如ECS的快照功能,虽 然可以设置对虚拟主机磁盘的自动快照备份,然而用户却无法控制保留哪个快照。

在私有云上,用户并不一定可以得到比公有云更健壮的冗余和备份策略,这取决于用户的需求和预算。换句话说,冗余和灾备策略对于私有云用户而言是公开透明可定制化的。企业可以掌控自己的业务数据、备份数据以及具体策略;用户则可以根据具体业务现状选择适合自己的策略。

对于业务系统来说,服务质量直接影响客户体验,而计算资源和网络资源则是服务质量的强力支撑。在阿里云上运行业务系统时由于企业实际并不能掌控这些资源而只能通过与阿里云之间签订服务级别协议(SLA)来进行控制。因此企业为客户提供的业务服务质量就等于要打一个折扣;带宽和计算能力都不能得到100%保障。

在私有云上,所有的物理资源,包括计算资源和网络资源都属于企业自身。企业可以根据业务发展来调整私有云的规模,并且在私有云上的一切资源都是可保障专门服务于业务系统,这一切都是透明的。可伸缩性是云的一个特性,主要目的是在业务规模较小时自动缩减降低成本,在业务规模变大时增加资源来支持业务。由于阿里云背后有着私有云无法相比的计算资源池,阿里云可以满足对于计算能力有着强烈变化的业务。而私有云虽然仍有可伸缩的特性,但是在降低成本或者是满足业务膨胀的支持方面表现不如阿里云迅速快捷。

在阿里云的成功案例内,我们可以看到非常多的类似案例,如CCTV5的赛事转播,只有当出现热门赛事时,CCTV5才需要租用服务器进行网络直播,而在淡季时,就可以退掉阿里云服务。所以阿里云非常适合初创企业或者是短期的工程。当企业业务增长时,可以迅速调整资源来支撑业务,或者当项目结束后,资源可以被释放回阿里云。而在这两种情况下,自己采购搭建私有云要么会跟不上业务发展,要么会造成设备浪费。

总结来说,阿里云和私有云因为特性的不同,有各自的优势和劣势。而这些优势和劣势往往会根据企业自身的情况和需求发生变化。我们可以大概总结出阿里云和私有云的适用范围如下:

- 可预见有剧烈业务需求变动的初创企业或工程,应选择阿里云以充分利用阿里云的资源伸缩性。

- 无现有IT系统包袱并且没有IT背景或运维经验的企业,应选择阿里云来规避运营成本。

- 业务需求稳定并且对服务质量有较高要求的企业,应选择私有云来保证服务质量。

- 有成熟IT系统并且运维经验丰富的企业,应选择私有云来减少设备和人力浪费,并且能够显著降低现有系统迁移的成本和风险。

- 对数据安全和可靠性有特别需求的,应选择私有云来定制化自己的数据安全/冗余/灾备策略。