首页 > 焦点要闻 > CentOS社区如何发展以加速创新?

CentOS社区如何发展以加速创新?

2022-07-29 11:02  

基本信息

面向行业
应用领域
 
主持人:王兴宇,Linux中国创始人
Brian Exelbierd, 开源布道师,社区和开发者业务策略师
Thomas Oulevey, CentOS社区委员会成员
 
近日,红帽公司搭台,邀请CentOS社区负责人与中国开发者进行沟通,畅谈了CentOS停止维护,以CentOS Stream替代的后CentOS时代,对开源服务器操作系统市场所带来的影响,并解答了业界和用户的一些误解和迷茫。
 
CentOS社区委员会成员Thomas Oulevey从2012年就在CentOS社区工作,从基础架构相关的工作开始,到后来负责组织CentOS Dojo的活动,致力于帮助人们更好地融入社区。
 
开源布道师,社区和开发者业务策略师Brian Exelbierd 从早期的企业级Linux的被动使用者,后来投入到企业级Linux社区的服务工作已经有六七年时间,现在在红帽负责RHEL的业务战略,另一个身份则是CentOS社区董事会的红帽联络员。
 
Linux中国创始人王兴宇是Linux中国开源社区的创始人,曾经担任过中国电信的高级专家,近年来主要从事开源文化和开源技术的公益推广工作。
 
王兴宇:首先请回顾一下两年前CentOS停服的背景,以及历史上CentOS和Red Hat的关系、CentOS在Red Hat的产品线中的定位。
 
Brian:CentOS项目与红帽有一个非常有趣的历史渊源。大约7年前,红帽收购了CentOS这个品牌,雇佣了CentOS项目的工程师。目的是给虚拟化等某些特定高级开发者提供一个平台,并鼓励这些项目(虚拟化、其他工具)能够以开源项目的方式健康发展。
 
随着时间的推移,上层项目越来越依赖于底层操作系统,红帽发现CentOS正好可以作为这个底层操作系统,并孵化其他项目,借此可以在做RHEL开发的同时,也去做RHEL之上其他组件(虚拟化、工具等)的开发,与广大社区开发者一起促进底层操作系统与上层组件的协调发展,因此在3年前提出CentOS Stream。
 
需要说明的是,红帽对CentOS始终保持着一臂距离,这就意味着红帽不去控制CentOS所做的事情,只为其提供更多的资源,除非遇到一些挑战比如法律相关的风险。
 
从红帽产品线的视角来看,CentOS不是红帽的产品,红帽不提供对CentOS的支持,不对CentOS提供保证,也不对CentOS使能。也就是说,CentOS对红帽的产品很重要,是因为红帽所有的工作都是基于开源的代码库,所以需要这个项目作为工作地来产品化这部分代码。例如,在虚拟化领域,红帽的RHEL就是基于CentOS Stream而制作出来的。
 
Thomas:我从CentOS社区的角度回答一下这个问题。我大概三年前加入CentOS董事会,当时大家在讨论如何提高对CentOS社区的参与度问题,如何给用户更好的使用体验,最后大家认为CentOS Stream是未来一个正确的努力方向,通过这种模式可以提高CentOS的社区参与度。CentOS Stream的模式对社区版的企业级操作系统发展(CentOS:Community Ent     erprise OS)也至关重要,总体来讲,做出这样一个决定,就是想要改善社区的参与度。
 
王兴宇:所以,这个决定是CentOS社区自发作出,而不是Red Hat企业做出的决定。在做此决定的时候,社区内部有没有反对意见?最大的反对意见是怎么样的?当时是怎么平衡反对意见的?
 
Brian:首先我们了解一下CentOS社区的治理模式对回答这个问题很重要。
 
CentOS的治理模式和很多其他开源项目的运作模式有所不同。CentOS有一个治理委员会(董事会),需要每个人都对一个新的决策达成共识才可以,只是大多数人同意,有少部分人反对,是不行的。决议必须是董事会一致的共识。我本人当时也是在对话的房间当中。不论当时谁发表了什么看法,总之最后要听董事会作为一个整体做出的一致性决议。
 
