4.3. Ceph 文件系统
在收到不支持的指标时,MDS 守护进程不再崩溃
在以前的版本中,MDS 守护进程无法处理内核客户端中的新指标,从而导致 MDS 守护进程在收到任何不受支持的指标时崩溃。
在这个版本中,MDS 会丢弃任何不受支持的指标,并可按预期工作。
当存储集群已满时,允许删除数据
在以前的版本中,当存储集群已满时,Ceph 管理器会在读取配置文件时检查池权限。Ceph 元数据服务器(MDS)不允许在 Ceph OSD 满时进行写操作,从而导致 ENOSPACE
错误。当存储集群达到 full 比率时,用户无法使用 Ceph Manager 卷插件删除数据来释放空间。
在这个版本中,引入了新的 FULL 功能。借助 FULL 功能,Ceph 管理器将绕过 Ceph OSD 完整检查。client_check_pool_permission
选项默认禁用,而在以前的版本中,它已被启用。当 Ceph Manager 具有 FULL 功能时,MDS 不再阻止 Ceph 管理器调用。这会导致 Ceph Manager 在存储集群已满时删除子卷和快照来释放空间。
在处理来自 Ceph 文件系统客户端的身份验证请求时,Ceph 监控器不再崩溃
在以前的版本中,如果客户端没有查看旧文件系统的权限,Ceph 监视器会在处理来自客户端的身份验证请求时崩溃。这会导致 Ceph 监控器不可用。在这个版本中,代码更新修复了对旧文件系统身份验证请求的处理,并且身份验证请求可以正常工作。
修复的 KeyError 在 MGR 日志中出现几毫秒的问题
在以前的版本中,KeyError
被记录到 Ceph Manager 每几毫秒的日志。这是因为尝试从 client_metadata[in_progress]
字典中删除带有不存在的键的元素,从而导致一个 KeyError
。因此,在日志中查找其他堆栈追踪非常困难。此发行版本修复了 Ceph 文件系统性能指标中的代码逻辑,以及 Ceph Manager 日志中的 KeyError
消息。
对于某些克隆状态,不再允许删除子卷克隆
在以前的版本中,如果您尝试删除使用 force 选项的子卷克隆,当克隆没有处于 COMPLETED
或 CANCELLED
状态时,克隆不会从索引跟踪正在进行的克隆中移除。这会导致对应的 cloner 线程无限期重试克隆,最终会导致一个 ENOENT
失败。当默认克隆线程数设置为 4 时,尝试删除四个克隆会导致所有四个线程进入 blocked 状态,以便没有待处理的克隆完成。
在这个版本中,除非克隆处于 COMPLETED
或 CANCELLED
状态,否则它不会被删除。克隆器线程不再阻止,因为克隆被删除,以及它们在索引中的条目跟踪正在进行的克隆。因此,待处理克隆可以继续按预期完成。
ceph fs 快照镜像守护进程状态
命令不再需要文件系统名称
在以前的版本中,用户需要至少一个文件系统名称给 ceph fs 快照镜像守护进程状态命令
。在这个版本中,用户不再需要将一个文件系统名称指定为命令参数,守护进程状态会单独显示每个文件系统。
停止 cephfs-mirror
守护进程可能会导致未清除关闭
在以前的版本中,cephfs-mirror
进程会因为 cephfs-mirror
关闭过程中出现竞争条件而终止。在这个版本中,竞争条件被解析,因此 cephfs-mirror
守护进程可以安全地关闭。
Ceph 元数据服务器不再报告元数据损坏,失败警告
在以前的版本中,Ceph Monitor 在创建过程中为 standby-replay 守护进程分配了等级。此行为可能会导致 Ceph 元数据服务器(MDS)报告错误元数据损坏,以及失败警告。在这个版本中,Ceph Monitor 不再为创建过程中为待机 play 守护进程分配排名,从而消除错误元数据损坏和故障警告。