搜索

6.3. 清理

download PDF

除了生成多个对象副本外,Ceph 还通过清理放置组来确保数据完整性。Ceph 清理与对象存储层上的 fsck 命令类似。

对于每个放置组,Ceph 都会生成所有对象的目录,并比较每个主对象及其副本,以确保缺少对象或不匹配。

轻度清理 (每日) 会检查对象大小和属性。深度刮除(每周)读取数据并使用 checksum 来确保数据完整性。

清理对于保持数据完整性非常重要,但可能会降低性能。调整以下设置以增加或减少清理操作。

osd_max_scrubs
描述
Ceph OSD 同步清理操作的最大数量。
类型
32 位整数
默认
1
osd_scrub_thread_timeout
描述
刮除线程超时前需要经过的最大时间(以秒为单位)。
类型
32 位整数
默认
60
osd_scrub_finalize_thread_timeout
描述
刮除完成线程超时前需要经过的最大时间(以秒为单位)。
类型
32 位整数
默认
60*10
osd_scrub_begin_hour
描述
轻量或深度刮除可以开始的最早的小时。它用于 osd scrub end hour 参数,用于定义清理时间窗,并允许将清理限制为非高峰小时。此设置使用一个整数来指定 24 小时周期内的小时,其中 0 代表从 12:01 a.m. 到 1:00 a.m.,13 代表从 1:01 p.m. 到 2:00 p.m。
类型
32 位整数
默认
0 代表 12:01 到 1:00。
osd_scrub_end_hour
描述
轻量或深度刮除可以开始的最完的小时。它用于 osd scrub start hour 参数来定义清理时间窗,并允许将清理限制为非高峰小时。此设置使用一个整数来指定 24 小时周期内的小时,其中 0 代表从 12:01 a.m. 到 1:00 a.m.,13 代表从 1:01 p.m. 到 2:00 p.m。结束 小时必须大于 开始 小时。
类型
32 位整数
默认
24 for 11:01 p.m. to 12:00 a.
osd_scrub_load_threshold
描述
最大负载。当系统负载(由 getloadavg () 功能定义)超过这个数值时,Ceph 不会进行刮除。默认为 0.5
类型
浮点值
默认
0.5
osd_scrub_min_interval
描述
当 Red Hat Ceph Storage 集群负载较低时,清理 Ceph OSD 的最小间隔(以秒为单位)。
类型
浮点值
默认
每天一次。60*60*24
osd_scrub_max_interval
描述
清理 Ceph OSD 所需负载时的最长时间(以秒为单位)。
类型
浮点值
默认
每周一次。7*60*60*24
osd_scrub_interval_randomize_ratio
描述
使用这个比率,在 osd scrub min intervalosd scrub max interval 间随机化调度的刮除。
类型
浮点值
默认
0.5.
mon_warn_not_scrubbed
描述
osd_scrub_interval 后的秒数,以警告任何未清理的 PG。
类型
整数
默认
0 (无警告) 。
osd_scrub_chunk_min
描述
对象存储被分区为以哈希界限结尾的块。对于块清理,Ceph 一次清理对象一个块,且对这个块的写入被阻止。osd scrub chunk min 设置表示要清理的最小块数量。
类型
32 位整数
默认
5
osd_scrub_chunk_max
描述
清理的最大块数量。
类型
32 位整数
默认
25
osd_scrub_sleep
描述
深度清理操作之间休眠的时间。
类型
浮点值
默认
0 (或关闭) 。
osd_scrub_during_recovery
描述
允许在恢复期间进行清理。
类型
Bool
默认
false
osd_scrub_invalid_stats
描述
强制执行额外的清理,以修复标记为无效统计数据。
类型
Bool
默认
true
osd_scrub_priority
描述
控制清理操作与客户端 I/O 的队列优先级。
类型
Unsigned 32 位整数
默认
5
osd_scrub_cost
描述
以 MB 为单位清理操作的成本,用于队列调度目的。
类型
Unsigned 32 位整数
默认
50 << 20
osd_deep_scrub_interval
描述
深度清理的时间间隔,即完全读取所有数据。osd scrub load threshold 参数不会影响此设置。
类型
浮点值
默认
每周一次。60*60*24*7
osd_deep_scrub_stride
描述
在进行深度清理时读取大小。
类型
32 位整数
默认
512 KB.524288
mon_warn_not_deep_scrubbed
描述
osd_deep_scrub_interval 后的秒数,以警告任何未清理的 PG。
类型
整数
默认
0 (无警告) 。
osd_deep_scrub_randomize_ratio
描述
清理的速率会随机变得深度清理(甚至在 osd_deep_scrub_interval 之前)。
类型
浮点值
默认
0.15 或 15%。
osd_deep_scrub_update_digest_min_age
描述
在清理更新整个对象摘要前,旧对象需要有多少秒。
类型
整数
默认
120(2 小时)。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.