跳转到: 导航, 搜索

CinderBobcatPTGSummary

简介

Cinder 2023.2 Bobcat 周期第七次虚拟 PTG 于 2023 年 3 月 28 日星期二至 2023 年 3 月 31 日星期五举行,每天 4 小时(UTC 1300-1700)。此页面将提供 PTG 期间讨论的所有主题的摘要。

Cinder Bobcat 虚拟 PTG 2023 年 3 月 29 日


本文档旨在提供每个会话的摘要。更多上下文可在 cinder Bobcat PTG etherpad 上找到


会话已录制,因此要获取任何讨论的全部详细信息,您可以观看/收听录制内容。录制链接位于下面的适当位置。

星期二 3月28日

录像

公告

  • 2023.1 (Antelope) 已发布!

ML: https://lists.openstack.org/pipermail/openstack-discuss/2023-March/032872.html

  • 2023.1 (Antelope) 在 OpenInfra live 中的项目更新

链接: https://www.youtube.com/watch?v=YdLTUTyJ1eU

PTL 和 TC 互动总结

我们讨论了新贡献者在 OpenStack 中面临的挑战以及我们可以采取哪些步骤来帮助改进流程。讨论的一些困难包括

  • Gerrit 界面不太直观
  • Devstack 错误不容易调试和解决:Cinder 团队这次没有强制安装 devstack 进行 Outreachy 贡献,这显著提高了贡献。
  • OpenStack 需要比许多其他 OSS 项目更多的 devops/linux 风格知识


有一门学习 linux 概念的速成课程

链接: https://missing.csail.mit.edu/

Manila 团队正在为 Outreachy 申请人制作指南

链接: https://wiki.openstack.org/wiki/Outreachy_Applicants_Guide#Outreachy_Applicants_Guide

2023.1 (Antelope) 回顾

什么好?

  • 增加了一个核心成员 -- Jon Bernard


什么不好?

  • 由于某些修复导致 RC1 和 RC2 延迟


我们应该停止做什么?

  • 有人提到他们不喜欢最近在会议议程中添加评审的做法,但另一方面,这确实引起了人们的关注
    • Keystone 有周五的“评审马拉松”。他们将管理错误/评审和进行评审分开。 - 我们也有“节日”,但不是每周。
    • 最好有更多人加入
    • 还提到我们应该有一个会议,人们可以带上自己的补丁进行评审(不一定是 XS)
    • 存在一个问题,即驱动程序补丁需要一段时间才能得到第三方 CI 的响应,并且补丁在 CI 通过后仍然会等待
      • 我们可以讨论他们的 CI 状态,如果未报告,我们可以标记并警告他们进行修复


我们应该继续做什么?

  • XS 评审的节日
  • 每月一次的视频团队会议


Cinder 贡献信息

链接: https://tiny.cc/cinder-info

Outreachy 概述

Sofia 提供了一个关于 outreachy 的精彩演示,可以在这里找到。

链接: https://docs.google.com/presentation/d/e/2PACX-1vRrCWvWw6YV13LafHBBSu9EHm8deZu4WTjIebWt0AZEOkovbjhIY9ft9TIk75gL7HZa3lp2apRMQIli/pub?start=false&loop=false&delayms=3000

关于 NFS 加密的快速问题

Dell 和 NetApp 的开发人员是否有兴趣获得其驱动程序的加密支持?如果我们启用通用 nfs 驱动程序中的加密,从它继承的驱动程序会自动获得支持,这不是我们想要的。驱动程序供应商的回复

  • NetApp
    • Netapp 已经具有后端加密,但他们没有启用它,因为他们没有收到任何客户的加密请求
  • Dell
    • 没有计划使用 NFS 加密,因为他们的客户没有真正的需求

Cinder 备份改进

Christian 无法参加会议,因此以下是他提到的需要关注的规范。

tobias-urdin 提出了 cinder 备份/恢复和可用区之间的一个问题。

  • Bug: https://bugs.launchpad.net/cinder/+bug/1949313
  • Gorka 认为该错误的根源是我们没有在创建要恢复到的卷时传递可用区
  • 一种解决方案是提供一个配置选项来允许跨 AZ 卷备份关系,例如,enable_cross_az_backups = true (默认)
  • #action: 某人来完成修复该错误的任务

