开源软件如何在云计算时代生存
在过去十年中,开源一直是云计算创新的支柱,从Linux和MySQL到Kubernetes,Spark,Presto和MongoDB。但最近的事态发展为开源背后的商业模式带来了阴霾,IT行业现在必须采取行动,以避免扼杀其最大的创新源泉。以下是Apache Hive共同开发这和前项目负责人,Qubole公司首席执行官Ashish Thusoo对此的看法:
作为Apache Hive的共同创建者和前项目负责人,我知道激励对于开源生态系统蓬勃发展至关重要。我们需要激励独立开发人员为开源项目贡献自己的时间和技能,更要激励而那些具有创业思维的人围绕这些开源项目创立公司,以帮助开源项目蓬勃发展。
公共云可能会破坏这些激励因素,因为它改变了开源的业态。大型云提供商很容易将开源项目搬上云端并将其作为托管服务提供。但如果他们对开源社区没有相应的回馈,就是一种“不劳而获”,同时削弱了开源发展的动力。
修改开源许可证并非良方
正如当下AWS面临的指控,给开源项目改个名放在云端获利,同时又没有对相应社区的持续回报。这促使包括Confluent,Redis Labs和MongoDB在内的供应商开发新的许可证,阻止大型商业云提供商将其代码作为托管服务提供。
我不认为这是正确的方法。这些新的许可证尚未得到开源计划(Open Source Initiative)的认可,并且它们有可能使开源软件使用权变成一坑浑水。正如软件自由保护协会主席Bradley M. Kuhn 所说,软件自由应该“对所有人来说都是平等的,无论他们是否是商业行为者。”开源已经蓬勃发展,因为这个原则一直受到尊重,任何混乱可能会阻止人们进入社区。
我同情那些寻求保护其业务的开源公司。一个开源项目得到企业的广泛应用,除了需要尽独立开发人员做出最大努力外,还需要相关创业公司的资源和管理工作足够稳定。Linux在企业市场中起飞,是因为有Red Hat和IBM全力支持它。Kubernetes的发展速度同样飞快,因为它得到了谷歌的支持。虽然有例外,但如果一个开源项目背后有一家公司,就更有可能在大型企业中取得成功。
以我自己的公司为例,我们提供了一个基于云的数据分析平台,该平台严重依赖Spark,Presto和Hive等开源组件。与此同时,我们通过两个项目回馈社区,成为优秀的开源公民,一个是Sparklens,一个提高Spark应用程序性能的框架,另一个是RubiX,一个加速Presto和Spark性能的缓存框架。
在云中提供开源软件有助于这些项目吸引更多用户和开发人员。但是,如果商业云提供商获利不公平,则会对下一代企业家创立开源公司以及投资者的支持产生抑制作用。
那么,出路在哪里?
首先,这需要于大型云提供商进行公平竞争。我不认为AWS是“邪恶的”,他们的行为是他们认为最符合他们商业利益的行为。但他们需要认识到,从长远来看,破坏开源对AWS自身产生的伤害,不亚于最可怕的竞争对手。开源倡导者应该继续提高对这个问题的认识,并对云提供商施加公众压力,促使他们采取负责任的行动。我们已经看到证据表明这种压力可以奏效。
我们还需要一个开源的“道德规范”,由社区,包括贡献者、项目负责人和开源组织(如OSI和Apache)制定。因为目前企业和个人可以100%符合开源许可证,但仍然以损害社区的方式行事。开源社区还需要制定一个广泛认可的道德准则,来避免那些有害的做法,使公司和个人对他们的行为负责。
最后的主旨是竞争。确实,大型云提供商在吸引客户方面具有优势; 他们被CIO视为“简单”和“安全”选择。但最终客户总是会选择最好的软件和支持,因此如果开源公司能够为他们自己的发行版提供更好的功能和更好的支持,他们将能说服客户选择他们自己的产品。
我已经概述了社区可以采取的改善局势的行动,我们每个人都可以采取行动,让云提供商了解我们的担忧,进而影响市场趋势。我们要敦促企业通过反馈表和产品论坛向社区提供特定功能。这些云提供商的开发人员也在开源论坛中闲逛,并希望成为社区的一员,让他们了解社区的这些要求会给变革带来更大的动力。
这个挑战没有简单的解决方案,但我们需要认真对待。开源模型并不脆弱,不会在一夜之间崩盘。但是,如果商业云提供商继续利用开源项目而不给予回馈,那么他们就会削弱开源蓬勃发展的激励机制。杀死产下金蛋的鹅并不符合他们的利益,也肯定不符合开发商和客户的利益。
第一时间获取面向IT决策者的独家深度资讯,敬请关注IT经理网微信号:ctociocom
除非注明,本站文章均为原创或编译,未经许可严禁转载。
相关文章: