共创2021:加入我们,创建一个透明的TF社区



  • 在Linux基金会主办的“LFN技术会议”上,Tungsten Fabric社区进行了一系列演讲,介绍最新的功能和未来发展方向。今天带来第二篇演讲,解析Tungsten Fabric社区的透明化机制。


    视频链接:https://v.qq.com/x/page/b32174zu7hc.html


    2020年给了每个人前所未有的反思,如果说这一年的启示是重构和改变,面对2021,我们应该以怎样的姿态,挑战变化和不确定,穿越更多的危机呢?也许开源、连接、共享,是一把通向未来的钥匙,让我们能在相互依存中共同守望。

    TF中文社区旨在架设国内开发者、用户与Tungsten Fabric国际资源之间的桥梁,设有技术委员会,以及文档工作组、社区联络工作组、行业案例工作组和基础架构工作组等机构,负责TF中文社区相应工作的开展。

    欢迎更多小伙伴加入TF中文社区,共创2021年开源SDN新的可能性。

    大家好!我叫Marek Chwal,我将和Szymon Golebiewski一起,给大家介绍Tungsten Fabric社区的信息,它也是Linux基金会旗下的项目之一。
    7e508c68-2d57-4996-8301-e35c9b2f412b-image.png
    什么是Tungsten Fabric呢?它是一个用于综合编排的开源项目,能够统一管理各种由不同组件构建的软件定义网络。组件包括SDN控制器、虚拟路由器,也包括Analytics部分需要的API、硬件集成,而且它是基于REST API的。

    接下来介绍一下Tungsten Fabric社区的主要架构或主要角色。首先是一个强大的技术指导委员会(Technical Steering Committee),负责制定顶层的架构目标,也协调整个项目的架构和技术方向。目前由7名有投票权的成员组成。
    f116e12c-557d-46af-b534-107cfc077344-image.png

    然后,我们还有发布经理(Release Manager),我很荣幸能够担任这个角色,发布经理为期一年,也是票选出来的,负责对想实现的目标设定和监督响应。

    我们还有一些子项目,也有个人的项目技术负责人(Project Technical Lead),负责处理特定的子项目,提供方向,他们从特定项目的委员会中选出。

    当然我们还有提交者(Committer)和贡献者(Contributor)。Committers是有资格提交源代码的人,因为对特定模块有很深的了解。

    这一切都要尽可能的透明化,让任何愿意加入我们的人都能得到帮助,所以如果你想成为一个贡献者,可以查看项目列表,在我们的wiki页面上构建模块列表,也可以指派人员来做。
    d2901e5e-8391-4040-9874-94a27d5cf83e-image.png
    关于项目的架构。我刚才说过有几个子项目,最主要的是Tungsten Fabric core项目,负责处理我们几乎所有模块的开发。这些模块代表了Tungsten Fabric的相关功能区,关于如何把产品划分成模块,我们进行了大量的讨论。对于每一个模块,我们也有专门的人员,他们被提名来处理特定的模块,处理特定的存储库,他们能够帮助我们,也理解所要求的变化,所以这些人被提名来提供反馈,并为所要求的变化提供批准。

    接下来是Tungsten Fabric社区发布流程的部分,我们已经开始了这个讨论,并且定义了有关这个流程的若干里程碑。
    45012fe4-cdf1-4fd7-a28c-2f34c782eb0c-image.png
    首先,M0是对于参与特定发布的简单声明,同时它也收集蓝图,蓝图是对于所要求变化的粗略描述。所以,如果有人想参与我们的发布,提供新的功能,或增加现有的功能,可以提出蓝图。蓝图将在Tungsten Fabric社区内进行讨论,负责审批的人将检查它是否合适。不需要提供完整细节,只需要一个想法就可以。

    然后我们有M1,对于M1的实现,我们希望明确定义这个新功能和现有功能之间模块之间的依赖关系,只是为了确保新的变化不会对产品产生负面影响。而且在这个里程碑中,我们也希望有这个特定变化的发布计划。这意味着要把这个想法分解成更小的部分,变成任务,以后可以跟踪的。

    关于M2里程碑内部的技术设计,我们要确定技术设计冻结(technical design freeze),意思是从设计的角度什么都不要改,当然此刻通常叫“正在开发”。

    那么到M4里程碑的时候,大约至少要有一个比较好的外部API的版本,能够开始测试的版本。M4的阶段是代码冻结(code freeze),意味着主要功能应该已经可以使用了,目前只允许修复bug。

    然后我们有几个阶段的候选版本的发布,从0到3,如果需要的话也可能会更多。所有的候选发布,都已准备好所有的功能,准备好适合创建新的分支。而这将使我们专注于核心的稳定,并为他们的部署做好准备。这就是主要的发布流程原则。
    56506697-e18b-4f19-96c9-8fc1fb0b4f69-image.png

    为了能够跟踪它,变更请求被呈现为Jira epic,为此我们在Jira看板中创建了这个看板,这只是看板的一部分,每一个里程碑都被呈现为列。所以你可以看到,我们已经开始为下一个版本工作,也就是2011的版本吗,大概有17个变化或者17个大的epic,大部分已经到了M0的状态,我相信被选中讨论的那两个很快就会完成。

    接下来,由Szymon来介绍一下文档相关的原则。
    ed6b9cb3-c768-4160-b882-bad8936073e5-image.png
    为了创造Tungsten Fabric社区的透明度,从组织文档过程本身开始,对于需要在项目中给出适当的文档,我们做了很多努力。你可以看到,我们定义了文档应该涵盖的几乎所有领域,并沿着现有的材料创建了一个适当的Jira任务,每个人都可以跟踪我们在这个领域到底在做什么。另外,我们还有我们即将到来的任务,从最大的贡献者Juniper迁移到Tungsten Fabric的文档。对于社区来说,这是一个非常重要的任务,它作为一个工具,对于整个开发、部署和安装建议等方面,给我们提供了一个非常好的基础。另外,摆在我们面前的其他重要任务是建立规则和要求。这样无论做什么都会维护项目,产品的适用性也会保持更长时间。最长期的任务是填补我们在文档中发现的所有空白。而且我们需要确保所有的东西都有很好的文档,运行一个开源项目是不能有一个失败点的。这就是为什么我们定义了这样的文档领域。
    319a2eb6-080c-4458-9027-8579ce139040-image.png

    我们认为文档不仅要包含治理(Governance),并且在社区内发生的每一个活动都应该被很好地记录和描述给现有的和任何新的参与者,这一点至关重要。这就是为什么我们的目标是记录治理、发布流程,甚至支持活动等方面的内容。

    如果你想加入,参与创建文档,可以从下面这两个链接开始:
    https://wiki.tungsten.io/
    https://jira.tungsten.io/projects/DOC/

    记录你的活动,在Jira中跟踪我们的活动。包括你想了解自Tungsten Fabric启动以来文档各个部分的真相,可以访问文档项目的wiki页面。
    815a69f8-7b33-436b-b6eb-8687a2de9502-image.png

    最后一张幻灯片,如果大家想要加入Tungsten Fabric社区,只需要做五个简单的步骤:在Linux基金会创建你的账户(myprofile.linuxfoundation.org),然后登录Jira和wiki,这样你的账户就会被填充,然后打开 tungsten.io/community 网站页面,在那里你会发现所有的链接,比如slack频道等。加入这些频道,你可以认识创造这个伟大社区的人们,当然也可以开始自己的贡献。


    视频链接:https://v.qq.com/x/page/b32174zu7hc.html



Log in to reply