[Gluster-devel] Filesystem entry create

Alfie Viechweg alfie at syncompute.net
Mon Apr 23 14:56:12 UTC 2012


On 04/22/2012 01:10 PM, Amar Tumballi wrote:
> On 04/21/2012 08:45 PM, Alfie Viechweg wrote:
>> Is there a way to create files and directories in a glusterfs volume
>> before it is used so than the glusterfs process recognizes the object
>> when it starts up. What extended attributes, with what values do I need
>> to attach to the objects so they are properly initialized? Is there any
>> documentation on the list of attributes attached to objects?
>>
>
> Can you describe the use case properly ?
>
> We don't want data to come directly into GlusterFS's backend, that 
> would cause lot of problems as it would skip our clustering logic 
> layer, which then can cause problems with client's data location 
> finding algorithm not perform optimally.
>
> One good way is to have the native client mounted on the server 
> machine, and create the files/directories on top of glusterfs mount.
>
>
> If you badly need to write only to backend without GlusterFS layer, 
> but want to access the data using glusterfs, supporting such 
> configuration would be hard, but technically, in such cases, its 
> better to not create any extended attributes with it. Extended 
> attributes are automatically generated in each translator layer 
> depending on the functionality used, number of bricks, etc etc...
>
> Regards,
> Amar
I figured it out and it seems to be working but I'm not sure if I'm 
doing things the intended way.

I need this functionality in order to be able to incorporate btrfs 
subvolumes within glusterfs volumes. Since  btrfs ioctl calls on a 
glusterfs mount isn't passed onto the underlying filesystem the 
subvolumes must be created offline and initialized with the proper 
extended attributes.

I observed that when I created a filesystem object in some cases it just 
got only a gfid attribute.

I searched the source to find out exactly where these gfid comes from 
and what data if any is used in their creation but only found references 
to uuid. My question is whether it is just a random uuid, time based or 
some other sixteen byte hash that is used as the uuid?

And is there some other way to achieve my goal.

Thanks.

-Alfie Viechweg




More information about the Gluster-devel mailing list