diff options
author | M. Mohan Kumar <mohan@in.ibm.com> | 2013-11-13 22:44:42 +0530 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2013-11-13 11:38:28 -0800 |
commit | 15a8ecd9b3eedf80881bd3dba81f16b7d2cb7c97 (patch) | |
tree | 856377a3f077ac4ea5cb9db2950210c8d9f30fb1 /doc | |
parent | c1109ed6c6c7bff0df22c304158e9f392f83cf59 (diff) |
bd_map: Remove bd_map xlator
Remove bd_map xlator and CLI related changes.
Change-Id: If7086205df1907127c1a1fa4ba603f1c48421d09
BUG: 1028672
Signed-off-by: M. Mohan Kumar <mohan@in.ibm.com>
Reviewed-on: http://review.gluster.org/5747
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'doc')
-rw-r--r-- | doc/features/bd.txt | 130 | ||||
-rw-r--r-- | doc/gluster.8 | 23 |
2 files changed, 2 insertions, 151 deletions
diff --git a/doc/features/bd.txt b/doc/features/bd.txt deleted file mode 100644 index c1ba006ef8c..00000000000 --- a/doc/features/bd.txt +++ /dev/null @@ -1,130 +0,0 @@ -Sections -1. Introduction -2. Advantages -3. Creating BD backend volume -4. BD volume file -5. Using BD backend gluster volume -6. Limitations -7. TODO - -1. Introduction -=============== -Block Device translator(BD xlator) represented as storage/bd_map in -volume file adds a new backend 'block' to GlusterFS. It enables -GlusterFS to export block devices as regular files to the client. -Currently BD xlator supports exporting of 'Volume Group(VG)' as -directory and Logical Volumes(LV) within that VG as regular files to the -client. - -The eventual goal of this work is to support thin provisioning, -snapshot, copy etc of VM images seamlessly in GlusterFS storage -environment - -The immediate goal of this translator is to use LVs to store -VM images and expose them as files to QEMU/KVM. Given VG is represented -as directory and its logical volumes as files. - -BD xlator uses lvm2-devel APIs for getting the list of VGs and LVs in -the system and lvm binaries (such as lvcreate, lvresize etc) to perform -the required LV operations. - -2. Advantages -============= -By exporting LVs as regular files, it becomes possible to: -* Associate each VM to a LV so that there is no file system overhead. -* Use file system commands like cp to take copy of VM images -* Create linked clones of VM by doing LV snapshot at server -side -* Implement thin provisioning by developing a qcow2 translator - -3. Creating BD backend volume -============================= -New parameter "device vg" in volume create command is used to create BD -backend gluster volumes. - -For example - $ gluster volume create my-volume device vg hostname:/my-vg - -creates gluster volume 'my-volume' with BD backend which uses the VG -'my-vg' to store data. VG 'my-vg' should exist before creating this -gluster volume. - -4. BD volume file -================= -BD backend volume file specifies which VG to export to the client. The -section in the volume file that describes BD xlator looks like this. - -volume my-volume-bd_map -type storage/bd_map -option device vg -option export volume-group -end-volume - -option device=vg specifies that it should use VG as block backend. option -export=volume-group specifies that it should export VG "volume-group" -to the client. - -5. Using BD backend gluster volume -================================== -Mount ------ - $ mount -t glusterfs hostname:/my-volume /media/bd - $ cd /media/bd - -From the mount point: --------------------- -* Creating a new file (ie LV) involves two steps - $ touch lv1 - $ truncate -s <size> lv1 - or - $ qemu-img create -f <format> gluster:/hostname/my-volume/path-to-image <size> - -* Cloning an LV - $ ln lv1 lv2 - -* Snapshotting an LV - $ ln -s lv1 lv1-ss - -* Passing it to QEMU as one of the drives - $ qemu -drive file=<mount>/<file>,if=<if-type> - -* GlusterFS is one of the supported QEMU block drivers, the URI format - is - gluster[+transport]://[server[:port]]/my-volume/image[?socket=...] - ie - $ qemu -drive file=gluster:/hostname/my-volume/path-to-image,if=<if-type> - -Using Gluster CLI: ------------------ -* To create a new image of required size - $ gluster bd create my-volume:/path-to-image <size> - -* To delete an existing image - $ gluster bd delete my-volume:/path-to-image - -* To clone (full clone) an image - $ gluster bd clone my-volume:/path-to-image new-image - -* To take a snapshot of an image - $ gluster bd snapshot my-volume:/path-to-image snapshot-image <size> - -All gluster BD commands need size to specified in terms of KB, MB, etc. - -6. Limitations -============== -* No support to create multiple bricks -* Image creation should be used with truncate to get proper size or use - qemu-img create -* cp command can't be used to copy images, instead use ln command or - gluster bd clone command -* ln -s command throws an error even if snapshot is successful -* When ln command used on BD volumes, target file's inode is different - from target's -* Creation/deletion of directories, xattr operations, mknod and readlink - operations are not supported. - -7. TODO -======= -Add support for exporting LUNs also as a regular files. -Add support for xattr and multi brick support -Include support for device mapper thin targets diff --git a/doc/gluster.8 b/doc/gluster.8 index b23e2c8917c..3c78fb8b19a 100644 --- a/doc/gluster.8 +++ b/doc/gluster.8 @@ -8,7 +8,7 @@ .\" cases as published by the Free Software Foundation. .\" .\" -.TH Gluster 8 "Gluster command line utility" "22 November 2012" "Gluster Inc." +.TH Gluster 8 "Gluster command line utility" "07 March 2011" "Gluster Inc." .SH NAME gluster - Gluster Console Manager (command line utility) .SH SYNOPSIS @@ -36,11 +36,9 @@ The Gluster Console Manager is a command line utility for elastic volume managem \fB\ volume info [all|<VOLNAME>] \fR Display information about all volumes, or the specified volume. .TP -\fB\ volume create <NEW-VOLNAME> [device vg] [stripe <COUNT>] [replica <COUNT>] [transport <tcp|rdma|tcp,rdma>] <NEW-BRICK> ... \fR +\fB\ volume create <NEW-VOLNAME> [stripe <COUNT>] [replica <COUNT>] [transport <tcp|rdma|tcp,rdma>] <NEW-BRICK> ... \fR Create a new volume of the specified type using the specified bricks and transport type (the default transport type is tcp). To create a volume with both transports (tcp and rdma), give 'transport tcp,rdma' as an option. -device vg parameter specifies volume should use block backend instead of regular posix backend. In this case NEW-BRICK should specify an existing Volume Group and there can be only one brick for Block backend volumes. \fR -Refer Block backend section for more details .TP \fB\ volume delete <VOLNAME> \fR Delete the specified volume. @@ -59,9 +57,6 @@ Set the volume options. .TP \fB\ volume help \fR Display help for the volume command. -.SS "Block backend" -.TP -By specifying "device vg" in volume create, a volume capable of exporting block devices(ie Volume Groups (VG)) is created. As of now exporting only VG is supported. While creating block backend volume the "VG" (mentioned in NEW-BRICK) must exist (ie created with vgcreate). VG is exported as a directory and all LVs under that VG will be exported as files. Please refer BD commands section for Block backend related commands .SS "Brick Commands" .PP .TP @@ -110,20 +105,6 @@ Display the status of peers. .TP \fB\ peer help \fR Display help for the peer command. -.SS "BD commands" -.TP -\fB\ bd create <VOLNAME:/path-to-image> <size> \fR -Creates a new image of given size in the volume. Size can be suffixed with MB, GB etc, if nothing specified MB is taken as default. -.TP -\fB\ bd delete <VOLNAME:/path-to-image> \fR -Deletes a image in the volume -.TP -\fB\ bd clone <VOLNAME:/path-to-image> <new-image> \fR -Clones an existing image (full clone) -.TP -\fB\ bd snapshot <VOLNAME:/path-to-image> <new-image> <size> \fR -Creates a linked clone of an existing image with given size. Size can be suffixed with MB, GB etc, if nothing specified MB is taken as default. - .SS "Other Commands" .TP \fB\ help \fR |