Chapter 20. Extended Attributes
Extended Attributes (XATTRs) are an important aspect in your configuration. Some file systems have limits on the number of bytes stored in XATTRS. Additionally, in some cases, the filesystem may not be as fast as an alternative method of storing XATTRs. The following settings may help improve performance by using a method of storing XATTRs that is extrinsic to the underlying filesystem.
Ceph XATTRs are stored as inline xattr
, using the XATTRs provided by the underlying file system, if it does not impose a size limit. If there is a size limit ( 4KB total on ext4, for instance ), some Ceph XATTRs will be stored in an key/value database ( aka omap
) when the filestore max inline xattr size
or filestore max inline xattrs
threshold are reached.
filestore_xattr_use_omap
- Description
-
Use object map for XATTRS. Set to
true
forext4
file systems. - Type
- Boolean
- Required
- No
- Default
-
false
filestore_omap_header_cache_size
- Description
- Determines the size of the LRU used to cache object omap headers. Larger values use more memory but may reduce lookups on omap. (Experts only).
- Type
- Integer
- Default
-
1024
filestore_omap_backend
- Description
-
Used to determine which backend is used for the omap. Can be set to "leveldb" or "rocksdb". (Experts only.
rocksdb
is experimental.) - Type
- String
- Default
-
"leveldb"
filestore_debug_omap_check
- Description
- Debugging check on synchronization. Expensive. For debugging only.
- Type
- Boolean
- Required
- No
- Default
-
0
filestore_max_inline_xattr_size
- Description
- The maximimum size of an XATTR stored in the filesystem (i.e., XFS, btrfs, ext4, etc.) per object. Should not be larger than the filesytem can handle.
- Type
- Unsigned 32-bit Integer
- Required
- No
- Default
-
512
filestore_max_inline_xattrs
- Description
- The maximum number of XATTRs stored in the fileystem per object.
- Type
- 32-bit Integer
- Required
- No
- Default
-
2
filestore_max_inline_xattr_size_xfs
- Description
- The maximimum size of an XATTR stored in the filesystem for XFS filesystems per object. Should not be larger than the filesytem can handle.
- Type
- Unsigned 32-bit Integer
- Default
-
65536
filestore_max_inline_xattr_size_btrfs
- Description
-
The maximimum size of an XATTR stored in the filesystem for
btrfs
per object. Should not be larger than the filesytem can handle. - Type
- Unsigned 32-bit Integer
- Default
-
2048
filestore_max_inline_xattr_size_other
- Description
-
The maximimum size of an XATTR stored in the filesystem for filesystems other than
btrfs
or XFS (i.e., ext3, ext4, etc.) per object. Should not be larger than the filesystem can handle. - Type
- Unsigned 32-bit Integer
- Default
-
512
filestore_max_inline_xattrs
- Description
- The maximum number of XATTRs stored in the fileystem per object. Overrides fine-grained settings.
- Type
- Unsigned 32-bit Integer
- Default
-
0
filestore_max_inline_xattrs_xfs
- Description
- The maximum number of XATTRs stored in an XFS fileystem per object.
- Type
- Unsigned 32-bit Integer
- Default
-
10
filestore_max_inline_xattrs_btrfs
- Description
-
The maximum number of XATTRs stored in a
btrfs
fileystem per object. - Type
- Unsigned 32-bit Integer
- Default
-
10
filestore_max_inline_xattrs_other
- Description
-
The maximum number of XATTRs stored in filesystems other than
btrfs
or XFS (i.e., ext3, ext4, etc.) per object. - Type
- Unsigned 32-bit Integer
- Default
-
2