Skip to content

Commit

Permalink
rbd: replace the rbd sysfs interface
Browse files Browse the repository at this point in the history
The new interface creates directories per mapped image
and under each it creates a subdir per available snapshot.
This allows keeping a cleaner interface within the sysfs
guidelines. The ABI documentation was updated too.

Acked-by: Greg Kroah-Hartman <[email protected]>
Signed-off-by: Yehuda Sadeh <[email protected]>
Signed-off-by: Sage Weil <[email protected]>
  • Loading branch information
Yehuda Sadeh authored and liewegas committed Dec 1, 2010
1 parent 3561d43 commit dfc5606
Show file tree
Hide file tree
Showing 2 changed files with 554 additions and 277 deletions.
83 changes: 83 additions & 0 deletions Documentation/ABI/testing/sysfs-bus-rbd
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
What: /sys/bus/rbd/
Date: November 2010
Contact: Yehuda Sadeh <[email protected]>,
Sage Weil <[email protected]>
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

Entries under /sys/bus/rbd/devices/<dev-id>/
--------------------------------------------

client_id

The ceph unique client id that was assigned for this specific session.

major

The block device major number.

name

The name of the rbd image.

pool

The pool where this rbd image resides. The pool-name pair is unique
per rados system.

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.

create_snap

Create a snapshot:

$ echo <snap-name> > /sys/bus/rbd/devices/<dev-id>/snap_create

rollback_snap

Rolls back data to the specified snapshot. This goes over the entire
list of rados blocks and sends a rollback command to each.

$ echo <snap-name> > /sys/bus/rbd/devices/<dev-id>/snap_rollback

snap_*

A directory per each snapshot


Entries under /sys/bus/rbd/devices/<dev-id>/snap_<snap-name>
-------------------------------------------------------------

id

The rados internal snapshot id assigned for this snapshot

size

The size of the image when this snapshot was taken.


Loading

0 comments on commit dfc5606

Please sign in to comment.