自Richard Stallman撰写GNU通用公共许可证以来的25年中,自由和开放源码软件(FOSS)在计算领域已变得无处不在:Linux、ApacheHTTP服务器、MySQL等在全球许多企业中都能找到。开源现在也越来越支持云计算。
“开源是建立云技术的基础,”Red Hat的产品管理高级主管Byran Che说,负责云操作产品、管理软件和红帽企业MRG(Red Hat的消息传递、实时和网格平台)。如果你看一下服务器领域的市场份额,就像你看传统数据中心一样,大约70%运行在Windows平台上,大约30%运行Linux。当您查看人们选择在云中构建应用程序的操作系统时,这一比率会完全改变。”2020欧洲杯预赛
理由很简单,Che说:有了一个全新的开始,您就可以从头开始构建一个全新的体系结构,而开源会给您带来最大的价值。
他说:“你无法达到亚马逊或谷歌的规模,支付许可费。
成本并不是开源模型在云计算领域的唯一优势。Che还指出,有能力围绕项目创建社区,从而推动快速创新。
“这就是开源真正擅长的,”他说亚马逊、谷歌、Facebook,所有人都在构建云应用、基础设施和服务,他们都是在开源平台上做的。事实上,他们使用的是开源软件,这是他们能够以所需的速度进行创新的唯一途径。他们迫不及待地等待他们的供应商完成开发周期。”
SaaS是否违反了自由软件原则
但开源到底在云中做什么呢?对史泰尔曼来说,自由软件具有强烈的政治色彩(他鄙视开源这个词),他声称云计算——特别是软件即服务(SaaS)——在定义上不可能是自由的。
“SaaS和专有软件会导致类似的有害结果,但其因果机制是不同的,”Stallman在文章发表于2010年的《波士顿评论》。“使用专有软件的原因是,你拥有并使用了一份难于或非法更改的拷贝。使用SaaS的原因是你使用的是你没有的副本。”
他补充道:“许多自由软件的支持者认为,通过为服务器开发自由软件,SaaS的问题将得到解决。”为了服务器运营商的利益,服务器上的程序最好是免费的;如果它们是专有的,那么它们的所有者有权控制服务器。这对接线员不公平,对你毫无帮助。但是,如果服务器上的程序是免费的,那就不能保护您作为服务器的用户免受SaaS的影响。他们给接线员自由,但不给你自由。”
史泰尔曼的争论根源于自由软件和开源软件之间的哲学分歧。Stallman说,开源运动是一种开发方法论,其实际重点是使源代码可用。另一方面,自由软件运动促进了一种伦理立场,即用户应该如何与他们的软件进行交互。
对于史泰尔曼来说,自由软件必须为用户提供四项基本自由:
一。按你的意愿运行程序的自由
2。学习和更改源代码的自由,使其实现您的愿望
三。重新分发精确拷贝的自由
四。重新分发修改版本副本的自由
虽然开源定义和自由软件定义几乎完全相同,但在云计算方面,它们似乎分道扬镳。
“发布服务器软件源代码确实有益于社区:有适当技能的用户可以设置类似的服务器,也许可以更改软件,”Stallman写道但是这些服务器都不能让你控制你在上面的计算,除非它是你的服务器。剩下的都是SaaS。SaaS总是让你服从于服务器运营商的权力,唯一的补救办法是,不要使用SaaS!。不要使用别人的服务器对您提供的数据进行自己的计算。”
与此同时,开源世界正在整个云堆栈(基础设施即服务(IaaS)、平台即服务(PaaS)、SaaS、数据存储即服务(DaaS))和云管理中狂热地工作。
开放云的性质
Che说,Red Hat相信开放云,他说开放云有七个定义属性:
1.它是开源的。“这是你建立的基础,”切说。
2。它基于协作开发。”“项目周围必须有一个可行的、独立的社区,”他说这种动态必须存在,否则它只是一家发布源代码的私有公司。”
三。它基于开放的标准和开放的格式,而这些标准和格式并没有绑定到专有技术中。
四。它给你自由使用你的知识产权。
5个。它为用户提供了基础设施的选择。他们可以选择基础设施提供商和云提供商。
6。它有开放的API。”“它必须是可插入和可扩展的,”切说它不能被你从盒子里拿出来的东西所限制。”
7号。它必须可以移植到其他云上。它不能把你锁定在一个特定的卖家身上。
Che说:“我们需要一个开放的云的一个方面是让你能够跨不同的云具有互操作性和可移植性。”“我应该能够管理跨越所有这些不同技术的混合云。”
开源云以避免供应商锁定
在互操作性和可移植性方向上迈出的一大步是阿帕奇德尔塔克劳德,这是一个由Red Hat在2009年发起的项目,随后为ApacheSoftwareFoundation做出了贡献,并在2010年获得了顶级项目(TLP)的地位。有了Deltacloud,Apache软件基金会正试图提供一个解决方案,这个问题还没有完全解决,但在未来几年可能会变得紧迫:云锁定。
“最大的挑战是云计算中发生了太多的事情,以至于用户都在忙着找出如何最好地使用云计算,因此锁定对他们来说仍然不是一个大问题,”Red Hat的首席软件工程师、Apache Deltacloud项目主席David Lutterkort说这在人们的名单上还没有那么高。”
Deltacloud是一个API,它抽象了云之间的差异,允许使用单个API管理不同IaaS云中的资源。它本质上可以作为大量云的包装器来实现,从而使云计算的用户不必处理每个云的API的细节。
标准机构也联合起来创建开放和可互操作的标准。2009年,领先的标准开发组织(SDO)成立云标准协调,旨在协调各种sdo开发云标准的工作。成员包括云安全联盟、云标准客户委员会、分布式管理工作组(DMTF)、欧洲电信标准协会(ETSI)、国家标准与技术研究所(NIST)、开放网格论坛(OGF)、对象管理组(OMG)、开放云联盟(OCC),结构化信息和标准促进组织(OASIS)、存储网络行业协会(SNIA)、开放集团、零售技术标准协会(ARTS)和TM论坛。
Lutterkort也是DMTF的董事会成员,DMTF正在开发一个名为Cloud Infrastructure Management Interface(CIMI)的标准,它将创建一个任何云都可以使用的标准API。
风神计划是另一个前瞻性的开源项目,由Red Hat驱动,本质上是寻求构建一个开源云代理。作为一个独立的项目,Aeolus提供了一组统一的工具,用于跨云构建和管理有组织的虚拟机组。它包括以下内容:
- Aeolus Conductor提供了一种向用户提供云资源、管理用户对这些资源的访问和使用以及控制云中用户实例的方法
- Aeolus Composer,它提供了一种从通用模板构建特定于云的图像的方法,这样用户可以使用兼容的图像自由选择云
- Aeolus Orchestrator,它提供了一种以有组织的方式管理实例集群的方法,使用户能够在单个云或跨多个云上自动调出一组不同的实例,并对它们进行配置和相互介绍
- Aeolus HA Manager,它提供了一种使云中实例或实例集群高度可用的方法
红帽并不是唯一一个促成这片开阔云层的人。Rackspace Cloud和NASA已经在OpenStack IaaS云计算项目上掀起了波澜,该项目也通过Apache软件基金会提供。OpenStack项目的任务是为任何组织提供在标准硬件上创建和提供云计算服务的能力。
托尔·奥拉夫斯鲁德是CIO.com. 跟着他@ThorOlavsrud。
这个故事“为什么开源是云创新的关键”最初由首席信息主管 .