另外,现在这个董事会还在进行提名,也就是说任何人对这个职位都是可以申请的。
 
Thomas:整个社区唯一的目的是希望CentOS Stream的社区变得越来越开放,越来越好,真正实现完全意义上的开源的模式,所以在开放的讨论中当然一些人会有不同意见,但是所有董事会成员必须要达成一致意见。
 
我们从长期的角度,希望CentOS Stream代替CentOS Linux以后,在未来可以让所有人都能够感到满意,是一个非常有意思的社区,非常好的一群人可以在一起工作。至少截至目前来看,CentOS Stream模式是比之前更好,更多的人愿意向社区做出贡献,如果大家感兴趣的话,非常乐意你们可以跟我们接洽,参与讨论,我们也非常愿意把你纳入为这个社区中的一员。
 
王兴宇:把CentOS换成Stream以后贡献更多,RHEL因此变得更好,是不是可以给出一些数据来说明?
 
Thomas:我先从社区的角度回答一下。举个例子,CentOS Stream 9是RHEL 9的上游,通过CentOS Stream,你可以直接参与RHEL的开发,你可以通过bugzilla提交问题,也可以提交补丁。与你一起工作的还有很多红帽的开发者,他们会和你一起检查代码,通过RHEL的测试流程,看补丁是否满足RHEL的质量要求而最终决定是否被加入到CentOS Stream。但是整个流程是更开放了,你可以参与所有的讨论,通过CentOS Stream你可以直接参与对RHEL发展方向的讨论,在Stream里所看到的就是即将发布的RHEL。
 
Brian:我想补充的是,从红帽的角度来看,最令人激动的并不是对Stream的贡献,而是CentOS Stream中有非常强有力的SIG(特别兴趣小组),形成了CentOS项目的生态,特别兴趣小组的人们会提出很多想法,初衷并不一定和RHEL相关,更多的是与社区参与者自己相关,或者是他们希望RHEL变成的样子,红帽是以第三方观察者的身份去看这些想法如何在社区中酝酿、孵化,最终,一些好的想法会在RHEL的大版本中落地。
 
王兴宇:CentOS Linux 8去年底停止服务、Stream出现以来,有没有数据说明社区对Stream的贡献是不是更多了?
 
Brian:如果从统计学的角度来说,数据是很难拿到的。这个问题可以从两方面来看:
 
一是贡献量的衡量,现在能够看到越来越多的公司、个人他们直接参与到对社区的贡献当中,这些贡献要么最终被收录到RHEL的代码当中,要么这些讨论依然保留在SIG里面。
 
另一方面是贡献的可能性,Stream出现之前,你是没办法去贡献的,有了Stream才有了对CentOS项目贡献进而影响到RHEL的可能性。所以这不是“更多”的问题,而是“从无到有”的问题。
 
要知道,之前对于CentOS项目贡献只有两个途径:
 
第一个途径是你的代码先被上游社区接受,然后被Fedora集成,然后被RHEL集成,最后出现在CentOS里,这是一个漫长的路径;
 
第二个途径就是你必须是红帽的客户或合作伙伴,在打造RHEL的过程中,你的想法对于你的公司和红帽都是一个高优先级的事情,那么会被优先加到RHEL里,然后出现在CentOS里。
 
有了Stream实际上是有了第三个途径,你通过CentOS社区Stream项目直接把你的贡献集成到RHEL里。
 
关于数据,可以去看一下gitlab,CentOS Stream的代码日志都在那里。对于CentOS Stream 8来说,因为是处在CentOS Linux模式到CentOS Stream的模式转变的过程中,你会发现所有的贡献基本都来源于红帽。
 
但对于CentOS Stream 9来说,可以通过git log看到所有的贡献(CentOS Stream 9的代码提交日志和RHEL 9的代码提交日志是一样的),对于每一个贡献,可以去查看代码的修改轨迹、社区的讨论,bugzilla上的讨论。
 
