2022 开源之夏 | Curve 邀你与中国存储软件共成长,赢万元奖金
Curve 社区携手开源之夏,邀你开展有趣而精彩的开源之旅,直面社区大咖,积累项目经历,摘取丰厚奖金,共同推进我国基础软件自主创新
2022 年,Curve 社区再次加入系列高校开源活动 —— 开源之夏第三届。开源之夏是由中国科学院软件研究所 “开源软件供应链点亮计划” 发起并长期支持的一项暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展,培养和发掘更多优秀的开发者。
Curve 是网易数帆自主设计研发并开源的高性能、易运维、全场景支持的云原生软件定义存储系统,包括 CurveBS 和 CurveFS 两个子项目,分别提供块存储和文件存储两种能力。数字经济的发展和国际形势的演变迫使我国加强基础软件自主创新,但相比当前国内数据库软件玩家众多,专注存储软件者寥寥无几,网易数帆自主开源 Curve,既是强化开源基础设施支撑数字业务创新所需的能力,也希望推动我国存储软件的蓬勃发展。Curve 社区加入本届开源之夏,正是基于这一出发点。
参与本次活动,你将获得与身经百战的云原生存储软件导师零距离学习交流的机会,完成项目并贡献给社区后,你还有机会获得开源之夏活动奖金和结项证书。欢迎同学们扫描下图二维码或点击活动链接报名申请。
活动链接:https://summer-ospp.ac.cn/#/org/orgdetail/2994d279-0fba-47b1-9247-7b5ab604f1a8/
项目详情
本届开源之夏,Curve 社区申报了四个项目,题目类型覆盖了打包工具、挂载权限、容量分配、运维工具等多个领域的开发,难度等级为三基础一进阶,均由社区资深维护者带队完成。具体如下:
项目 1:PFS 和 CurveBS 客户端 deb/rpm 打包工具
PFS (Polar FileSystem) 是阿里开源的针对 PolarDB 数据库的文件系统,我们希望通过 PFS+CurveBS 打造云原生数据库的存储解决方案,当前 CurveBS 已支持 PolarDB for PostgreSQL。虽然 PFS 和 CurveBS 对接、联调已经完成,但仍缺乏在物理机上简易的部署方式。本项目目标为支持 PFS+CurveBS 的客户端在 CentOS7/8、Debian9/10、Ubuntu 打包,项目难度为基础,要求参与者熟悉基本的 Linux 命令,脚本语言 Bash script ,以及 FPM 打包工具使用。
项目 2:CurveBS 支持读挂载和写挂载及读写权限转换
CurveBS 对接 PFS 时支持了单个卷的共享挂载,但是并没有限制各个挂载点的读写权限,可能会出现多个挂载点同时写数据,从而导致数据错乱、丢失、不一致等问题。本项目将弥补此项缺失,支持在挂载卷时指定读写权限(读写、只读),以及挂载后读写权限的动态变更。本项目难度为进阶,参与项目需要熟悉 C++ 软件开发,gtest 等相关单元测试框架,以及 inux 上的编译、调试命令,如 GCC、GDB 等。
项目 3:CurveBS 分配容量策略和运维工具容量统计优化
容量管理是存储软件的基础功能之一,本项目任务包括分配容量不足则阻止创建新卷、分配卷容量使用的容量值与统计工具统一,及 CurveBS 运维工具显示容量命令优化等。项目难度为基础,需要熟悉 C++ 软件开发, gtest 等相关单元测试框架,以及 Linux 上的编译、调试命令,如 GCC、GDB 等,此外要了解 CurveBS 的单机部署及集群容量管理方式。
项目 4:为 CurveAdm 增加显示服务监听端口
CurveAdm 是为提高 Curve 系统易用性而打造的工具,主要用于部署和运维 CurveBS/CurveFS 集群。本项目要求实现 CurveAdm 查看服务状态时显示服务监听的所有端口,保证现有 CurveAdm 功能正常。项目难度为基础,参与者需要了解 Curve/CurveAdm 项目的部署使用,了解 Go 语言 及 Docker 基本操作。
项目收益
深度了解前沿的云原生分布式存储技术架构与知识;
了解开源社区运作模式与参与方式,增加开源社区贡献经验;
通过一线大厂导师提前感受企业级软件开发流程;
增强技术能力与项目经历,提升个人事业起点;
开源之夏官方发的奖金和证书,普通和进阶难度对应奖金分别为税前金额 8000 元和 12000 元。
如何参与
学生可根据兴趣自由选择项目,撰写项目申请书提出申请,并在社区导师的指导下开展项目开发贡献代码至社区(可以通过活动页面找到项目对应导师的联系邮箱与导师进行深度沟通)。主办方将根据学生结项情况、参与度、代码贡献等发放奖金、证书。
活动页面:https://summer-ospp.ac.cn/#/org/orgdetail/2994d279-0fba-47b1-9247-7b5ab604f1a8/
申请资格
本活动面向年满 18 周岁在校学生。
暑期即将毕业的学生,只要在申请时学生证处在有效期内,就可以提交申请。
海外学生可提供录取通知书 / 学生卡 / 在读证明证明学生身份。
相关文档
了解 CurveBS 的单机部署,能完成相关的功能测试:
https://github.com/opencurve/curveadm/wiki
了解部署工具 CurveAdm 的设计:
https://github.com/opencurve/curveadm/wiki/overview
了解 Curve 测试框架:
https://github.com/opencurve/curve/blob/master/docs/cn/gtest.md
Curve 代码仓库:
https://github.com/opencurve/curve
开源之夏活动里程碑
* 默认时区为北京时间(UTC+8)
2022 开源之夏 | Curve 邀你与中国存储软件共成长,赢万元奖金的更多相关文章
- 参与开源之夏 x OpenTiny 跨端跨框架 UI 组件库贡献,可以赢取奖金🏆!这份《OpenTiny 开源贡献指南》请收好🎁!
大家好,我是 Kagol. 近期有几位朋友在 OpenTiny 技术交流群里询问我们在开源之夏(OSPP)的项目,希望能提前做一些准备工作. 这里给大家简单介绍下开源之夏. 开源之夏是由中科院软件所& ...
- 开源yYmVc项目,邀您和我一起开发:)
打算在闲暇时间写个MVC框架,要有什么功能一步一步边写边加,仿照struts 2 和 spring mvc.假设您感兴趣的话,能够私密我,给您加入key:). 欢迎您的到来~ 项目放在基于GIT的CS ...
- Kagol:2022年最值得推荐的前端开源文章
大家好,我是 Kagol,Vue DevUI 作者,从2020年开始一直专注于前端开源组件库的建设,在前端开源组件库.开源社区运营方面积累了一些经验,2020年主要的创作也是围绕前端组件库和开源两个主 ...
- 微服务开源生态报告 No.2
通常,我们都会通过在 GitHub 上订阅邮件列表,来了解社区动态.这一次,我们联合以上各开源项目的负责人,发布「微服务开源生态报告」,汇集各个开源项目近期的社区动态,帮助开发者们更高效的了解到各开源 ...
- “开源、共享、创新” 2020 中国.NET开发者大会小结
大会的新闻稿在2020年12月31日正式发布:开源·共享·创新|2020年中国.NET开发者大会圆满收官! , 本文是这篇新闻的补充性文章,仅代表个人对大会的各方面分享内容的一个小结. 在2019年上 ...
- Java学习笔记:2021年12月31日下午-2022年1月1日上午
Java学习笔记:2021年12月31日下午-2022年1月1日上午 摘要:主要记录了计算机的电气构成,学习Linux系统的原因以及关于Linux以及相关操作的基础知识. 目录 Java学习笔记:20 ...
- Curve 文件存储在 Elasticsearch 冷热数据存储中的应用实践
Elasticsearch在生产环境中有广泛的应用,本文介绍一种方法,基于网易数帆开源的Curve文件存储,实现Elasticsearch存储成本.性能.容量和运维方面的显著提升. ES 使用 Cur ...
- 【云享专刊】开源遇上华为云,OCP架构变身“云原生框架”
摘要:华为云DTSE团队出品云原生改造指南,助力轻松实践OCP上云. 本文分享自华为云社区<[云享专刊]开源遇上华为云,OCP架构变身"云原生框架">,作者:华为云社区 ...
- 2014 年最热门的国人开发开源软件 TOP 100 - 开源中国社区
不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是 ...
- 2014 年最热门的国人开发开源软件TOP 100
不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外认可.中国是开 ...
随机推荐
- phpstorm对laravel开发的配置
摘自:https://www.cnblogs.com/Richard-Tang/p/10218178.html phpstorm对laravel开发的配置 一.安装Laravel 1.下载comp ...
- Android Media Framework - 开篇
前言 Android Media是一块非常庞大的内容,上到APP的书写,中到播放器的实现.封装格式的了解,下到编解码组件的封装.VPU API的了解,每块内容的学习都需要我们下很大的功夫.此外,我们还 ...
- NET框架下如何使用PaddleOCRSharp
打开VSIDE,新建Windows窗体应用(.NET Framework)类型的项目,选择一个.NET框架,如.NET Framework 4.0,右键点击项目,选择属性>生成,目标平台设置成X ...
- 7.16考试总结(NOIP模拟17)[世界线·时间机器·weight]
车如流水马如龙,花月正春风 前言 其实,一开始 T1 是看错了题的,我以为是无向图来着,就想直接搞到每一个联通块的完全图,然后减去总边数就好了. 发现错误之后,码了个暴力,想得 40pts 来着,没想 ...
- 程序员面试金典-面试题 16.25. LRU缓存
题目: 设计和构建一个"最近最少使用"缓存,该缓存会删除最近最少使用的项目.缓存应该从键映射到值(允许你插入和检索特定键对应的值),并在初始化时指定最大容量.当缓存被填满时,它应该 ...
- work12
day12 一.请简述集合框架. 集合是单列集合类的根接口,用于存储一系列符合某种规则的元素,它有两个重要的子接口,分别是java.util.List和java.util.Set.其中,List的 ...
- 说一下 session 的工作原理?
session 的工作原理是客户端登录完成之后,服务器会创建对应的 session,session 创建完之后,会把 session 的 id 发送给客户端,客户端再存储到浏览器中.这样客户端每次访问 ...
- 3个线程分别交替输出xyz字符,输出10遍
一位群友分享的**公司面试题 3个线程分别交替输出xyz字符,输出10遍 public class XYZ implements Runnable { private static AtomicInt ...
- 短链接口设计&禁用Springboot执行器端点/env的安全性
短链接口设计 //短链接服务 跳转方式,实现短链接转长链接的请求. @GetMapping("/{code}") public String redirectUrl(@PathVa ...
- CentOS7系统搭建web环境 php&nginx&pgsql
环境:VMware.CentOS-7-x86_64-DVD-2009.iso.nginx-1.26.1.php-7.2.0.postgresql-12 php最好安装对应php项目所需版本,否则会出现 ...