[DRBD-user] Poor DRBD performance, HELP!

Noah Mehl noah at tritonlimited.com
Tue Jun 21 17:15:05 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.


Felix,

Here's my current config:

# begin resource drbd0
resource r0 {
     protocol C;

          disk {
		no-disk-barrier;
                no-disk-flushes;
                no-md-flushes;
                }

          startup {
                wfc-timeout 15;
                degr-wfc-timeout 60;
                }

          net {
                allow-two-primaries;
                after-sb-0pri discard-zero-changes;
                after-sb-1pri discard-secondary;
                after-sb-2pri disconnect;
		max-buffers 8000;
    		max-epoch-size 8000;
		unplug-watermark 16;
		sndbuf-size 0;                
		}
          syncer {
		rate 1000M;
		al-extents 3389;
          }
     on storagea {
               device /dev/drbd0;
               disk /dev/sda1;
               address 10.0.100.241:7788;
               meta-disk internal;
     }
     on storageb {
                device /dev/drbd0;
                disk /dev/sda1;
                address 10.0.100.242:7788;
                meta-disk internal;
     }
}

/proc/drbd:

version: 8.3.8.1 (api:88/proto:86-94)
GIT-hash: 0d8589fcc32c874df57c930ca1691399b55ec893 build by gardner@, 2011-05-21 19:18:16
 0: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r----
    ns:0 nr:0 dw:0 dr:672 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:d oos:0
 1: cs:Unconfigured

Script:

#!/bin/bash
TEST_RESOURCE=r0
TEST_DEVICE=$(drbdadm sh-dev $TEST_RESOURCE)
TEST_LL_DEVICE=$(drbdadm sh-ll-dev $TEST_RESOURCE)
drbdadm primary $TEST_RESOURCE
for i in $(seq 5); do
  dd if=/dev/zero of=$TEST_DEVICE bs=1G count=64 oflag=direct
done
drbdadm down $TEST_RESOURCE
for i in $(seq 5); do
  dd if=/dev/zero of=$TEST_LL_DEVICE bs=1G count=64 oflag=direct
done


The results are the same :(

64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 157.266 s, 437 MB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 154.105 s, 446 MB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 153.876 s, 447 MB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 152.706 s, 450 MB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 154.149 s, 446 MB/s
0: State change failed: (-12) Device is held open by someone
Command 'drbdsetup 0 down' terminated with exit code 11
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 56.7656 s, 1.2 GB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 55.0543 s, 1.2 GB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 53.6792 s, 1.3 GB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 53.5808 s, 1.3 GB/s
64+0 records in
64+0 records out
68719476736 bytes (69 GB) copied, 53.6429 s, 1.3 GB/s

How do I know what to set in the tuning sections?  How do I measure these attributes?  Should I be using an MTU of 9000?

~Noah

On Jun 21, 2011, at 8:55 AM, Felix Frank wrote:

> On 06/21/2011 03:30 AM, Noah Mehl wrote:
>>          syncer {
>>          }
> 
> Hi,
> 
> I really recommed raising your al-extents value.
> 
> Have you considered the approaches enumerated in
> http://www.drbd.org/users-guide/s-throughput-tuning.html?
> 
> Cheers,
> Felix
> _______________________________________________
> drbd-user mailing list
> drbd-user at lists.linbit.com
> http://lists.linbit.com/mailman/listinfo/drbd-user


Scanned for viruses and content by the Tranet Spam Sentinel service.



More information about the drbd-user mailing list