王兴宇:去年CentOS Linux 8停止更新)以后,红帽或CentOS接到的最多反馈是什么?你们做了哪些回应?
 
Brian:因为我在红帽工作,听到的和Thomas从社区听到的可能有所不同。确实有一些人的反馈是:你们怎么敢这样做?这让我很愤怒!我们的回应是,当你冷静下来,考虑一下Fedora Linux的价值主张的时候,考虑一下CentOS Stream价值主张的时候,我们可不可以讨论一下RHEL,或者很多其他的Linux发行版,如何选择一个合适的Linux发行版。我们的客户和我们讨论的通常是RHEL,事实上我们没有通过CentOS服务我们的客户,因为我们的产品是RHEL,收到的反馈也通常是如何去影响RHEL的小版本发布,影响RHEL的小版本发布简直太难了,是不是在小版本发布时可以更多的听取广大用户的声音。
 
我们有些客户想尽早知道我们是如何在下一个小版本中修复bug的,这样他就可以早一点将他的系统和红帽操作系统做持续集成,而不必等到RHEL的下一个发布。
 
当然,早期我们也听到另一种声音,现在我有一台Linux服务器,一直使用的是CentOS Linux,现在该怎么办?我们的回答是,您可以使用免费的RHEL个人开发者版本,我们不是试图要您付费,也不是想借此扩大市场占有率,我们的目的只有一个:促进开源社区的发展,诚然这对我们的产品也有益,但出发点是促进开源社区的发展。
 
Thomas:我从社区的角度回答一下。开始我们确实听到一些抱怨或担忧的声音,比如Red Hat是不是从源头上杀死了制作CentOS的可能性,关于这点我要澄清的是,任何人都以按按照CentOS Linux的做法制作CentOS Linux,有一些人已经这样去做了,已经和我们取得了联系,并且获得了我们的帮助。这其实是大家的自由,我们不去也没有办法阻止人们去做他们想做的事情,相反,我们也欢迎大家一起到CentOS社区上来讨论,给我们反馈。
 
另一点就是关于CentOS Linux,CentOS Stream的稳定性。我自己之前大量使用了CentOS Linux,把CentOS Linux用在了开发测试环境上。从我的经验来看,CentOS Stream是稳定的。CentOS是一个社区项目,你有充分的自由去决定CentOS用在什么场景上,这可能和你的公司的决策也有关系。
 
王兴宇:做出CentOS停止服务这个决定之前,你们是否预料到如今会出现多个替代品,既有像RockyLinux、AImalinux这样的原位替代的CentOS的替代品,也有像中国的openeuler、anolis os这样的并非原位替代的,但是可以取代原有CentOS市场占有的这样一些发行版,你对这两类发行版有什么看法?
 
Thomas:坦白讲我并不是对每一个版本都特别清楚。如果是RHEL的衍生版,愿意和我们取得联系,我们很乐意提供帮助。我们是开放、开源的,所以我并不想从竞争者或者市场占有率的角度去看其他一些产品。
 
以前RHEL是怎么制作的,你可能要和红帽签了NDA才可以看到,现在你连NDA都不用签,就可以通过CentOS Stream看到非常具体、非常细节的操作。现在一切都是开放的,比起十年前想要打造一个我们的替代品更容易、更简单了,但我们一点也不怕,这是别人的自由、别人的权利,而且我们也非常希望看到这样一个发展的态势。
 
Brian:从红帽的角度来讲,我们对于其他版本没有任何看法。其实这就是开源的本质。作为一个以开源开发模式制作企业软件的公司,我们深知任何人都可以拿到这个代码做他们想做的事情,这是很cool的事情。
 
我们希望的是,如果你拿到这个代码,去添加了新的功能或修复了bug,也应该像其他人一样,将改动回馈到社区里去。我不喜欢看到有些人拿了这个代码以后自己做了一些事,一点都不想着曾经受益于的这个社区。尤其是当你发现了有一个bug怎么打补丁,绝对不要把这个当秘密一样藏着掖着,要想着开放地告诉别人,因为你是从开源社区拿到这些代码的。
 
