2010-11-19 22:51:04 +00:00
|
|
|
What: /sys/bus/rbd/
|
|
|
|
Date: November 2010
|
2011-03-21 22:06:50 +00:00
|
|
|
Contact: Yehuda Sadeh <yehuda@newdream.net>,
|
2010-11-19 22:51:04 +00:00
|
|
|
Sage Weil <sage@newdream.net>
|
|
|
|
Description:
|
|
|
|
|
|
|
|
Being used for adding and removing rbd block devices.
|
|
|
|
|
|
|
|
Usage: <mon ip addr> <options> <pool name> <rbd image name> [snap name]
|
|
|
|
|
|
|
|
$ echo "192.168.0.1 name=admin rbd foo" > /sys/bus/rbd/add
|
|
|
|
|
|
|
|
The snapshot name can be "-" or omitted to map the image read/write. A <dev-id>
|
|
|
|
will be assigned for any registered block device. If snapshot is used, it will
|
|
|
|
be mapped read-only.
|
|
|
|
|
|
|
|
Removal of a device:
|
|
|
|
|
|
|
|
$ echo <dev-id> > /sys/bus/rbd/remove
|
|
|
|
|
rbd: add support for single-major device number allocation scheme
Currently each rbd device is allocated its own major number, which
leads to a hard limit of 230-250 images mapped at once. This commit
adds support for a new single-major device number allocation scheme,
which is hidden behind a new single_major boolean module parameter and
is disabled by default for backwards compatibility reasons. (Old
userspace cannot correctly unmap images mapped under single-major
scheme and would essentially just unmap a random image, if that.)
$ rbd showmapped
id pool image snap device
0 rbd b100 - /dev/rbd0
1 rbd b101 - /dev/rbd1
2 rbd b102 - /dev/rbd2
3 rbd b103 - /dev/rbd3
Old scheme (modprobe rbd):
$ ls -l /dev/rbd*
brw-rw---- 1 root disk 253, 0 Dec 10 12:24 /dev/rbd0
brw-rw---- 1 root disk 252, 0 Dec 10 12:28 /dev/rbd1
brw-rw---- 1 root disk 252, 1 Dec 10 12:28 /dev/rbd1p1
brw-rw---- 1 root disk 252, 2 Dec 10 12:28 /dev/rbd1p2
brw-rw---- 1 root disk 252, 3 Dec 10 12:28 /dev/rbd1p3
brw-rw---- 1 root disk 251, 0 Dec 10 12:28 /dev/rbd2
brw-rw---- 1 root disk 251, 1 Dec 10 12:28 /dev/rbd2p1
brw-rw---- 1 root disk 250, 0 Dec 10 12:24 /dev/rbd3
New scheme (modprobe rbd single_major=Y):
$ ls -l /dev/rbd*
brw-rw---- 1 root disk 253, 0 Dec 10 12:30 /dev/rbd0
brw-rw---- 1 root disk 253, 256 Dec 10 12:30 /dev/rbd1
brw-rw---- 1 root disk 253, 257 Dec 10 12:30 /dev/rbd1p1
brw-rw---- 1 root disk 253, 258 Dec 10 12:30 /dev/rbd1p2
brw-rw---- 1 root disk 253, 259 Dec 10 12:30 /dev/rbd1p3
brw-rw---- 1 root disk 253, 512 Dec 10 12:30 /dev/rbd2
brw-rw---- 1 root disk 253, 513 Dec 10 12:30 /dev/rbd2p1
brw-rw---- 1 root disk 253, 768 Dec 10 12:30 /dev/rbd3
(major 253 was assigned dynamically at module load time)
The new limit is 4096 images mapped at once, and it comes from the fact
that, as before, 256 minor numbers are reserved for each mapping.
(A follow-up commit changes the number of minors reserved and the way
we deal with partitions over that number.)
If single_major is set to true, two new sysfs interfaces show up:
/sys/bus/rbd/{add,remove}_single_major. These are to be used instead
of /sys/bus/rbd/{add,remove}, which are disabled for backwards
compatibility reasons outlined above.
Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
Reviewed-by: Alex Elder <elder@linaro.org>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2013-12-13 13:28:57 +00:00
|
|
|
What: /sys/bus/rbd/add_single_major
|
|
|
|
Date: December 2013
|
|
|
|
KernelVersion: 3.14
|
|
|
|
Contact: Sage Weil <sage@inktank.com>
|
|
|
|
Description: Available only if rbd module is inserted with single_major
|
|
|
|
parameter set to true.
|
|
|
|
Usage is the same as for /sys/bus/rbd/add. If present,
|
|
|
|
should be used instead of the latter: any attempts to use
|
|
|
|
/sys/bus/rbd/add if /sys/bus/rbd/add_single_major is
|
|
|
|
available will fail for backwards compatibility reasons.
|
|
|
|
|
|
|
|
What: /sys/bus/rbd/remove_single_major
|
|
|
|
Date: December 2013
|
|
|
|
KernelVersion: 3.14
|
|
|
|
Contact: Sage Weil <sage@inktank.com>
|
|
|
|
Description: Available only if rbd module is inserted with single_major
|
|
|
|
parameter set to true.
|
|
|
|
Usage is the same as for /sys/bus/rbd/remove. If present,
|
|
|
|
should be used instead of the latter: any attempts to use
|
|
|
|
/sys/bus/rbd/remove if /sys/bus/rbd/remove_single_major is
|
|
|
|
available will fail for backwards compatibility reasons.
|
|
|
|
|
2010-11-19 22:51:04 +00:00
|
|
|
Entries under /sys/bus/rbd/devices/<dev-id>/
|
|
|
|
--------------------------------------------
|
|
|
|
|
|
|
|
client_id
|
|
|
|
|
|
|
|
The ceph unique client id that was assigned for this specific session.
|
|
|
|
|
2012-07-14 01:35:12 +00:00
|
|
|
features
|
|
|
|
|
|
|
|
A hexadecimal encoding of the feature bits for this image.
|
|
|
|
|
2010-11-19 22:51:04 +00:00
|
|
|
major
|
|
|
|
|
|
|
|
The block device major number.
|
|
|
|
|
2013-12-13 13:28:57 +00:00
|
|
|
minor
|
|
|
|
|
|
|
|
The block device minor number. (December 2013, since 3.14.)
|
|
|
|
|
2010-11-19 22:51:04 +00:00
|
|
|
name
|
|
|
|
|
|
|
|
The name of the rbd image.
|
|
|
|
|
2012-07-11 01:30:11 +00:00
|
|
|
image_id
|
|
|
|
|
|
|
|
The unique id for the rbd image. (For rbd image format 1
|
|
|
|
this is empty.)
|
|
|
|
|
2010-11-19 22:51:04 +00:00
|
|
|
pool
|
|
|
|
|
2012-07-12 15:46:35 +00:00
|
|
|
The name of the storage pool where this rbd image resides.
|
|
|
|
An rbd image name is unique within its pool.
|
|
|
|
|
|
|
|
pool_id
|
|
|
|
|
|
|
|
The unique identifier for the rbd image's pool. This is
|
|
|
|
a permanent attribute of the pool. A pool's id will never
|
|
|
|
change.
|
2010-11-19 22:51:04 +00:00
|
|
|
|
|
|
|
size
|
|
|
|
|
|
|
|
The size (in bytes) of the mapped block device.
|
|
|
|
|
|
|
|
refresh
|
|
|
|
|
|
|
|
Writing to this file will reread the image header data and set
|
|
|
|
all relevant datastructures accordingly.
|
|
|
|
|
|
|
|
current_snap
|
|
|
|
|
|
|
|
The current snapshot for which the device is mapped.
|
|
|
|
|
2012-10-26 04:34:42 +00:00
|
|
|
parent
|
|
|
|
|
|
|
|
Information identifying the pool, image, and snapshot id for
|
|
|
|
the parent image in a layered rbd image (format 2 only).
|