CinderPikePTGSummary
简介
此页面包含在佐治亚州亚特兰大 2017 年 2 月 22 日至 2 月 24 日期间的 Pike PTG 期间讨论的主题摘要。
完整的 etherpad 和所有相关注释可以在 此处 找到。 etherpad 还包含指向我们会议的 YouTube 录制的链接。
星期三, 2017年2月22日
如何记录决策并稍后查找它们
- 决策: Jay 将对 etherpad 记录的注释进行后期处理,并在 Wiki 页面 [1] 上总结决策。 Sean 也会审查。
- 行动: Jay 创建此页面并相应地添加指向 Cinder Wiki 页面的链接。
Pike 的测试优先级
- 决策: 专注于获得 tempest Cinder API V1 测试移除。
- 行动: (jgriffith) 将查看需要更改的 tempest 测试内容以摆脱 v1。
- 行动: (jgriffith) 还会添加一个 README 到测试目录中,它将是一个指向 devref 的符号链接,其中包含有关我们的测试基础设施的更多详细信息。
关于功能测试的又一次讨论
- 决策: 我们将获得一些功能测试到位,这些测试不仅仅是扩展的单元测试。 我们将转向实际使用 devstack 并看看情况如何。 转向使用我们自己的 cinder-tempest 仓库希望会更快。 过去获得 tempest 补丁需要很长时间。
- 行动: (e0ne) 为假驱动程序准备一个 devstack 插件。 需要一个新的仓库来实现这一点。 eharney 有这方面的经验,将帮助 e0ne。
测试用于主动/主动高可用性的驱动程序
- 决策: 此时,当有人提交 A/A 支持的补丁时,我们将开发人员转到上述 devref 并询问他们是否阅读过它,执行了推荐的测试,并认为他们的驱动程序满足需求。 此时,A/A HA 支持仍然有点技术预览,因此驱动程序维护者需要帮助做好此支持。
- 行动: (gorka) 将继续致力于配置自动化测试,但这需要时间。
- 行动: (gorka) 记录驱动程序维护者应该执行的测试,以认证他们的驱动程序。 文档将从上面链接的 etherpad 开始,然后,当我们有了一些信心时,我们将文档移动到 devref 中。
API 理念与现实
- 决策: 我们需要坚持其他人遵循的程序。 我们不想偏离其他人使用微版本所做的事情。 如果我们尝试在发布边界上进行增量更新,我们将破坏模型。
- 行动: (jungleboyj) 我们需要有人来支持 Scott 和 Walt 在 API 工作组会议上。 会议时间是每周四中部时间上午 10 点。
- 行动: (jungleboyj) 修复文档字符串,以便我们在文档中包含 API 版本。
每个 API 都有自己的策略操作
- 行动: (rb560u) 提交一个 bug,说明策略不够精细,然后提交补丁来解决问题。
将 CG 迁移到通用卷组的进度
- 决策: 我们将使其无法修改具有现有卷的卷类型。 与组类型相同。
- 决策: 我们应该针对当前已实现 CG 但未迁移到通用组的驱动程序提出 bug。
- 决策: 在 Queens 中将 CG API 标记为已弃用。 在未来某个时候删除它并清理它,也许。
- 决策: 我们需要组的配额。
- 行动: (jgriffith) 将修复 volume_types,以便在关联卷时无法删除它们 - [2]
- 行动: 跟进尚未迁移到通用组的驱动程序团队。
- 行动: (xyang) 更新 Queens 中的 CG API 状态。
Cinder 卷多重附加
- 行动: 获取指向 Ildiko 和 John 的 Nova 代码的链接:https://review.openstack.org/#/c/330285/
- 行动: 删除 check_attach 调用:https://review.openstack.org/#/c/335358/
- 行动: Scott 的补丁,用于将 Nova 切换到 v3 API:https://review.openstack.org/#/c/420201/
DotHill 驱动程序弃用讨论
- 决策: 允许将驱动程序保留在 volume/drivers 目录中。 希望更改目录名称以将其与 DotHill 分离。 应该使驱动程序无法单独插入。
- 行动: 我们应该更新 dothill 驱动程序,以便其中的类无法作为独立驱动程序加载。
- 行动: 添加注释或 README,解释为什么这不是一个独立驱动程序,这样我们将来就不会意外删除它。
星期四, 2017年2月23日
reset-state,卷/快照/其他事物的状态
- 决策: 将所有命令合并到一个“cinder reset-state”命令中。 弃用旧的 <name>-reset-state 命令。
- 决策: 更改默认功能,以要求指定状态。
- 行动: (eharney) 将致力于实现这些功能。
配额测试和清理
- 决策: 团队同意添加测试/清理此代码。
- 行动: (bluex) 将开始编写测试代码。
DB 代码清理和修复
- 决策: 团队同意拆分 cinder/db/sqlalchemy/api.py
- 行动: (bluex) 将致力于提出更改以拆分 api.py 文件。
视频:Cinder/Nova PTG -Pike- 第二天,第二部分
Nova 和新的 Cinder 附加/分离 API 之间的交互
- 决策: 如果 Cinder v3 不可用,或者 v3 可用但 3.27 不可用,Nova 将回退到旧的(现有的)行为。
- 决策: Nova 将在 Pike 中默认使用 Cinder API v3。
- 决策: 在 nova-api 中,nova 调用 create_attachment 以有效地预留卷并将其置于“正在附加”状态。
- 行动: (johnthetubaguy) 更新 Nova 规范以进行多重附加。
- 行动: (ildikov) 将获得 check_attach 补丁的合并。
- 行动: (scottda) 将为 Nova 提供 Cinder v3 的支持。
- 行动: 在完成上述项目后,将实现新的附加流程。
基于容量的 QoS
- 决策: John 有顾虑,想更好地理解它。 认为规范将有助于创建理解。
- 行动: (eharney) 将编写一个规范以供审查。
新的驱动程序提交策略
- 决策: 建议提交者从基本功能补丁开始。 不是强制要求。 然后鼓励他们为添加的每个功能创建额外的补丁。 分离也可能是分割页面的协议边界……例如,iSCSI 与光纤通道。
- 行动: e0ne 将把建议添加到“如何提交驱动程序”Wiki 页面。
Cinder 卷还原到快照的设计细节
- 决策: 经过大量讨论,我们显然对该提案有许多顾虑需要解决。 由于我们现在无法做出决定,似乎我们需要通过规范审查来处理细节。
- 行动: 所有人都需要审查规范并发表评论。
容量有限主机的检查机制
- 决策: 我们应该在管理器中实现检查,以跳过调度器的操作。 这是个好的第一步。 在未来,我们可以努力让事情通过调度器路由。
- 行动: Winston-D 将更新他当前的工作补丁,以涵盖更多可能因容量不足而失败的事情,我们将对其进行审查。 (https://review.openstack.org/#/c/437677/)
来自 OpenStack Client 讨论的项目
- 决策: manage/unmanage 命令将被更改为 adopt/abandon,以与其他项目保持一致。
- 决策: osc 将从 Cinder 获取最新的受支持的微版本并使用它。
对一组卷进行操作的备份服务
- 决策: 拥有卷组备份功能会很好。
- 行动: (gman-tx) 将为此功能编写规范。
Cinder 客户端命令审查
- 决策: 有些命令可以合并。
- 行动: 任何感兴趣的人都可以提出补丁。
星期五 2017年2月24日
Cinder Pike 优先级
Etherpad:https://etherpad.openstack.org/p/cinder-spec-review-tracking 请参阅 Etherpad 以获取指向相关审查的链接。
- 附加/分离 API 更改
- CG 到通用组迁移
- 通用卷组驱动程序更新。x
- Cinderclient 微版本支持
- 完成获取复制 v2.1 补丁。
- 复制组 (Tiramisu)
- 新的驱动程序审查。
- 驱动程序重构
- 动态重新配置
- Cinder Ephemeral 驱动程序
Nova Placement API
- 行动: 我们需要更新 os-traits,以添加我们想要报告到 placement API 的特征(功能)类型。
移除 V1 API 端点
- 行动: Sean 将使用 V1 tempest 测试 V2。 如果可行,我们将内部将 V1 重定向到 V2。
第三方 CI 要求
- 决策: 每个人将继续像现在一样运行。 我们强制通过针对该驱动程序的供应商 CI 的补丁。 然后我们将每周重新定位一次的无操作补丁,以验证您的 CI 是否正在运行并能够通过。 我们还将运行一个应该导致所有 CI 失败的测试。 连续运行这两个测试。
- 行动: (jgriffith) 将在下周三的会议上向社区提出此提案。
- 行动: 建议公开羞辱没有充分工作的驱动程序将在本月的第一次社区会议上进行。
- 行动: 提出添加一个应该使每个 CI 失败的补丁。
- 行动: 获取 Pike 的规范合并并审查 Patrick 的代码更改。