从红帽的角度,我还想强调两点:
 
一是我们在制作RHEL的时候,更多考虑的是客户群有什么样的特殊需求、特殊场景需要满足。如果我做一个操作系统的选型,会去首先测试它是否可以满足我的应用场景。可能操作系统提供的很多功能都不是我需要的,我关注的是我需要的功能它是否可以提供。RHEL就是以这样的思路去开发的一个操作系统——心怀用户。
 
二是开源软件公司为客户提供的价值不仅是代码本身,更多的是代码之上的东西。因为代码是开源的,任何人都可以获取并使用。所以我想鼓励人们去思考,当你在选择一个操作系统的时候,最看重的他的价值是什么。因为在源代码之上有很多价值,比如解决问题的能力、服务能力。
 
至于你提到很多版本像Rocky,Alma , openEuler等等,例如Rocky在CentOS项目刚刚提出变更时就出现了,就像Thomas所说的,我们鼓励在开源领域的任何创新。
 
说到市场占有,红帽有一些内部数据,在外部,比如IDC对于Linux的市场占有率也做过一些调查,但是他们做的调查很多时候是用代理的方式来进行衡量,不是一个最真实的市场占有率数据,另外像Fedora项目中的一些数据,包含了一些终端用户的自愿参与,所以很多时候也不能拿到真正可以展示实质情况的数据,这是我对市场占有率的看法。
 
王兴宇:如果企业在自己的产品环境中要应用Stream作为基础操作系统,您这边有什么最佳实践可以分享给大家?
 
Thomas:因为我们在自己的环境中使用了CentOS Stream。我们首先要评估我们想要做的事情,特别是在一个大公司里,每个部门的诉求都不尽相同。在我们的评估中,没有看到CentOS Linux和CentOS Stream的表现有什么不一样。对很多企业来说,可能要使用一致的操作系统,满足安全要求,稳定性要求,这些对于CentOS Stream和CentOS Linux是一样的。
 
王兴宇:好的,我想知道中国的开源社区或者中国的CentOS用户对于Stream的参与程度怎么样?或者如何可以让中国的开源开发者更多参与到CentOS社区的建设中?
 
Brian:对中国社区增加关注,我百分之一万的赞同。因为我本人以前作为(Fedora)社区的架构师,就在想如何能够提高南美和亚洲这两个地区的参与度。在亚洲,尤其是中国,有很多的IT人才和精英,但我们不知道到底怎么样可以让他们参与到我们的社区的环境当中来。举一个简单的例子,社区的开发者要开会,我通勤只需要二十分钟。但是在中国想从一个城市到另外一个城市开会,遇到晚高峰的时候,回家就得用两个小时。在这种情况下,可能中国的一些社区参加者就不太愿意去参加这种社区的活动。
 
Thomas:我们刚才一直在表达开放,希望有更多的人加入,尤其是更多来自中国的开发者。刚才也说了管理委员会或者管理层现在不是正在提名候选人吗?欢迎给我们提名,只要这个人是愿意给社区进行分享,回馈社区。这样我们可以把生态系统打造的越来越完善。
 
王兴宇:好的,我也简单地提几个建议。
 
首先,CentOS在中国是有非常多的受众和认知度的。几乎在国内传播Linux的文章都会拿CentOS作为蓝本。而国外拿Ubuntu作为蓝本比较多一些。
 
其次,无论社区文化还有语言,确实都造成了中国CentOS的贡献者很难跟国际CentOS社区直接对接。所以我建议:
 
第一,CentOS国际社区可以对中国CentOS本地化的加大支持。包括像本地化翻译这类的工作可以做起来。
 
第二,一些线下社区型的(partner)也可以得到国际社区的支持。
 
第三,包括像CentOS发生的一些最新动态和社区的倡议与决策,可以及时传达给本地的社区。
 
通过这样的工作,有利于发掘出中国的开源爱好者和贡献者,参与到整个国际社区之中。这无论是对中国CentOS社区建设还是整个国际化的社区建设都是有好处的。
 
