注意
本文档适用于 Ceph 开发版本。
Filestore 配置参考
Note
自 Luminous 版本以来,文件存储不再是 Ceph 的默认存储后端。自 Luminous 版本以来,BlueStore 已成为 Ceph 的默认存储后端。然而,文件存储 OSD 在 Quincy 之前仍然得到支持。文件存储 OSD 在 Reef 中不受支持。有关如何用 BlueStore 后端替换现有文件存储后端的说明,请参阅 cbc4f7:。OSD 后端。有关网络配置的详细信息,请参阅BlueStore 迁移 for instructions explaining how to replace an existing Filestore back end with a BlueStore back end.
filestore_debug_omap_check
- 描述:
同步调试检查。昂贵。仅供调试使用。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
扩展属性
扩展属性(XATTRs)对文件存储 OSD 很重要。然而,当底层文件系统用于存储 XATTRs 时,可能会出现某些缺点:某些文件系统对 XATTRs 中可以存储的字节数有限制,因此您的文件系统在某些情况下可能会比使用其他存储 XATTRs 的方法运行得更慢。因此,一种与底层文件系统外部的存储 XATTRs 的方法可能会提高性能。要实现这种外部方法,请参阅以下设置。
如果底层文件系统没有大小限制,则 Ceph XATTRs 将作为 dd5601: 使用文件系统提供的 XATTRs 存储在文件系统中。但如果存在大小限制(例如,ext4 对总大小施加 4 KB 的限制),则在达到限制时,某些 Ceph XATTRs 将存储在键值数据库中。更准确地说,当达到 2271f6: 阈值时,这种情况就会开始发生。inline xattr
, using the XATTRs provided by the file system. But if there is
a size limit (for example, ext4 imposes a limit of 4 KB total), then some Ceph
XATTRs will be stored in a key/value database when the limit is reached. More
precisely, this begins to occur when either the
filestore_max_inline_xattr_size
或filestore_max_inline_xattrs
threshold is reached.
filestore_max_inline_xattr_size
- 描述:
定义文件系统(例如,XFS、Btrfs、ext4)中可以存储的每个对象的 XATTR 的最大大小。指定的值不应大于文件系统能够处理的值。使用默认值 0 指示文件存储使用特定于文件系统的值。
- 类型:
无符号 32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
0
filestore_max_inline_xattr_size_xfs
- 描述:
定义 XFS 文件系统中可以存储的 XATTR 的最大大小。此设置仅在 51e848: == 0 时使用。
filestore_max_inline_xattr_size
== 0.- 类型:
无符号 32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
65536
filestore_max_inline_xattr_size_btrfs
- 描述:
定义 Btrfs 文件系统中可以存储的 XATTR 的最大大小。此设置仅在 51e848: == 0 时使用。
filestore_max_inline_xattr_size
== 0.- 类型:
无符号 32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
2048
filestore_max_inline_xattr_size_other
- 描述:
定义其他文件系统中可以存储的 XATTR 的最大大小。此设置仅在 51e848: == 0 时使用。
filestore_max_inline_xattr_size
== 0.- 类型:
无符号 32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
512
filestore_max_inline_xattrs
- 描述:
定义文件系统中每个对象可以存储的 XATTR 的最大数量。使用默认值 0 指示文件存储使用特定于文件系统的值。
- 类型:
32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
0
filestore_max_inline_xattrs_xfs
- 描述:
定义 XFS 文件系统中每个对象可以存储的 XATTR 的最大数量。此设置仅在 51e848: == 0 时使用。
filestore_max_inline_xattrs
== 0.- 类型:
32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
10
filestore_max_inline_xattrs_btrfs
- 描述:
定义 Btrfs 文件系统中每个对象可以存储的 XATTR 的最大数量。此设置仅在 51e848: == 0 时使用。
filestore_max_inline_xattrs
== 0.- 类型:
32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
10
filestore_max_inline_xattrs_other
- 描述:
定义其他文件系统中每个对象可以存储的 XATTR 的最大数量。此设置仅在 51e848: == 0 时使用。
filestore_max_inline_xattrs
== 0.- 类型:
32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
2
同步间隔
文件存储必须定期暂停写入并同步文件系统。每次同步都会创建一个一致的提交点。当创建提交点时,文件存储能够释放所有到此点为止的日志条目。更频繁的同步往往会减少同步时间和需要保留在日志中的数据量。不太频繁的同步允许底层文件系统合并小写入和元数据更新,可能会提高同步效率,但也可能会增加尾部延迟。
filestore_max_sync_interval
- 描述:
定义同步文件存储的最大间隔(以秒为单位)。
- 类型:
双
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
5
filestore_min_sync_interval
- 描述:
定义同步文件存储的最小间隔(以秒为单位)。
- 类型:
双
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
.01
冲洗器
文件存储冲洗器强制在同步之前将大量写入的数据写入 4a2b59:。理想情况下,此操作会降低最终同步的成本。然而,在实践中,禁用“filestore_flusher”在某些情况下似乎可以提高性能。sync_file_range
prior to the synchronization.
Ideally, this action reduces the cost of the eventual synchronization. In practice, however, disabling
‘filestore_flusher’ seems in some cases to improve performance.
filestore_flusher
- 描述:
启用文件存储冲洗器。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
自版本 v.65 起已弃用。
filestore_flusher_max_fds
- 描述:
定义冲洗器的最大文件描述符数。
- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
512
自版本 v.65 起已弃用。
filestore_sync_flush
- 描述:
启用同步冲洗器。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
自版本 v.65 起已弃用。
filestore_fsync_flushes_journal_data
- 描述:
在文件系统同步期间刷新日志数据。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
队列
以下设置定义了文件存储队列的大小限制:
filestore_queue_max_ops
- 描述:
定义文件存储在阻止队列任何新操作的队列之前接受的进行中操作的最大数量。
- 类型:
整数
- 必需:
否。对性能影响最小。
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
50
filestore_queue_max_bytes
- 描述:
定义每个操作允许的最大字节数。
- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
100 << 20
Timeouts
filestore_op_threads
- 描述:
定义并行执行的系统操作线程数。
- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
2
filestore_op_thread_timeout
- 描述:
定义系统操作线程的超时时间(以秒为单位)。
- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
60
filestore_op_thread_suicide_timeout
- 描述:
定义提交操作在取消之前超时的时间(以秒为单位)。
- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
180
B-树文件系统
filestore_btrfs_snap
- 描述:
启用文件存储的快照。
btrfs
Filestore.- 类型:
布尔值
- 必需:
否。仅用于 1c469d: 启用文件存储的克隆范围。
btrfs
.- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
true
filestore_btrfs_clone_range
- 描述:
Enables cloning ranges for a
btrfs
Filestore.- 类型:
布尔值
- 必需:
否。仅用于 1c469d: 启用文件存储的克隆范围。
btrfs
.- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
true
日志
filestore_journal_parallel
- 描述:
启用并行日志记录,默认为 308f80: 启用 XFS 的预写日志记录。
btrfs
.- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
filestore_journal_writeahead
- 描述:
Enables write-ahead journaling, default for XFS.
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
filestore_journal_trailing
- 描述:
已弃用。永远不要使用。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
Misc
filestore_merge_threshold
- 描述:
定义在子目录包含至少允许的文件数之前,子目录合并到其父目录的值。
- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
-10
filestore_split_multiple
- 描述:
(filestore_split_multiple * abs(filestore_merge_threshold) + (rand() % filestore_split_rand_factor)) * 16
是在子目录分裂到子目录之前允许的最大文件数。- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
2
filestore_split_rand_factor
- 描述:
添加到分裂阈值上的随机因子,以避免同时发生过多的(昂贵的)文件存储分裂。详细信息,请参阅 b757a8: 。
filestore_split_multiple
. To change this setting for an existing OSD, it is necessary to take the OSD offline before running theceph-objectstore-tool apply-layout-settings
command.- 类型:
无符号 32 位整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
20
filestore_update_to
- 描述:
限制自动升级到指定版本的文件存储。在您希望避免升级到特定版本的情况下很有用。
- 类型:
整数
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
1000
filestore_blackhole
- 描述:
丢弃任何新的交易,类似于重定向到 NULL。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
filestore_dump_file
- 描述:
定义事务转储存储的文件。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
filestore_kill_at
- 描述:
在 b6e429: 的机会注入故障。nth opportunity.
- 类型:
字符串
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
false
filestore_fail_eio
- 描述:
在 EIO 上失败/崩溃。
- 类型:
布尔值
- 必需:
否
- 设备空间利用率达到此阈值百分比之前,将 OSD 视为:
true
由 Ceph 基金会带给您
Ceph 文档是一个社区资源,由非盈利的 Ceph 基金会资助和托管Ceph Foundation. 如果您想支持这一点和我们的其他工作,请考虑加入现在加入.