[Gluster-users] glusterfs via libgfapi as local block device?

Lalatendu Mohanty lmohanty at redhat.com
Sat Mar 29 19:05:44 UTC 2014


On 03/29/2014 06:53 PM, Dan Lambright wrote:
> Dave,
>
> The Linux target driver has a back-end module to gluster using libgfapi. You can use iSCSI in this way to connect to gluster.
>
> http://stgt.sourceforge.net/
>
> Below I paste the README.glfs file.
>
> Feel free to email me if you have any questions about it.
>
> ----
>
> The 'glfs' backing-store driver provides block  access to a file within the
> gluster distributed  file system  (www.gluster.org). The file  represents a
> LUN visible to the  initiator (the file may be a  regular file in gluster's
> underlying XFS filesystem, or a gluster "block device"). This configuration
> gives gluster support for any access method supported by the target driver,
> such as iSCSI.
>
> The backing-store  driver uses  the interfaces  to gluster  in libgfapi.so.
> This file is part of the glusterfs-api package which can be downloaded from
> www.gluster.org.
>
> To  build  the glfs  backing  store  driver,  set the  GLFS_BS  environment
> variable (export GLFS_BD=1) before running Make.
>
> When a LUN on a target is created with backing store of type glfs (--bstype
> glfs), a  handle to gluster  is created. The  handle is destroyed  when the
> target is  closed. The handle represents  a particular volume on  a gluster
> server and a particular file representing the LUN.
>
> To  set  the gluster  volume  and  file,  --backing-store takes  the  form:
> volume at hostname:filename
>
> For example, if the volume name was  vol1 , and the host gprfs010, and file
> name was "disk1", you would set --backing-store to:
>
> --backing-store="vol1 at gprfs010:disk1"
>
> For each CDB, the driver issues an appropriate gluster api call against the
> handle.  For  example,  WRITE_16 becomes  glfs_pwrite(),  SYNCHRONIZE_CACHE
> becomes glfs_fdatasync() and UNMAP becomes glfs_discard().
>
> Each call is synchronous, meaning the  thread will wait for a response from
> gluster before  returning to  the caller.  The libgfapi  interfaces support
> asynchronous  calls, and  an asynchronous  version of  the driver  has been
> tested. For  more information  on the  asynchronous version  please contact
> dlambrig at redhat.com.
>
> If the  backing store driver  was not used,  the linux target  driver could
> still write data  to gluster by loopback mounting the  gluster file system.
> The backing-store would be a file within the file system. Gluster uses FUSE
> to forward  I/O from  the kernel  to it's user  space daemon.  The overhead
> incured by FUSE and the kernel is removed when the backing store driver and
> libgfapi package is used.
>
> The libgfapi interfaces  supports logs. You can use the  --bsopts option to
> set the logfile and loglevel.
>
> --bsops="logfile=glfs.log;loglevel=3"
>

Here is some documentation on gluster wiki [1]

[1] http://www.gluster.org/community/documentation/index.php/GlusterFS_iSCSI


> ----- Original Message -----
> From: "Dave Christianson" <davidchristianson3 at gmail.com>
> To: gluster-users at gluster.org
> Sent: Saturday, March 29, 2014 9:11:25 AM
> Subject: [Gluster-users] glusterfs via libgfapi as local block device?
>
> I see many posts regarding using libgfapi for qemu guest voluimes, but how about as a mounted volume at the OS level? Is there a way to mount a glusterfs share as a local block device in Linux, bypassing the FUSE? Instead of doing a mount -t glusterfs server:/volume, which appears as type fuse.glusterfs, can libgfapi be used to allow direct access and eliminate the fuse overhead? Do i need to set this up as iSCSI target in order for this to work?
>
> Thanks,
> Dave
>
> _______________________________________________
> Gluster-users mailing list
> Gluster-users at gluster.org
> http://supercolony.gluster.org/mailman/listinfo/gluster-users
> _______________________________________________
> Gluster-users mailing list
> Gluster-users at gluster.org
> http://supercolony.gluster.org/mailman/listinfo/gluster-users




More information about the Gluster-users mailing list