[DRBD-user] Sudden high CPU load [SOLVED]

Richard Stockton drbd at richardleestockton.org
Fri May 20 22:38:02 CEST 2011

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


Hi Felix,

At 12:38 AM 5/19/2011, you wrote:
>On 05/18/2011 10:02 PM, Richard Stockton wrote:
> >> Is NFS mounted sync or async?
> >
> > NFS is mounted "sync" (NFS3 default, I believe).
>
>This is very bad. Do use async, it's not as asynchronous as the name
>implies (except if you run applications that rely on written data being
>available on all nodes before the writer has closed the file).

Hmmmm, I'm confused.  The Linux NFS FAQ says this:
==============================================================================
For the Linux implementation of NFS Version 3, using the "async" 
export option to allow faster writes is no longer necessary. NFS 
Version 3 explicitly allows a server to reply before writing data to 
disk, under controlled circumstances. It allows clients and servers 
to communicate about the disposition of written data so that in the 
event of a server reboot, a Version 3 client can detect the reboot 
and resend the data.

In summary, be sure all exports on your Linux NFS servers use the 
"sync" option by setting it explicitly or by upgrading your nfs-utils 
package to version 1.0.1 or later. If you need fast writes, be sure 
your clients mount using NFS Version 3. You may also improve write 
performance by adding the "wdelay" option to your exports.
==============================================================================

Since all the clients ARE using NFS3, that seems to say that async is
un-necessary, and there are lots and lots of warnings in the same doc
(and others) that say async is bad and will lead to unfindable corrupted
data, which we certainly do not need.

Note that these are mailboxes and have pretty much continuous reads and writes
happening 24/7.  Also it may be important that the clients are using udp, not
tcp in their mount options in /etc/fstab.       (rw,udp,intr,noatime,nolock)

If I am convinced to use async, it should only be set in the fstab on the
clients, right?  I can't find anywhere on the servers to set it, since
neither server appears to use an /etc/exports file at all (I don't understand
how that would work, but apparently it does).

I must admit to a great deal of confusion about this, any enlightenment
would be appreciated.

>I suggest to just go for noop on the spot. It doesn't usually hurt and
>can be done on-the-fly.

I DID make the change to the "noop" scheduler, but it appeared to make
no difference at all.  No reboot or restart required, right?

I _DO_ appreciate your attempt to help, please let me know if there are
other diagnostics I can provide you with.
Thanks.
  - Richard




More information about the drbd-user mailing list