[Gluster-devel] nufa.limits.min-free-disk
Amar S. Tumballi
amar at zresearch.com
Tue Dec 11 19:06:32 UTC 2007
Hi Albert,
I just cross checked behavior of nufa scheduler. Its working fine for me.
The expected behavior is that after the given 'limits.min-free-disk n%" the
new files created are created in 'round-robin' pattern.
Regards,
Amar
PS: To test you don't need to fill nodes till it fills upto 95%, instead
give the min-free-disk option as high as it is currently.
On Dec 11, 2007 8:31 PM, Albert Shih <Albert.Shih at obspm.fr> wrote:
> Le 07/12/2007 à 17:44:43+0100, Albert Shih a écrit
> Hi all
> >
>
> I come back with my problem.
>
> I've make many tests and the result is same.
>
> > I've put into my gluster-client config
> >
> > volume node1
> > type storage/posix
> > option directory /_glusterfs
> > end-volume
> >
> > volume node2
> > type protocol/client
> > option transport-type tcp/client # for TCP/IP transport
> > option remote-host x.y.z.t
> > option transport-timeout 30
> > option remote-subvolume brick
> > end-volume
> >
> > volume node3
> > etc...
> >
> > volume unify
> > type cluster/unify
> > subvolumes node1....node18
> > option scheduler nufa
> > option nufa.local-volume-name node1
> > option nufa.limits.min-free-disk 5%
> > option namespace ns
> > end-volume
> >
> > But....it's not working. Event the only left 1% gluster always write on
> > local disk. He jump to another node when they left...nothing.
>
> Well let me explain what kind a test I've make.
>
> On one node I write enougth file to make the local file system full at 95
> % (of 125Go)
> After that I continue to write small file (1Go) in my glusterfs partition
> and event
> when the local-disk is full at 98% when I start to write a new file It's
> continu to write on local
> disk
>
> Unfortunaly I'm not a developper I'm going to check in nufa.c source code
> and I don't understand much (but I've see the nufa.limits-min-free-disk is
> in % and not on GB or something like that). But in nufa.c in this block
> I've add
>
> if (op_ret == 0) {
> percent = (trav_stats->free_disk * 100) / trav_stats->total_disk_size;
> ***********
> gf_log ("nufa", GF_LOG_ERROR, "percent at %d", percent);
> ***********
> if (nufa_struct->array[idx].free_disk > percent) {
> if (nufa_struct->array[idx].eligible)
> gf_log ("nufa", GF_LOG_CRITICAL,
> "node \"%s\" is _almost_ full",
> nufa_struct->array[idx].xl->name);
> nufa_struct->array[idx].eligible = 0;
> } else {
> nufa_struct->array[idx].eligible = 1;
> }
> } else {
> nufa_struct->array[idx].eligible = 0;
> }
>
> restart my glusterfs with log and I've seen the calculation of percent is
> correct but what's I don't understand is when this calculation is make.
> Because I've just one group of the log with my «special» add sometime
> after
> I umount/remount my glusterfs partition. And never after that even when
> the
> disk is full at 95%, 98%, 99%. Maybe it's normal (I'm really not a
> developper).
>
> Anyone have a solution ? or make nufa.limits working ?
>
> Regards.
>
> JAS
>
>
> --
> Albert SHIH
> Observatoire de Paris Meudon
> SIO batiment 15
> Heure local/Local time:
> Mar 11 déc 2007 15:48:00 CET
>
>
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel at nongnu.org
> http://lists.nongnu.org/mailman/listinfo/gluster-devel
>
--
Amar Tumballi
Gluster/GlusterFS Hacker
[bulde on #gluster/irc.gnu.org]
http://www.zresearch.com - Commoditizing Supercomputing and Superstorage!
More information about the Gluster-devel
mailing list