Skip to content

2022腾讯犀牛鸟开源人才培养计划-OpenCloudOS #30

Closed
@tencent-adm

Description

腾讯犀牛鸟开源人才培养计划
Tencent Rhino-bird Open-source Training Program
2021年腾讯首次发布“犀牛鸟开源人才培养计划”,通过打造面向高校学生的开源课程和开源实践培养方案,培育开源人才、普及开源文化,助力开源人才生态的发展。5月30日,2022年度“犀牛鸟开源人才培养计划”正式启动,由教育部计算机类专业教学指导委员会、教育部软件工程专业教学指导委员会、教育部电子信息类专业教学指导委员会、中国信息通信研究院作为联合指导单位,腾讯开源和腾讯高校合作联合主办,培养计划涉及开源基础课程、开源进阶研学和开源项目实战三大阶段培养。本届培养计划除了来自腾讯的热点开源项目之外,还有来自清华大学、北京大学、中国人民大学与腾讯基于联合实验室平台合作开展的开源项目,涉及技术领域包括人工智能、大数据、前端应用、基础平台(操作系统)、数据库等。

各位同学报名即可参加线上开源系列课程,学习开源知识,对话学界及产业界大咖。其中入选开源项目实战的学生将在导师的一对一指导下,利用暑假开展编程实战。

更多项目信息请看官网:https://opensource.tencent.com/summer-of-code

项目简介
OpenCloudOS的子项目fuse-extent的目标是提升fuse用户态文件系统的可靠性和性能。
OpenCloudOS的子项目lkp-extent的目标是构建基于容器的自动部署和测试框架,其会作为云原生OS的一部分。

项目导师
彭浩,OpenCloudOS社区子项目负责人

导师寄语
OpenCloudOS是一个中立开放的社区,其中基于Linux内核开源了多个独立项目。如nettrace,fuse-extent,lkp-extent,RustKvm等等,欢迎同学们积极加入开源项目的开发。

编程任务
1.高级任务: lkp-extent容器测试框架(https://github.com/OpenCloudOS/lkp-extent)
lkp-server/lkp-node 两个组件的框架开发。lkp-extent容器测试框架需要一个server node(lkp-server)和若干个client node(lkp-node)。server node会进入监听模式,client node会根据自身的服务器配置相继接入对应的server node。lkp-node上运行包含了lkp测试套件(https://github.com/OpenCloudOS/lkp-tests)的容器。

  1. 低级任务 lkp-extent实现一系列命令集合(https://github.com/OpenCloudOS/lkp-extent)在lkp-server中执行命令,从而对指定的lkp-node发起命令,使lkp-node对包含lkp测试套件的容器执行相应命令。这些命令包含:

查看有哪些待测服务器

$ lkp-ctl list # 返回client-node的nodeid,arch类型和内存等信息

更新测试组件

$ lkp-ctl update # 更新本机的测试组件,包括lkp-extent和lkp两个repo

$ lkp-ctl update all # 更新所有node的测试组件

$ lkp-ctl update -n nodeid #更新id号是nodeid的node的测试组件

下发测试指令

$ lkp-ctl run testcase # 所有node都执行testcase

$ lkp-ctl -n nodeid run testcase # id是nodeid的服务器执行testcase

$ lkp-ctl -n nodeid -c containerCount run testcase # id是nodeid的服务器开containerCount个容器,并在容器里面执行testcase

下发测试集

$ lkp-ctl run testcluster # testcluster是一堆testcase的组合,用于进行多组合测试

$ lkp-ctl -n nodeid run testcluster # 对指定测试机进行组合测试

$ lkp-ctl -n nodeid -c contaierCount run testcluster # 对指定测试机进行容器内的组合测试

推送自定义测试case

$ lkp-ctl push testscript # 向所有测试机推送名字为testscript的脚本

$ lkp-ctl -n nodeid push testscript # 向指定测试机推送名字为testscript的脚本

收集测试结果

$ lkp-ctl result # 收集所有测试机的测试结果

$ lkp-ctl -n nodeid result # 收集指定的测试机的测试结果

3.中级任务 fuse-extent (https://github.com/OpenCloudOS/fuse-extent)
基于fuse-extent的fuse-crash-recovery的当前基于libfuse的实现,实现一个不依赖libfuse的实现。

联系导师
彭浩:flyingpeng@tencent.com

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions