跳转到: 导航, 搜索

实习想法


此页面不再积极维护。

在着手处理此页面上的任何实习想法之前,请联系列出的导师,以了解该想法是否仍然相关。

您还可以查看最新的 Outreachy 提案:https://www.outreachy.org/apply/project-selection/#openstack

最后,您可以查看当前的“上游投资机会”,其中列出了社区感兴趣但没有所有者的项目:https://governance.openstack.org/tc/reference/upstream-investment-opportunities/

要提交新的想法,请考虑创建一个新页面并使用 模板:实习想法(该页面上提供了说明),并且您可以查看一个 示例想法页面 的样子。使用此类模板创建的页面列在 分类:实习想法 上。


实习想法列表

OpenStack 基金会有多种实习来源,从 OutreachyGoogle 暑期实习 和其他机会。此页面收集了候选实习生可以从事的想法。

申请者可能以前从未从事过 FLOSS,并且具有不同水平的能力。由于我们有不同的项目,请在此处添加可以由经验不足的贡献者、开发人员或其他领域(营销、沟通、图形设计以及对 OpenStack 有用且包含新成员的任何内容)完成的想法。

编码

OpenStack 作为虚拟 Kubernetes 节点

实现一个虚拟 Kubernetes 节点,允许在 OpenStack 上运行容器/pod。申请从事此工作的学生将学习 Zun 和 Kubernetes,并将致力于为 Zun 实现一项全新的功能,其中包括不仅编码,还包括测试和文档工作。有关要求的更多信息,请参见 https://github.com/virtual-kubelet/virtual-kubelet/issues/22

难度
主题 OpenStack Zun, Kubernetes
所需技能 Python Go
额外技能
导师 hongbin 在 IRC 频道 #openstack-zun @ freenode 上
状态 正在寻找候选人。
项目


改进 Cinder 集成以用于 Docker 容器

为 Docker 容器添加 Cinder 卷多挂载支持。愿意承担此任务的学生将学习 Zun 和 Cinder。在 Ocata 周期中,Cinder 中实现了一个新的卷附加流程。我们希望 Zun 利用这个新的流程。实现这一点需要学生不仅贡献代码,还要贡献该功能的测试和文档。请查看 https://blueprints.launchpad.net/zun/+spec/cinder-volume-multi-attach 以获取更多详细信息。

难度
主题 OpenStack Zun, OpenStack Cinder, Docker
所需技能 Python
额外技能
导师 hongbin 在 IRC 频道 #openstack-zun @ freenode 上
状态 正在寻找候选人。
项目


帮助实现 Cinder 中的通用备份驱动程序支持

目标是创建一个通用的备份驱动程序,可用于将任何 Cinder 卷后端转换为备份的目标。这样,我们就不需要为支持的后端实现特定的备份驱动程序。选择此实习任务的学生将学习 Cinder,并被要求贡献该功能的测试和文档。请参阅 https://review.openstack.org/#/c/504099/1/specs/queens/generic-backup-implementation.rst 以获取更多详细信息

难度
主题 OpenStack Cinder, 存储
所需技能 Python
额外技能
导师 jungleboyj 和 e0ne 在 IRC 频道 #openstack-cinder @ freenode 上
状态 正在寻找候选人。
项目


消除未缓存镜像的冗余下载

启动新虚拟机所需的时间量的一个重要组成部分是后端存储将正在使用的镜像下载到主机所需的时间。为了加快速度,Glance 具有可选的缓存中间件,对于某些后端(特别是 OpenStack Swift),可以显着提高性能。问题是缓存有点笨拙,在有人想要从同一镜像启动 1000 个 VM 的情况下,每个请求都会发现镜像未缓存,并将启动来自存储后端的下载,从而导致性能严重下降。

有一些关于改进缓存中间件的复杂性在 Glance 规范文档中讨论:https://specs.openstack.org/openstack/glance-specs/specs/untargeted/glance/duplicate-downloads.html。除了编码之外,您还将接触到从设计阶段到实施的开源社区的工作,因为您的第一个任务将是重新向 Glance 社区提出规范,以便对其进行审查和重新批准。(不用担心,这不会拖延太久,因为它已经获得批准;它未针对特定目标,因为原始开发人员被重新分配到另一个项目。)这是一个有趣的项目,它将涉及几个 Glance 组件:API 服务器、缓存中间件和 glance_store 库。当然,您还会添加良好的测试。

