在Richard Stallman撰写GNU通用公共许可证(简称为GPL)的25年间,自由及开源软件(FOSS)已经在计算领域普及开来:Linux、Apache HTTP服务器以及MySQL等遍布在全球各地的很多企业中。而现在开源也越来越多的应用于云计算中。
“在构建云计算方面,开源毫无疑问是根基,”负责云业务产品、管理软件和Red Hat企业MRG(即时消息、实时和网格平台)的Red Hat产品管理总监Byran Che表示,“你可以看一看服务器领域的市场份额情况,对于传统数据中心,大约有70%运行在Windows平台上,而大约30%运行在Linux平台。而当你看看人们在云环境中建立应用程序所选择的操作系统时,你会发现这个数字完全反过来了。”
理由很简单,Che表示:对于云计算这样一个新的开始,企业需要从零构建出一个全新的架构,而开源毫无疑问为企业提供了最好的价值。
成本并不是开源模式在云领域占有一席之地的唯一原因,Che还指出,开源能够围绕一个项目建立一个社区,从而推动快速创新。
“这是开源真正的价值所在,”他表示,“亚马逊、谷歌、Facebook,以及建立所有这些云应用程序、基础设施和服务的所有人,都是使用开源来完成的。事实上,使用开源软件是实现他们所需要的创新水平的唯一出路。他们不可能等待其供应商走完整个开发周期。”
SaaS是否违反了自由软件原则?
但是开源究竟在云环境中发挥了什么作用?Stallman声称,云计算(特别是软件即服务SaaS)不能被定义为自由软件。
“SaaS和专有软件会导致相似的有害后果,但是其因果机制是不同的,”Stallman在《波士顿评论》上发表文章写道,“对于专有软件,原因是你拥有和使用的是难以更改或者无法更改的副本,而对于SaaS,原因是你使用的是你没有的副本。”
“很多自由软件支持者认为SaaS的问题将会通过为服务器开发自由软件而解决,”他补充说,“从服务器运营商的角度来看,服务器上的程序最好是自由的,因为如果这些软件属于专有软件,他们的所有者将有权控制其服务器。这对于运营商而言并不公平。但是如果服务器上的程序是自由的,从SaaS的影响来看,这也不能保护服务器的用户,因为自由使用权给了运营商,而不是给了用户。”
Stallman的论点扎根于自由软件和开源软件之间的哲学理念差异。Stallman表示,开源运动是一种注重让源代码可用的开发方法。而另一方面,自由软件则对用户应该如何与其软件进行交互提出了一个道德立场。
对于Stallman而言,自由软件必须为用户提供四项基本自由权:
“释放服务器软件源代码确实能够造福于社区:技术纯熟的用户可以设置类似的服务器,也许还可以改变软件,”Stallman写道,“但是这些服务器都不能让你获取对计算的控制权,除非它是你的服务器。其余的都将是SaaS。SaaS始终给予你服务器运营商的权利,对此唯一的补救办法是不要使用SaaS!不要使用别人的服务器对你提供的数据做自己的计算。”
与此同时,开源世界推出了各种服务:基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务以及数据存储即服务(DaaS)。
网界网