如何管理 OpenStack 这样规模的项目

还没有读者喜欢这个。
Organizations coming together like a puzzle

Opensource.com

开源项目的治理方式与其支持的功能、运行速度或底层代码同样重要。有些开源项目有所谓的“终身仁慈独裁者”。其他项目则是企业项目的延伸,虽然是开源的,但其目标和代码仍然由管理它的公司主导。当然,还有成千上万的项目是由个人或一小群人编写和管理的,对于他们来说,治理问题不如确保 项目可持续性 重要。

控制很重要。控制太少,项目会因缺乏方向而停滞不前。控制太多,或者方向不对,项目可能会失去支持或因小问题而分叉,可能导致社区分裂。虽然并非所有的分叉都是坏事,但当分叉是因为开发者无法相处和解决分歧时,这可能不是一件好事。

那么,如何管理一个汇集了全球数百家公司数千人工作的全球项目呢? 对于这样的大型项目,基金会模式有时更有意义,以确保公平和公正的代表性,同时保持项目步入正轨,以满足每个使用者的需求。OpenStack 使用了基金会模式,并帮助创建了一个治理结构,防止任何一方获得过多的控制权。
 
OpenStack 并非一直以这种方式运行。它最初是 NASA 和 Rackspace 之间的合作,当时这两个组织意识到他们在朝着相似的目标努力,并且从合作中受益。Rackspace 认识到他们创造的价值,以及更广泛的参与将带来更快的开发和更通用的项目,因此创建了 OpenStack 基金会 作为一个非营利组织来管理该项目,由对开放云基础设施有相似兴趣的广泛公司联盟来管理。它始于 2011 年,并在 2012 年 9 月 正式移交了管理权

OpenStack 的治理结构允许广泛的组织和个人参与,并细分为各个委员会,以确保合适的人负责合适的部门。OpenStack 基金会主要由三个委员会组成——董事会、技术委员会和用户委员会——在其结构中为许多不同类型的贡献者提供了角色。董事会负责监督财务决策和长期战略,而技术委员会——不出所料——提供技术方向,用户委员会则帮助确保项目满足在实际中使用该软件的组织的需求。

但 OpenStack 实际上并不是一个单一的项目,它是由几个紧密集成的项目组成的,这些项目共同提供云服务。这些项目中的每一个都由 项目团队负责人 (PTL) 领导,PTL 负责维护每个开发周期的计划。OpenStack 内的其他关键职能(例如文档、质量保证和发布周期管理)本身不是软件组件,也选举 PTL。由于 OpenStack 采用每年两次的发布计划,这些领导者也每年选举两次,以监督其各自组件的一个周期。

所有这一切都将我们带到明天,4 月 11 日,这将标志着最近一次 PTL 选举的结束。随着 OpenStack 的 Icehouse 版本即将完成,计划于 4 月 17 日发布,以及 Juno 设计峰会 即将在即,这些选举将有助于确定未来六个月的工作方向。恰如其分的是,PTL 选举的选民是每个项目的贡献者。您最近发布的版本中有代码吗?那么您就有资格参与。

在正在选举 PTL 的 21 个项目中,有 6 个存在竞争。虽然有些人可能将竞争视为令人不安的分歧迹象,但实际上它们是该过程的健康组成部分。它们确保项目朝着贡献者希望看到的方向发展,每个项目都由被认为有能力胜任这项工作的人管理(而成为项目团队负责人绝对是一项工作),并且它们有助于就即将到来的发布周期中需要完成的工作进行深入讨论。OpenStack 社区中的每个人都应该很高兴看到结果,并了解未来六个月的发展方向。

有关 PTL 选举或候选人的更多信息,请参阅 OpenStack wiki


User profile image.
Jason 从 2013 年到 2022 年是 Opensource.com 的员工和红帽员工。此个人资料包含他在那段时间与工作相关的文章。其他贡献可以在他的个人帐户中找到。

4 条评论

Jason,文章写得很棒!我目前活跃于我的第二个“大型”全球开源项目(不包括 Opensource.com),担任负责项目治理的社区委员会的董事会成员。

你的文章给了我一些新的见解,但也证实了我们在治理方面已经应用的一些东西。看到 OpenStack 如何在其基金会内组织这一点也很有趣。特别吸引我的是技术委员会和用户委员会。

我同意你的观点,某种形式的控制是必要的,尤其是在将此类项目提升到企业级时。项目面临的挑战将是在控制级别、在正确的职能/角色中安排有能力的人员以及他们在组织层面应用这种治理的形式之间找到平衡。

文章写得很棒,OpenStack 非常强大

确实,很好的高层次概述。将治理结构与 Apache 和 Eclipse 这两个相关组织进行比较会很有趣。

Apache 的治理严格以功绩为基础,并且独立于直接的企业影响。在项目独立性和 149 多个顶级项目的广度之间,Apache 允许在整体基金会结构内为项目提供最大的自治。

Eclipse 似乎非常密切地反映了 OpenStack:是否有人可以讨论 OpenStack 的 TC 和项目负责人与 Eclipse 中相同角色的相对责任?从表面上看,感觉非常相似,但我想知道在哪些职位是通过个人功绩获得的,而哪些职位本质上是公司购买的席位方面是否存在轻微的转变。

另外,虽然我已经找到了董事会的会议纪要,但 TC 是否有用于会议纪要和电子邮件列表的主页?通过论坛或公开存档的列表尽可能多地展示治理过程是吸引新的感兴趣的贡献者的关键方法。

Shane,这些都是很好的问题,这样的比较将是一篇很棒的后续文章。(也许我可以在从峰会中恢复过来后进行研究!)

关于您最后一个关于 TC 透明度的问题,这些链接可能会有所帮助
* 邮件列表: http://lists.openstack.org/pipermail/openstack-tc/
* 会议纪要: http://eavesdrop.openstack.org/meetings/tc/

Creative Commons License这项工作已获得 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.