Rocky 和 Stein 的 EM 与 EOL

我们认为删除分支中的所有作业会很好,但仍然保留它以供协作使用,但存在一些反对该想法的观点

  • 如果对我们不合并任何补丁的分支提出多个补丁,我们最终会使补丁相互冲突
  • 保持分支 EM 表示它仍在维护(基于扩展维护的命名),这从我们的角度来看不是一个好消息


还有人提到将分支标记为 EOL 但仍然保留它的想法

  • 如果我们标记分支为 EOL 并仍然保留它,我们需要说服其他项目关于标记分支为 EOL 但不删除它的提案


另一个与稳定分支相关的问题,应该报告第三方 CI 运行

  • 在任何时候都有 3 个活动稳定分支,目前用于 2023.2 开发,它们是 2023.1、Zed 和 Yoga(Xena 将移动到 EM)
  • 我们需要在进行此测试时跟踪 ubuntu 和 python 版本


行动项目

星期三 3月29日

录像

镜像加密 - 当前状态

python-barbicanclient 和 castellan 中的补丁已合并,castellan 版本即将发布。

从 cinder 的角度来看,我们将拥有 os-brick 和 cinder(用于创建可引导卷操作)的补丁。

glance 和 cinder 的更改将取决于 os-brick 补丁,因此优先级应该是 os-brick > glance 和 cinder。

团队认为拥有包含 glance、cinder、os-brick 代码路径的 tempest 场景测试会很好。

行动项目

FIPS 任务

我们提出了 ubuntu 和 centos 任务。


由于 Ubuntu Focal (20.04) 没有支持除 MD5 之外的任何内核,因此我们无法使用 lvm + iscsi 目标。我们可能可以尝试使用 LVM+ NVMe-TCP 或 LVM + nvme-rdma 使用 Soft-RoCE。此外,FIPS 仅在 Focal 上启用,因此 Jammy 目前不符合 FIPS 测试资格。

行动项目

  • #action: 审查并合并提出的补丁以开始运行非投票作业,但也要注意失败

Operator Hour

Etherpad: https://etherpad.opendev.org/p/march2023-ptg-operator-hour-cinder

没有运营商加入 cinder operator hour。为了更好地利用时间,我们讨论了一个运营商提出的主题。

我们准备好使用 SQLAlchemy 2 吗?

oslo.db 13.0.0 将在 2023.2 Bobcat 开发期间发布,并将删除 sqlalchemy-migrate 支持并正式添加对 sqlalchemy 2.x 的支持。为了使 cinder 采用此更改,我们需要合并以下补丁。


还有一项努力是删除 DB 代码中的抽象,并使 sqlalchemy 成为我们唯一的 DB ORM。团队同意我们应该继续推进此工作。


行动项目

星期四 3月30日

录像

OpenStack Client 更新

我们在 2023.1 Antelope 版本中添加了 OSC 中缺失的命令,并使 cinderclient 和 OpenStack Client 达到一致。以下是我们计划在 2023.2 Bobcat 开发周期中进行的更改

  • 我们将使 OSC 成为默认 CLI,并且仅向 OSC 添加新命令,而不向 cinderclient 添加
    • 我们仍然需要向 cinderclient 添加 python 绑定
  • 我们将改进 openstacksdk 以添加对缺失 cinder 操作的支持

行动项目

  • #action: 向 SDK 一致性前进的计划

配额

部分工作已经完成,但不幸的是,Gorka 无法继续进行此工作,因为有其他优先级。Rajat 已经提出要进行此工作,并将进行适当的交接以继续进行此工作。

  • #action: Rajat 了解当前状态并从 Gorka 处进行交接
  • #action: 所有核心成员在规范最终确定后阅读规范

使用 NFS 的主动/主动支持

这应该可行,但需要一个锁来避免两个服务对同一资源进行操作。


Gorka 有一系列关于主动/主动的文章,应该会有所帮助。


