v12.2.2 Luminous 发布
TheAnalyst
这是 Luminous v12.2.x 长期稳定版系列的第二个 bug 修复版本。它包含了一系列 bug 修复以及 Bluestore、CephFS、RBD 和 RGW 的一些新特性。我们建议所有 12.2.x 系列的用户进行更新。
有关更多详细信息,请参阅完整的变更日志。
重要变更 ¶
- 备用 ceph-mgr 守护进程现在会将请求重定向到活动信使,从而简化了访问 Web 仪表板、restful API 或其他 ceph-mgr 模块服务的工具和用户的配置。
- prometheus 模块有几项重要的更新和改进。
- 新的 balancer 模块支持自动优化 CRUSH 权重以平衡集群中的数据。
- ceph-volume 工具已更新,支持 BlueStore 和 FileStore。唯一缺少的主要 ceph-volume 功能是 dm-crypt 支持。
- RGW 的动态 bucket 索引重分片在多站点环境中被禁用,因为它可能导致 bucket 索引复制到远程站点时出现不一致。
其他值得注意的更改 ¶
- 构建/操作:将 sphinx 升级到 1.6 (issue#21717, pr#18167, Kefu Chai, Alfredo Deza)
- 构建/操作:spec 文件注释中的宏扩展 (issue#22250, pr#19173, Ken Dreyer)
- 构建/操作:SUSE 的 python-numpy-devel 构建依赖项 (issue#21176, pr#17692, Nathan Cutler)
- 构建/操作:selinux:允许对 lnk sysfs 文件进行 getattr (issue#21492, pr#18650, Boris Ranto)
- 构建/操作:Ubuntu amd64 客户端无法发现 ubuntu arm64 ceph 集群 (issue#19705, pr#18293, Kefu Chai)
- 核心:buffer:通过删除列表 _mempool 成员修复 ABI 破坏 (issue#21573, pr#18491, Sage Weil)
- 核心:守护进程 (OSD, Mon...) 在 injectargs 命令下异常退出 (issue#21365, pr#17864, Yan Jun)
- 核心:禁用客户端信使日志记录 (debug ms = 0/0),除非被覆盖 (issue#21860, pr#18529, Jason Dillaman)
- 核心:通过只扫描一次 omap 损坏来提高 OSD 启动时间 (issue#21328, pr#17889, Luo Kexue, David Zafman)
- 核心:upmap 不遵守 osd reweights (issue#21538, pr#18699, Theofilos Mouratidis)
- 仪表板:在需要数字的地方 barfs on nulls (issue#21570, pr#18728, John Spray)
- 仪表板:OSD 列表中的服务器和 OSD 顺序随意 (issue#21572, pr#18736, John Spray)
- 仪表板:仪表板使用文件系统和客户端的绝对链接 (issue#20568, pr#18737, Nick Erdmann)
- filestore:为 rocksdb 设置默认的预读和压缩线程 (issue#21505, pr#18234, Josh Durgin, Mark Nelson)
- librbd:对象映射批量更新可能导致 OSD suicide timeout (issue#21797, pr#18416, Jason Dillaman)
- librbd:快照应针对数据池创建/删除 (issue#21567, pr#18336, Jason Dillaman)
- mds:确保快照 inode 的 last 与其父 dentry 的 last 匹配 (issue#21337, pr#17994, “Yan, Zheng”)
- mds:清理 mdsmap 中已删除的池 (issue#21945, issue#21568, pr#18628, Patrick Donnelly)
- mgr:批量反向移植 ceph-mgr 改进 (issue#21594, issue#17460, issue#21197, issue#21158, issue#21593, pr#18675, Benjeman Meekhof, Sage Weil, Jan Fajerski, John Spray, Kefu Chai, My Do, Spandan Kumar Sahu)
- mgr:ceph-mgr 在重新生成后有一个名为“exe”的进程 (issue#21404, pr#18738, John Spray)
- mgr:修复可崩溃的 DaemonStateIndex::get 调用 (issue#17737, pr#18412, John Spray)
- mgr:从 jewel 升级到 luminous(dev) 后 mgr 的密钥不匹配 (issue#20950, pr#18727, John Spray)
- mgr:mgr 状态模块使用 base 10 单位 (issue#21189, issue#21752, pr#18257, John Spray, Yanhu Cao)
- mgr:mgr[zabbix] 浮点除以零 (issue#21518, pr#18734, John Spray)
- mgr:Prometheus 更新时崩溃 (issue#21253, pr#17867, John Spray)
- mgr:prometheus 模块在计数器名称包含非字母数字字符时生成无效输出 (issue#20899, pr#17868, John Spray, Jeremy H Austin)
- mgr:启动时使 restful 模块的 Runtime Error 安静 (issue#21292, pr#17866, John Spray)
- mgr:mon 选举期间虚假的 ceph-mgr 故障转移 (issue#20629, pr#18726, John Spray)
- mon:客户端 client.admin 将 osd.2 标记为 out,因为它已经 down 了 1504627577 秒 (issue#21249, pr#17862, John Spray)
- mon:不再使用 DNS SRV 默认服务名称 (issue#21204, pr#17863, Kefu Chai)
- mon/MgrMonitor:在没有活动 mgr 的情况下处理从磁盘到磁盘的 cmd descs (issue#21300, pr#18038, Joao Eduardo Luis)
- mon/mgr:将 “mgr_command_descs”、“osd_metadata” 和 “mgr_metadata” 前缀同步到新的 mons (issue#21527, pr#18620, huanwen ren)
- mon:osd feature checks with 0 up osds (issue#21471, issue#20751, pr#18364, Brad Hubbard, Sage Weil)
- mon,osd:修复 “pg ls {forced_backfill, backfilling}” (issue#21609, pr#18236, Kefu Chai)
- mon/OSDMonitor:添加选项以修复 ec 配置文件的 ruleset-* 到 crush-* (issue#22128, pr#18945, Sage Weil)
- mon, osd:per pool space-full 标志支持 (issue#21409, pr#17730, xie xingguo)
- mon/PGMap:修复 %USED 计算 (issue#22247, pr#19230, Xiaoxi Chen)
- mon:更新 get_store_prefixes 实现 (issue#21534, pr#18621, John Spray, huanwen ren)
- msgr:messages/MOSDMap:也对 crush map 进行兼容性重新编码 (issue#21882, pr#18456, Sage Weil)
- msgr:src/messages/MOSDMap:为旧客户端重新编码 OSDMap (issue#21660, pr#18140, Sage Weil)
- os/bluestore/BlueFS:修复异步日志压缩期间日志刷新中的竞争条件 (issue#21878, pr#18503, Sage Weil)
- os/bluestore:修复另一个 aio 停顿/死锁 (issue#21470, pr#18127, Sage Weil)
- os/bluestore:修复 SharedBlob 注销 (issue#22039, pr#18983, Sage Weil)
- os/bluestore:在 blob 取消共享检查中处理压缩范围 (issue#21766, pr#18501, Sage Weil)
- os/bluestore:用在线修复替换 21089 修复(而不是 fsck) (issue#21089, pr#17734, Sage Weil)
- os/bluestore:将 bitmap freelist resolution 设置为 min_alloc_size (issue#21408, pr#18050, Sage Weil)
- os/blueStore::umount 在 BlueStore 通过 start_kv_only() 打开时会崩溃 (issue#21624, pr#18750, Chang Liu)
- osd:对越界 EC 读取的额外保护 (issue#21629, pr#18413, Jason Dillaman)
- osd:允许恢复抢占 (issue#21613, pr#18025, Sage Weil)
- osd:build_past_intervals_parallel:忽略新创建的部分 PG (issue#21833, pr#18673, David Zafman)
- osd:如果设置了 debug 选项,在关机时转储 bluestore debug (issue#21259, pr#18103, Sage Weil)
- osd:使 stat_bytes 和 stat_bytes_used 计数器为 PRIO_USEFUL (issue#21981, pr#18723, Yao Zongyou)
- osd:使 PG 的 SORTBITWISE 断言更宽容的关机 (issue#20416, pr#18132, Greg Farnum)
- osd:OSD metadata ‘backend_filestore_dev_node’ 未知,即使是简单部署 (issue#20944, pr#17865, Sage Weil)
- rbd:[cli] 如果从未启用镜像,镜像 getter 命令将失败 (issue#21319, pr#17861, Jason Dillaman)
- rbd:cls/journal:修复 expire_tags 中可能的无限循环 (issue#21956, pr#18626, Jason Dillaman)
- rbd:cls/journal:tag_list 类方法中可能的无限循环 (issue#21771, pr#18417, Jason Dillaman)
- rbd:[rbd-mirror] 图像重命名时 asok hook 名称未更新 (issue#20860, pr#17860, Mykola Golub)
- rbd:[rbd-mirror] 强制提升可能导致不正确的状态 (issue#21559, pr#18337, Jason Dillaman)
- rbd:[rbd-mirror] 对等集群连接应过滤掉命令行可选参数 (issue#21894, pr#18566, Jason Dillaman)
- rgw:添加对 Swift 每存储策略统计信息支持 (issue#17932, issue#21506, pr#17835, Radoslaw Zarzynski, Casey Bodley)
- rgw:添加对 Swift 反向账户列表支持 (issue#21148, pr#17834, Radoslaw Zarzynski)
- rgw:未配置 keystone 时避免记录 keystone 撤销失败 (issue#21400, pr#18441, Abhishek Lekshmanan)
- rgw:在多站点环境中禁用动态 resharding (issue#21725, pr#18432, Orit Wasserman)
- rgw:加密:PutObj 响应不包含 sse-kms 标头 (issue#21576, pr#18442, Casey Bodley)
- rgw:加密:拒绝未提供所有预期标头的请求 (issue#21581, pr#18429, Enming Zhang)
- rgw:通过 admin api 公开 –sync-stats (issue#21301, pr#18439, Nathan Johnson)
- rgw:失败的 CompleteMultipartUpload 请求不会释放锁 (issue#21596, pr#18430, Matt Benjamin)
- rgw_file:从 bytes_written 设置 s->obj_size (issue#21940, pr#18599, Matt Benjamin)
- rgw:修复关于不一致比较单位的 bug (issue#21590, pr#18438, gaosibei)
- rgw:修复 bilog entries on multipart complete (issue#21772, pr#18334, Casey Bodley)
- rgw:修复 ListBucketIndexesCR 中的错误处理 (issue#21735, pr#18591, Casey Bodley)
- rgw:修复 refcnt 问题 (issue#21819, pr#18539, baixueyu)
- rgw:lc process only schdule the first item of lc objects (issue#21022, pr#17859, Shasha Lu)
- rgw:启用版本控制的 list bucket 在用户标记时获取错误结果 (issue#21500, pr#18569, yuliyang)
- rgw:list_objects() 无论命名空间如何都遵守 end_marker (issue#18977, pr#17832, Radoslaw Zarzynski)
- rgw:Multipart upload 可能使配额加倍 (issue#21586, pr#18435, Sibei Gao)
- rgw:多站点:获取位于另一个 zonegroup 中的 bucket 位置时,将返回 301 Moved Permanently (issue#21125, pr#17857, Shasha Lu)
- rgw:多站点:bucket 和 bucket 实例元数据同步之间的竞争条件 (issue#21990, pr#18767, Casey Bodley)
- rgw:Get/SetRequestPayment 操作中缺少策略检查 (issue#21389, pr#18440, Adam C. Emerson)
- rgw:radosgw-admin usage show 循环无限 (issue#21196, pr#18437, Mark Kogan)
- rgw:rgw_file:显式 NFSv3 open() 仿真 (issue#21854, pr#18446, Matt Benjamin)
- rgw:rgw_file:修复写入偏移量重叠时的写入错误 (issue#21455, pr#18004, Yao Zongyou)
- rgw:rgw file write error (issue#21455, pr#18433, Yao Zongyou)
- rgw:s3:GetBucketCORS/s3:PutBucketCORS 策略失败并显示 403 (issue#21578, pr#18444, Adam C. Emerson)
- rgw:s3:GetBucketLocation bucket 策略失败并显示 403 (issue#21582, pr#18443, Adam C. Emerson)
- rgw:s3:GetBucketWebsite/PutBucketWebsite 失败并显示 403 (issue#21597, pr#18445, Adam C. Emerson)
- rgw:setxattrs 调用导致 bucket 索引和对象的 mtimes 不同 (issue#21200, pr#17856, Abhishek Lekshmanan)
- rgw:仅在启动时停止/加入 TokenCache revoke 线程 (issue#21666, pr#18138, Karol Mroz)
- rgw:PrefixableSignatureHelper 中 string_view 实例指向过期内存 (issue#21085, pr#17858, Radoslaw Zarzynski)
- rgw:即使给出了不同的 uid,用户创建也会覆盖现有用户 (issue#21685, pr#18436, Casey Bodley)
- rgw:如果对象使用 SSE-C 加密,我们无法获取 torrents (issue#21720, pr#18431, Zhang Shaowen)
- rgw:使用名称过长的容器时返回错误的错误消息 (issue#17938, issue#21169, issue#17935, issue#17934, issue#17936, pr#17811, Radoslaw Zarzynski)
- rgw:zone compression type 未经过验证 (issue#21775, pr#18434, Casey Bodley)
- 工具:ceph-disk create deprecation warnings (issue#22154, pr#18989, Alfredo Deza)
- 工具:ceph-disk:修复 ceph-osd 服务缺少 ‘–runtime’ (issue#21498, pr#17914, Carl Xiong)
- 工具:ceph-disk flake8 test fails on very old, and very new, versions of flake8 (issue#22207, pr#19152, Nathan Cutler)
- 工具:ceph-disk:在 OSError 上重试 (issue#21728, pr#18189, Kefu Chai)
- 工具:ceph-disk:激活 dmcrypted 分区时解锁它们 (issue#20488, pr#18625, Kefu Chai, Felix Winterhalter)
- 工具:ceph-kvstore-tool 退出时未调用 bluestore 的 umount (issue#21625, pr#18751, Chang Liu)
- 工具:ceph_monstore_tool:也重建初始 mgrmap (issue#22266, pr#19240, Kefu Chai)
- 工具:ceph-objectstore-tool 和 ceph-bluestore-tool:master 中的反向移植 (issue#21272, pr#17896, Sage Weil, David Zafman)
- 工具:ceph_volume_client:添加 get、put 和 delete 对象接口 (issue#21601, pr#18037, Ramana Raja)
- 工具:cli/crushtools/build.t sometimes fails in jenkins' make check run (issue#21758, pr#18398, Kefu Chai, Sage Weil)