Jewel (stable) 10.2.xx
root@mon-201-20:/var/run/ceph# ceph --admin-daemon ceph-mon.mon0-201-20.asok config show |grep rbd_default
"rbd_default_format": "2",
"rbd_default_order": "22",
"rbd_default_stripe_count": "0",
"rbd_default_stripe_unit": "0",
"rbd_default_features": "1",
"rbd_default_map_options": "",
Lumonous (stable) 12.2.xx ~
root@mon0-209-20:/var/run/ceph# ceph --admin-daemon ceph-mon.mon0-209-20.asok config show |grep rbd_default
"rbd_default_data_pool": "",
"rbd_default_features": "1",
"rbd_default_format": "2",
"rbd_default_map_options": "",
"rbd_default_order": "22",
"rbd_default_pool": "rbd",
"rbd_default_stripe_count": "0",
"rbd_default_stripe_unit": "0",
Nautilus (stable) 14.2.xx
root@mon0-17-20:/var/run/ceph# ceph --admin-daemon ceph-mon.mon0-17-20.asok config show |grep rbd_default
"rbd_default_clone_format": "auto",
"rbd_default_data_pool": "",
"rbd_default_features": "1",
"rbd_default_format": "2",
"rbd_default_map_options": "",
"rbd_default_order": "22",
"rbd_default_pool": "rbd",
"rbd_default_stripe_count": "0",
"rbd_default_stripe_unit": "0",
Cinder ¼¹ö ceph.con ÆÄÀÏ ¼öÁ¤ÇØ¾ß ¹Ý¿µµÊ
# ceph config show osd.0 |grep default_feature
rbd_default_features 1 file default[61]
Octopus (stable) 15.2.xx
root@mon0-33-20:/var/run/ceph/262dda46-e3a1-11eb-9ba6-0909dcb6c3d2# ceph --admin-daemon ceph-mon.mon0-33-20.asok config show |grep rbd_default
"rbd_default_clone_format": "auto",
"rbd_default_data_pool": "",
"rbd_default_features": "61",
"rbd_default_format": "2",
"rbd_default_map_options": "",
"rbd_default_order": "22",
"rbd_default_pool": "rbd",
"rbd_default_stripe_count": "0",
"rbd_default_stripe_unit": "0",
rbd-map
À̹ÌÁöÀÇ ºí·ÏÀÌ ½ÇÁ¦·Î ¾îµð¿¡ ÇÒ´çµÇ´ÂÁö¸¦ ÃßÀû
Ŭ¶óÀ̾ðÆ®°¡ °¢ °´Ã¼°¡ À§Ä¡ÇÑ À§Ä¡¸¦ °è»êÇÒ ÇÊ¿ä°¡ ¾ø±â ¶§¹®¿¡ Å©±âÁ¶Á¤, °¡Á®¿À±â, ³»º¸³»±â, ÆòÅºÈ ¹× Å©±â°è»êµî°ú °°Àº ÀÛ¾÷¿¡ À¯¿ë
Octopus
# rbd info volumes/volume-d1cf5a0b-b388-4785-be60-ef743813e0a3
rbd image 'volume-d1cf5a0b-b388-4785-be60-ef743813e0a3':
size 200 GiB in 51200 objects
order 22 (4 MiB objects)
snapshot_count: 0
id: 2449464eafea19
block_name_prefix: rbd_data.2449464eafea19
format: 2
features: layering, exclusive-lock, object-map, fast-diff, deep-flatten
op_features:
flags:
create_timestamp: Thu Sep 2 14:32:31 2021
access_timestamp: Fri Sep 3 16:33:59 2021
modify_timestamp: Fri Sep 3 16:33:13 2021
# rbd feature disable volumes/volume-d1cf5a0b-b388-4785-be60-ef743813e0a3 object-map
# rbd info volumes/volume-d1cf5a0b-b388-4785-be60-ef743813e0a3
rbd image 'volume-d1cf5a0b-b388-4785-be60-ef743813e0a3':
size 200 GiB in 51200 objects
order 22 (4 MiB objects)
snapshot_count: 0
id: 2449464eafea19
block_name_prefix: rbd_data.2449464eafea19
format: 2
features: layering, exclusive-lock, deep-flatten
op_features:
flags:
create_timestamp: Thu Sep 2 14:32:31 2021
access_timestamp: Fri Sep 3 16:33:59 2021
modify_timestamp: Fri Sep 3 16:33:13 2021
Âü°í
IMAGE FEATURES
RBD supports advanced features which can be specified via the command line when creating images or the default features can be configured via rbd_default_features = <sum of feature numeric values>
or rbd_default_features = <comma-delimited list of CLI values>
.
Layering
- Description
Layering enables cloning.
- Internal value
1
- CLI value
layering
- Added in
v0.52 (Bobtail)
- KRBD support
since v3.10
- Default
yes
Striping v2
- Description
Striping spreads data across multiple objects. Striping helps with parallelism for sequential read/write workloads.
- Internal value
2
- CLI value
striping
- Added in
v0.55 (Bobtail)
- KRBD support
since v3.10 (default striping only, ¡°fancy¡± striping added in v4.17)
- Default
yes
Exclusive locking
- Description
When enabled, it requires a client to acquire a lock on an object before making a write. Exclusive lock should only be enabled when a single client is accessing an image at any given time.
- Internal value
4
- CLI value
exclusive-lock
- Added in
v0.92 (Hammer)
- KRBD support
since v4.9
- Default
yes
Object map
- Description
Object map support depends on exclusive lock support. Block devices are thin provisioned, which means that they only store data that actually has been written, ie. they are sparse. Object map support helps track which objects actually exist (have data stored on a device). Enabling object map support speeds up I/O operations for cloning, importing and exporting a sparsely populated image, and deleting.
- Internal value
8
- CLI value
object-map
- Added in
v0.93 (Hammer)
- KRBD support
since v5.3
- Default
yes
Fast-diff
- Description
Fast-diff support depends on object map support and exclusive lock support. It adds another property to the object map, which makes it much faster to generate diffs between snapshots of an image. It is also much faster to calculate the actual data usage of a snapshot or volume (rbd du
).
- Internal value
16
- CLI value
fast-diff
- Added in
v9.0.1 (Infernalis)
- KRBD support
since v5.3
- Default
yes
Deep-flatten
- Description
Deep-flatten enables rbd flatten
to work on all snapshots of an image, in addition to the image itself. Without it, snapshots of an image will still rely on the parent, so the parent cannot be deleted until the snapshots are first deleted. Deep-flatten makes a parent independent of its clones, even if they have snapshots, at the expense of using additional OSD device space.
- Internal value
32
- CLI value
deep-flatten
- Added in
v9.0.2 (Infernalis)
- KRBD support
since v5.1
- Default
yes
Journaling
- Description
Journaling support depends on exclusive lock support. Journaling records all modifications to an image in the order they occur. RBD mirroring can utilize the journal to replicate a crash-consistent image to a remote cluster. It is best to let rbd-mirror
manage this feature only as needed, as enabling it long term may result in substantial additional OSD space consumption.
- Internal value
64
- CLI value
journaling
- Added in
v10.0.1 (Jewel)
- KRBD support
no
- Default
no
Data pool
- Description
On erasure-coded pools, the image data block objects need to be stored on a separate pool from the image metadata.
- Internal value
128
- Added in
v11.1.0 (Kraken)
- KRBD support
since v4.11
- Default
no
Operations
- Description
Used to restrict older clients from performing certain maintenance operations against an image (e.g. clone, snap create).
- Internal value
256
- Added in
v13.0.2 (Mimic)
- KRBD support
since v4.16
Migrating
- Description
Used to restrict older clients from opening an image when it is in migration state.
- Internal value
512
- Added in
v14.0.1 (Nautilus)
- KRBD support
no
Non-primary
- Description
Used to restrict changes to non-primary images using snapshot-based mirroring.
- Internal value
1024
- Added in
v15.2.0 (Octopus)
- KRBD support
no