[Gluster-devel] Adding capability information to gluster volume info output
Deepak C Shetty
deepakcs at linux.vnet.ibm.com
Fri May 17 09:05:07 UTC 2013
I think this looks better and fits in the existing xml format/model...
comments invited
<volumes>
<volume>
.....
.....
<name> bd </name>
.....
.....
<backend> block </backend>
<capabilities>
<capability> thin </capability>
<capability> writesame </capability>
</capabilities>
.....
.....
</volume>
<backend> indicates the volume support block devices and <capabilities>
indicate the different features available in the volume. Seeing that
VDSM (or any mgmt app/client) can know of them and use them instead of
doing it locally.
For eg: WS can be exploited by VDSM and help provide pre-allocated vm
disk images in efficient way
thanx,
deepak
On 05/17/2013 12:55 PM, M. Mohan Kumar wrote:
> Hello,
>
> We are planning to add capability information to gluster volume info CLI
> output so that VDSM/management entity can accordingly exploit the
> gluster volume.
>
> For example when a gluster volume is created with BD xlator, VDSM should
> be aware that this gluster volume can create LVs to host VM images and
> it has to use special xattr command to trigger creating LVs in this
> volume. So if gluster volume info gives hint about the capability of a
> volume, VDSM can use them.
>
> For example snip of gluster volume info output for a BD xlator volume:
> Volume Name: bd
> Type: Distribute
> Volume ID: 17a9999e-ca40-49f4-aa1f-dab4556041d9
> Status: Created
> Capabilities:
> Capability 1: BD
> Number of Bricks: 1
> Transport-type: tcp
> Bricks:
> Brick1: /storage/bd
> Brick1: VG: VG1
>
> When posix/bd xlator capable of doing some scsi offload functionalities
> such as write same, unmap etc these capabilities will also be shown as
> part of the capabilities. For example a volume capable of writesame
> feature [only snip of capability line]:
>
> Capabilities:
> Capability 1: BD
> Capability 2: WRITESAME
>
> Here "Capability 1:" is used to inform its a BD xlator based volume and
> for posix volume it will be "POSIX". Instead can "Backend" be used to
> inform if its BD or posix?
>
> So VDSM can exploit the writesame feature instead of doing expensive dd
> if=/dev/zero of=<path> for creating a zeroed image. Similarly VDSM can
> exploit other features such as UNMAP/DISCARD to release the data blocks
> after a file is deleted inside VM in thin provisioned storage.
>
> Need to decide the xml hierachy for capabilities. Here is my proposal
>
> For a posix based volume file:
> <capability>
> <xlator name="posix">
> </xlator>
> </capability>
>
> For a BD based volume file informing it can thin provision and writesame
> blocks:
> <capability>
> <xlator name="bd">
> <type>thin</type>
> <type>writesame</type>
> </xlator>
> </capability>
>
> We use xlator tag inside capability to inform what kind of volume is
> this one: posix or BD. Do we have better alternate for informing this?
> Something like:
>
> <backend>bd</backend>
> <capability>
> <xlator name="bd">
> <type>thin</type>
> <type>writesame</type>
> </xlator>
> </capability>
>
>
More information about the Gluster-devel
mailing list