开源之夏是什么?
开源之夏是由“开源软件供应链点亮打算”发动并长期反对的一项暑期开源流动,旨在激励 在校学生 积极参与开源软件的开发保护,促成优良开源软件社区的蓬勃发展,造就和挖掘更多优良的开发者。
流动联结国内外各大开源社区,针对重要开源软件的开发与保护提供我的项目工作,并面向寰球高校学生凋谢报名。
学生可在本流动中自主抉择感兴趣的我的项目工作进行申请,并在当选后取得该开源我的项目资深维护者(社区导师)亲自领导的机会,实现我的项目并奉献给社区后,参加学生还将取得开源之夏 流动奖金 和结项证书。
我的项目简介
作为阿里巴巴开源的一款帮忙分布式应用疾速进行打包、交付和运行的解决方案,sealer 能够通过把分布式应用及其数据库中间件等依赖项一起打包来解决简单利用的交付问题。
sealer 构建进去的产物咱们称之为集群镜像,集群镜像里内嵌了一套残缺的 Kubernetes + 容器,它们双剑合璧,解决了分布式应用的交付一致性问题。
sealer 曾经进入 CNCF sandbox。
点击查看「开源夜聊第一期:聊聊 sealer 开源背地的故事」:https://www.bilibili.com/vide…
题目简介
sealer runtime 扩大,反对 k3s k0s
sealer 架构分成两大块,Build 模块与 Run 模块,其中 Run 局部次要分成三层,最底层对接各种基础设施,如裸服务器,各种私有云,Runtime 层面反对具体的 K8s 实现,如 kubeadm k3s k0s 等,一旦扩大了 runtime 意味着用户构建镜像的时候就能够这样:
FROM k3s:latest
COPY mysql .
CMD kubectl apply -f mysql
应用 sealer build -t k3s-with-mysql:latest . 构建一个在 k3s 下面的 mysql 集群镜像运行时只须要:sealer run 3s-with-mysql:latest 即可运行一个 k3s 并且启动 mysql 集群本次题目次要是实现 runtime 的 interface:
type Interface interface {Init(cluster *v2.Cluster) error
Upgrade() error
Reset() error
JoinMasters(newMastersIPList []string) error
JoinNodes(newNodesIPList []string) error
DeleteMasters(mastersIPList []string) error
DeleteNodes(nodesIPList []string) error
GetClusterMetadata() (*Metadata, error)
UpdateCert(certs []string) error
}
制作并提供 k3s k0s 的根底镜像,使用户能够通过 sealer 一键应用 k3s k0s
参加要求
- 相熟 docker/kubernetes 等技术
- 有肯定的源码浏览能力
- 相熟 golang
我的项目地址:https://github.com/sealerio/s…
导师邮箱:zhongyi.fht@alibaba-inc.com
点击“此处”即可报名申请 sealer 开源之夏!