Thomas:包括语言的障碍,确实可能阻止了中国社区跟国际社区的对接和交流。我本人的母语也不是英语,要对这样一个大的国际社区做贡献可能一开始都会有点害怕。但其实在日常工作中,有时候有人说法语,一会儿又切换成英语,一开始会觉得有点别扭,参与多了就会觉得这挺好的。所以如果中国的开发者或者贡献者想要对社区做贡献,可以直接跟给我写电子邮件,如果我本人不能与你进行这样的对话,也会帮你对接到我认为的最合适的那个人。包括在本地化翻译方面,确实我们要做出更好的一些决定,因为翻译确实特别重要。我鼓励大家都可以对社区做出贡献,哪怕一开始只是一小步都没有关系。
 
Brian:我也想强调一点,CentOS社区中跟其他社区是有区别的,最大的特点是我们的很多工作是异步的。不像你参加其他的一些国际会议,需要实时做出反应。另外,CentOS社区的包容性是很高的,非常欢迎新的成员,所以只要大家再多一点勇气,手拉手一定可以把这个问题解决的非常好。
 
王兴宇:最后想了解一下关于Fedora、Stream,还有RHEL未来的发展计划是什么?
 
Brian:好的,我想从社交组织和代码两个维度来回答。
 
从社会组织的维度看:
 
Fedora的主题是如何提高对Fedora的贡献,如何使得社区更多样化;
 
CentOS Stream:和Fedora类似的是提高社区贡献和社区的多样化,另外就是发展SIG(特殊兴趣小组);
 
RHEL是进一步繁荣包括社区、合作伙伴、客户的RHEL生态。
 
从代码的维度:
 
Fedora将集成上游社区最新最好的代码,使功能最丰富,做业界的引领者;另外是面向特定的场景,做特色的发行版,如Fedora IoT, 就是面向物联网场景的Fedora操作系统。
 
CentOS Stream方面,一是RHEL稳定可靠的持续交付版,用户可以提前看到即将发布的RHEL版本;二是基于稳定的代码基础,通过社区发展SIG,在特定领域创新。
 
RHEL方面,我们面向客户的销售团队有很多关于产品的介绍,但我今天不是来为产品做广告的。红帽大中华区的同事可以给出很好的支持。
 
此外,针对从CentOS Linux转移到CentOS Stream之后,对于社区的支持工作发生了什么样的变化。Thomas总结认为其实一点都没改变。唯一不同的地方是现在有了Stream,你也有机会来提供补丁了。总之CentOS Stream使得RHEL的开发流更加开放了。
 
关于写代码的人多了,但维护人员却在减少的问题,Brian认为,当您提交一个补丁时,维护者说Yes,意味者他将永远替你维护这段代码。维护者说No,不是说彻底否定,你明天、后天依然可以提交。这未必是说明你的补丁不好,也许是维护者不完全明白你的意图,或者改动太大、涉及的面过于宽泛,在这个时候就需要和维护者有很好的沟通。对于CentOS Stream项目来说,维护人员没有减少,因为红帽有很多工程师是CentOS Stream的维护者,红帽会确保CentOS社区有足够的维护者使得优秀的代码不被遗漏。另外社区也会让优秀的维护人员有足够的时间陪家人、休假,免于奔波等后顾之忧,可以更安心做好开源项目的维护工作。
 
赞 0个人觉得赞
logo

电讯盈科企业方案有限公司

规模:1000人以上

网站: www.pccwsolutions.com.cn

电讯盈科企业方案有限公司(电讯盈科企业方案)是电讯盈科有限公司旗下的资讯科技及业务流程外包服务旗舰。提供系统开发和行业解决方案整合,IT外包服务、业务流程外包服...

粉丝2

关联信息

关于我们 | 全生命周期管理 | 服务的客户 | 版权说明 | 联系我们

公司名称:北京金誉在线伙伴文化传播有限公司    备案号:京ICP备 15026202号-1

意见
反馈
返回
顶部