Re: Thoughts on mount option to configure client lease renewal time.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On Aug 15, 2022, at 7:35 PM, NeilBrown <neilb@xxxxxxx> wrote:
> 
> Currently the Linux NFS renews leases at 2/3 of the lease time advised
> by the server.
> Some server vendors (Not Exactly Targeting Any Particular Party)
> recommend very short lease times - as short a 5 seconds in fail-over
> configurations.  This means 1.7 seconds of jitter in any part of the
> system can result in leases being lost - but it does achieve fast
> fail-over. 
> 
> If we could configure a 5 second lease-renewal on the client, but leave
> a 60 second lease time on the server, then we could get the best of both
> worlds.  Failover would happen quickly, but you would need a much longer
> load spike or network partition to cause the loss of leases.

If loss of leases is the only concern (ie, there is no file sharing that
can cause a client to steal another's locks when the other client loses
contact with the server) then courteous server should handle that. The
Linux NFS server is now courteous, and several other implementations are
as well.


> As v4.1 can end the grace period early once everyone checks in, a large
> grace period (which is needed for a large lease time) would rarely be a
> problem.

IMO the above paragraph is the most salient: if failover time is being
impacted by state recovery, use NFSv4.1 with implementations that take
proper advantage of RECLAIM_COMPLETE.


> So my thought is to add a mount option "lease-renew=5" for v4.1+ mounts.
> The clients then uses that number providing it is less than 2/3 of the
> server-declared lease time.
> 
> What do people think of this?  Is there a better solution, or a problem
> with this one?

RECLAIM_COMPLETE is the preferred solution, if I understand your problem
statement correctly. Can you describe how it does not meet expectations?

The other side of this coin is that clients can have so much outstanding
state that they can't recover it all before the grace period expires.
To compensate, a server can limit the number of delegations it hands out,
or it can lengthen its lease/grace period.


--
Chuck Lever







[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux