v0.71 发布
sage
此开发版本包含大量新代码和重构,以及许多为擦除编码和分层支持所需的基础功能。 此外,还有几个重要的补丁集改进了 MDS 的功能。
升级
- 默认情况下,MDS 现在禁止快照,因为它们被认为不稳定。 使用命令 ‘ceph mds set allow_snaps’ 可以启用它们。
- 对于在 v0.44 (pre-argonaut, 2012年春季) 之前创建且存储 radosgw 数据的集群,自动从 TMAP 到 OMAP 对象的升级已被禁用。 在升级之前,请确保在 pre-argonaut 版本上创建的任何 bucket 都已被修改(例如,通过 PUT 并然后 DELETE 每个 bucket 中的对象)。 使用 argonaut (v0.48) 或更高版本创建的集群,或者不使用 radosgw 的集群,都不依赖于自动转换,因此不受此更改的影响。
- 直接使用 librados API 的 ‘tmap’ 部分的任何用户都应注意,自动 tmap -> omap 转换功能已被删除。
- 大多数使用 K 或 KB(例如,千字节)的输出现在使用小写 k,以匹配官方 SI 约定。 任何解析输出并检查大写 K 的脚本都需要进行修改。
重要变更
- build: Makefile 重构 (Roald J. van Loon)
- ceph-disk: 修复日志预分配
- ceph-fuse: 从缓存中删除已删除的 inode (Yan, Zheng)
- ceph-fuse: 使用较新的 fuse api (Jianpeng Ma)
- ceph-kvstore-tool: 用于处理 leveldb (复制, crc) 的新工具 (Joao Luis)
- common: bloom_filter 改进,清理
- common: 更正 SI 为 kB 而不是 KB (Dan Mick)
- common: 各种可移植性修复 (Noah Watkins)
- hadoop: 删除旧版本的 shim 以避免混淆用户 (Noah Watkins)
- librados: 修复已安装的 header #includes (Dan Mick)
- librbd, ceph-fuse: 避免某些来源的 ceph-fuse, rbd 缓存停滞
- mds: 修复 LOOKUPSNAP 错误
- mds: 修复在落后时 standby-replay (Yan, Zheng)
- mds: 修复流浪目录清除 (Yan, Zheng)
- mon, osd: 改进 osdmap 修剪逻辑 (Samuel Just)
- mon: 用于支持 EC 的池的 kv 属性 (Loic Dachary)
- mon: 一些 auth 检查清理 (Joao Luis)
- mon: 跟踪每个池的统计信息 (Joao Luis)
- mon: 警告 pg_num 错误的池
- osd: 自动检测正确的 xattr 限制 (David Zafman)
- osd: 避免擦除编码参考实现中的额外复制 (Loic Dachary)
- osd: 基本缓存池重定向 (Greg Farnum)
- osd: 基本 whiteout, dirty flag 支持 (尚未被使用)
- osd: 清理并推广 copy-from 代码 (Greg Farnum)
- osd: 擦除编码文档更新 (Loic Dachary)
- osd: 擦除编码插件基础设施,测试 (Loic Dachary)
- osd: 修复 RWORDER 标志
- osd: 修复慢速请求警告的指数退避 (Loic Dachary)
- osd: 通用临时对象基础设施
- osd: 用于 EC 的 ghobject_t 基础设施 (David Zafman)
- osd: 改进了 compatset 支持和存储 (David Zafman)
- osd: 各种 copy-from 改进
- osd: 存储数据上的机会性 crc 检查 (默认关闭)
- osd: 使用 PGBackend 重构恢复 (Samuel Just)
- osd: 删除旧的魔法 tmap -> omap 转换
- pybind: 修复黑名单 nonce (Loic Dachary)
- rgw: 默认日志级别现在更合理 (Yehuda Sadeh)
- rgw: 修复 acl 组检查 (Yehuda Sadeh)
- sysvinit: 修复关机顺序 (mons 最后) (Alfredo Deza)
我们现在已经冻结了 v0.72 Emperor 的代码,接下来的一个或两个 sprint 将主要集中在稳定性和测试上(特别是升级路径)。 此外,还有大量正在进行的开发工作用于擦除编码和分层,这些工作将在 Firefly 中实现,但这些代码可能会在一段时间内停留在 master 之外,以便我们加强代码。
您可以从通常的地方获取 v0.71
- Git 在 git://github.com/ceph/ceph.git
- Tarball 在 https://ceph.net.cn/download/ceph-0.71.tar.gz
- 对于 Debian/Ubuntu 包,请参阅 https://ceph.net.cn/docs/master/install/debian
- 对于 RPM,请参阅 https://ceph.net.cn/docs/master/install/rpm