测试

  • 通过多个卷服务运行 tempest 进行健全性测试
  • 应该使用 browbeat 或 rally 进行更彻底的测试

Glance Cinder 跨项目

RBD 删除问题

当 cinder 和 glance 都使用 RBD 作为其后端,并且我们从镜像创建可引导卷时,将执行 COW 克隆,这将创建依赖链。对于从源卷操作进行克隆也是如此。这种依赖关系在删除父资源时会导致问题。cinder 中的当前工作允许使用 RBD 的垃圾箱功能进行删除。

目前 cinder 中有一个补丁正在进行中。我们需要 glance 中的更改类似于 cinder 才能允许删除具有依赖卷的父镜像。


行动项目

  • #action: Eric 对 glance RBD 存储进行 POC 并相应地提出规范

Glance-Cinder-Nova 跨项目

Glance 镜像直接 URL 访问

该工作在 glance 端启动,规范已合并,但是尚未启动实现。


Nova 团队需要一份单独的规范来处理 Nova 的变更,以应对其升级和向后兼容性场景。

Nova 团队对 Nova 端变更的一些需求


行动项目

  • #action: 将 glance 规范重新提案至 2023.2
  • #action: 提案一份 Nova 规范,处理 Nova 特定的用例
  • #action: Glance 团队开始进行实现工作

Nova Cinder 跨项目

NFS 加密

这是一项为通用 NFS 驱动程序启用加密的工作。此功能需要在 Nova 和 Cinder 两端进行更改。

Nova 团队需要一个蓝图来跟踪工作。由于没有数据库或 API 变更,因此不需要规范。尽可能与 Nova 预置磁盘加密功能共享代码会很好。

行动项目

  • #action: 提案一份 Nova 蓝图
  • #action: 处理升级问题,确保我们不会调度到较旧的计算节点(使用特定的 trait + 预过滤器)
  • #action: 为了测试,Cinder 将在现有的 NFS 作业中启用加密,Nova 可以在我们的定期作业中运行它


允许为每个卷指定 Cinder 卷的硬件模型

目前 Nova 允许我们通过镜像使用 hw_disk_bus 镜像属性选择磁盘模型,例如 hw_disk_bus=virtio 或 hw_disk_bus=sata。如果我们想将其作为卷属性支持,可以使用卷元数据来实现。值的验证将在 o

行动项目

  • #action: 磁盘模型可以在卷元数据中设置,Nova 将验证该值是否正确
  • #action: 在 Nova 中实现优先级顺序,以使卷元数据字段比 glance 镜像元数据字段具有更高的优先级

3 月 31 日星期五

录像

SLURP/NON-SLURP 节奏的发布说明指南

我们需要处理 SLURP/非 SLURP 版本的发布说明情况。Brian 已经提出了文档的提案。


Gorka 也有关于 SLURP 与非 SLURP 版本中 Cinder 相关变更的文档补丁


行动项目

  • #action: 审查 Brian 和 Gorka 提出的文档

RBD 的将卷上传到镜像优化

目前这项工作因服务角色可用以及 RBD 删除修复合并而搁置,从而打破了依赖链。我们也可以在没有 Keystone 引导的情况下使用服务角色,并将其记录为该功能正常工作的必要先决条件。


行动项目

  • #action: Rajat 浏览 Nova 文档,并添加有关与服务角色和服务令牌一起使用的文档
  • #action: 浏览 RBD 补丁,看看是否需要包含任何自定义更改以使 RBD 删除正常工作

Cinder 重类型用于迁移,将 new_volume_type_id 传递给驱动程序

问题在于 Cinder 在调用迁移卷功能时没有传递 new_volume_type_id。驱动程序团队希望复制通用的迁移流程,即在新主机上创建新卷,并将数据从旧卷复制到新卷。这对于驱动程序来说似乎不是一个合理的方法,因为预计驱动程序的迁移效率很高。驱动程序始终可以通过不实现 migrate_volume 方法来依赖通用的迁移。

行动项目

  • #action: 致力于补丁,以允许驱动程序返回可以在重新类型化(与迁移)卷时使用的 extra_specs 属性