难度 低到中等(您不需要以前的 OpenStack 经验,但您需要有足够的自发性来学习 Glance 的组件以及它们如何交互)
主题 Glance
所需技能 Python
额外技能 通用的分布式系统知识
导师 jokke_ 在 IRC 频道 #openstack-glance @ freenode 上
状态 正在寻找候选人。
项目



将 Nova 中的旧版通知转换为新的版本化框架

帮助将遗留 Nova 通知转换为新的版本化框架。申请此任务的学生将学习 Nova 和 oslo.messaging 库,并将帮助将 Nova 的遗留通知转换为使用已建立的框架的适当版本化 API。有关更多详细信息,请参见此页面 https://wiki.openstack.org/wiki/Nova/VersionedNotificationTransformation

难度
主题 OpenStack Nova
所需技能 Python
额外技能
导师 gibi 在 IRC 频道 #openstack-nova @ freenode 上
状态 正在寻找候选人。
项目


策略测试

随着即将到来的系统范围工作和降落在 Queens 中,我们需要准备好重新思考 test_v3_protection.py 测试模块。该模块负责确保策略正在执行它们应该执行的操作。由于我们正在添加一些新的系统范围组合,这应该会导致难以维护和理解的测试爆炸。

  • 我们能否找到一种灵活地测试不同策略案例的方法
  • 重构当前覆盖范围
  • 与 Patrole 集成
难度
主题 OpenStack Keystone
所需技能 Python
额外技能
导师 hrybacki 和 lbragstad 在 IRC 频道 #openstack-keystone @ freenode 上
状态 正在寻找候选人。
项目


Flask 支持

我们有一个自制的 WSGI 实现,而有合适的框架可以完成这项工作。我们可以通过迁移到框架并放弃自制实现来减少需要维护的轮子。我们已经谈论了一段时间迁移到 Flask。好处将是减少对自制实现的维护。

难度
主题 OpenStack Keystone
所需技能 Python
额外技能
导师 待定 (TBA)
状态 正在寻找候选人。
项目


原生 SAML

目前,联合身份验证需要使用 Apache 插件来处理 SAML 处理。我们希望尝试一种可以进入 keystone paste 管道以根据规范处理 SAML 的中间件。这将使联合身份验证更容易为部署者配置,并且能够减少当前在联合身份验证中使用的映射(断言 -> env 变量,env 变量 -> keystone 映射)。

难度
主题 OpenStack Keystone
所需技能 Python
额外技能
导师 cmurphy 和 rodrigods 在 IRC 频道 #openstack-keystone @ freenode 上
状态 正在寻找候选人。
项目


使 keystone 成为一个功能齐全的 IdP

目前,keystone 可以充当 IdP,但仅在非标准的内部设计的身份验证流程中,而不是使用 WebSSO。我们可以实现在 keystone 中剩余的 WebSSO 标准。https://bugs.launchpad.net/keystone/+bug/1470205 这可能是此项目或 Native SAML 项目的一个很好的预热 bug:https://bugs.launchpad.net/keystone/+bug/1641625

难度
主题 OpenStack Keystone
所需技能 Python
额外技能
导师 待定 (TBA)
状态 正在寻找候选人。
项目


OpenStack Manila 与 OpenStack CLI (OSC) 的集成

OpenStackClient(也称为 OSC)是 OpenStack 的命令行客户端,它将 Compute、Identity、Image、Object Store 和 Volume API 的命令集集成到一个具有统一命令结构的 shell 中。OSC 的主要目标是在 OpenStack 中提供统一的 shell 命令结构和描述操作的通用语言。应将 Manila 基本命令添加到 OSC 客户端。这将有助于用户提供描述 OpenStack 中操作的统一 shell 命令结构。

难度
主题 OpenStack Manila
所需技能 Ruby
额外技能 Python
导师 enriquetaso 和 vkmc 在 IRC 频道 #openstack-manila @ freenode 上
状态 正在寻找候选人。
项目 2019 年 5 月至 8 月的 Outreachy 候选人。