Hi Andrea<br><br>Commenting out &quot;csum-alg&quot; doesn&#39;t seem to make any noticeable difference...<br>However commenting out &quot;data-integrity-alg&quot; and running Test #2 again increases the throughput from ~ 61MB/s to ~ 97MB/s !<br>
Note that I may well run into the 1Gb/s crossover link limit here since my network tests showed ~ 0.94 Gb/s<br><br>Also Test #1 was wrong in my email... It should have been split in 2:<br>Test #1<br>On non-DRBD device (/dev/sda)<br>
# dd if=/dev/zero of=/home/userxxx/disk-test.xxx bs=1M count=4096 oflag=direct<br>Throughput ~ 420MB/s<br><br>DRBD partition (/dev/sdb) on primary (secondary node disabled)<br>Using Base DRBD config<br># dd if=/dev/zero of=/var/lib/mysql/TMP/disk-test.xxx bs=1M count=4096 oflag=direct<br>
Throughput ~ 205MB/s<br><br>With the above -alg commented out, disabling the secondary node and running Test #1 again (correctly split this time) shows the same throughputs of ~ 420MB/s and ~ 205MB/s<br><br>Fred<br><br><div class="gmail_quote">
On Wed, Feb 1, 2012 at 1:48 PM, Andreas Kurz <span dir="ltr">&lt;<a href="mailto:andreas@hastexo.com">andreas@hastexo.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hello,<br>
<div class="im"><br>
On 02/01/2012 01:04 PM, Frederic DeMarcy wrote:<br>
&gt; Hi<br>
&gt;<br>
&gt; Note 1:<br>
&gt; Scientific Linux 6.1 with kernel 2.6.32-220.4.1.el6.x86_64<br>
&gt; DRBD 8.4.1 compiled from source<br>
&gt;<br>
&gt; Note 2:<br>
&gt; server1 and server2 are 2 VMware VMs on top of ESXi 5. However they reside on different physical 2U servers.<br>
&gt; The specs for the 2U servers are identical:<br>
&gt;   - HP DL380 G7 (2U)<br>
&gt;   - 2 x Six Core Intel Xeon X5680 (3.33GHz)<br>
&gt;   - 24GB RAM<br>
&gt;   - 8 x 146 GB SAS HD&#39;s (7xRAID5 + 1s)<br>
&gt;   - Smart Array P410i with 512MB BBWC<br>
<br>
</div>Have you tried to change the I/O scheduler to deadline or noop in the VMs?<br>
<br>
... see below ..<br>
<div><div class="h5"><br>
&gt;<br>
&gt; Note 3:<br>
&gt; I&#39;ve tested the network throughput with iperf which yields close to 1Gb/s<br>
&gt; [root@server1 ~]# iperf -c 192.168.111.11 -f g<br>
&gt; ------------------------------------------------------------<br>
&gt; Client connecting to 192.168.111.11, TCP port 5001<br>
&gt; TCP window size: 0.00 GByte (default)<br>
&gt; ------------------------------------------------------------<br>
&gt; [  3] local 192.168.111.10 port 54330 connected with 192.168.111.11 port 5001<br>
&gt; [ ID] Interval       Transfer     Bandwidth<br>
&gt; [  3]  0.0-10.0 sec  1.10 GBytes  0.94 Gbits/sec<br>
&gt;<br>
&gt; [root@server2 ~]# iperf -s -f g<br>
&gt; ------------------------------------------------------------<br>
&gt; Server listening on TCP port 5001<br>
&gt; TCP window size: 0.00 GByte (default)<br>
&gt; ------------------------------------------------------------<br>
&gt; [  4] local 192.168.111.11 port 5001 connected with 192.168.111.10 port 54330<br>
&gt; [ ID] Interval       Transfer     Bandwidth<br>
&gt; [  4]  0.0-10.0 sec  1.10 GBytes  0.94 Gbits/sec<br>
&gt;<br>
&gt; Scp&#39;ing a large file from server1 to server2 yields ~ 57MB/s but I guess it&#39;s due to the encryption overhead.<br>
&gt;<br>
&gt; Note 4:<br>
&gt; MySQL was not running.<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; Base DRBD config:<br>
&gt; resource mysql {<br>
&gt;   startup {<br>
&gt;     wfc-timeout 3;<br>
&gt;     degr-wfc-timeout 2;<br>
&gt;     outdated-wfc-timeout 1;<br>
&gt;   }<br>
&gt;   net {<br>
&gt;     protocol C;<br>
&gt;     verify-alg sha1;<br>
&gt;     csums-alg sha1;<br>
<br>
</div></div>using csums based resync is only interesting for WAN setups where you<br>
need to sync via a rather thin connection<br>
<br>
&gt;     data-integrity-alg sha1;<br>
<br>
using data-integrity-alg is definitely not recommended (slow) for live<br>
setups, only if you have to assume there is buggy hardware on the way<br>
between your nodes ... like nics pretending csums are ok while they are not<br>
<br>
and out of curiosity ... did you gave DRBD 8.3.12 already a try?<br>
<br>
Regards,<br>
Andreas<br>
<br>
--<br>
Need help with DRBD?<br>
<a href="http://www.hastexo.com/now" target="_blank">http://www.hastexo.com/now</a><br>
<div><div class="h5"><br>
<br>
&gt;     cram-hmac-alg sha1;<br>
&gt;     shared-secret &quot;MySecret123&quot;;<br>
&gt;   }<br>
&gt;   on server1 {<br>
&gt;     device    /dev/drbd0;<br>
&gt;     disk      /dev/sdb;<br>
&gt;     address   <a href="http://192.168.111.10:7789" target="_blank">192.168.111.10:7789</a>;<br>
&gt;     meta-disk internal;<br>
&gt;   }<br>
&gt;   on server2 {<br>
&gt;     device    /dev/drbd0;<br>
&gt;     disk      /dev/sdb;<br>
&gt;     address   <a href="http://192.168.111.11:7789" target="_blank">192.168.111.11:7789</a>;<br>
&gt;     meta-disk internal;<br>
&gt;   }<br>
&gt; }<br>
&gt;<br>
&gt;<br>
&gt; After any change in the /etc/drbd.d/mysql.res file I issued a &quot;drbdadm adjust mysql&quot; on both nodes.<br>
&gt;<br>
&gt; Test #1<br>
&gt; DRBD partition on primary (secondary node disabled)<br>
&gt; Using Base DRBD config<br>
&gt; # dd if=/dev/zero of=/var/lib/mysql/TMP/disk-test.xxx bs=1M count=4096 oflag=direct<br>
&gt; Throughput ~ 420MB/s<br>
&gt;<br>
&gt; Test #2<br>
&gt; DRBD partition on primary (secondary node enabled)<br>
&gt; Using Base DRBD config<br>
&gt; # dd if=/dev/zero of=/var/lib/mysql/TMP/disk-test.xxx bs=1M count=4096 oflag=direct<br>
&gt; Throughput ~ 61MB/s<br>
&gt;<br>
&gt; Test #3<br>
&gt; DRBD partition on primary (secondary node enabled)<br>
&gt; Using Base DRBD config with:<br>
&gt;   Protocol B;<br>
&gt; # dd if=/dev/zero of=/var/lib/mysql/TMP/disk-test.xxx bs=1M count=4096 oflag=direct<br>
&gt; Throughput ~ 68MB/s<br>
&gt;<br>
&gt; Test #4<br>
&gt; DRBD partition on primary (secondary node enabled)<br>
&gt; Using Base DRBD config with:<br>
&gt;   Protocol A;<br>
&gt; # dd if=/dev/zero of=/var/lib/mysql/TMP/disk-test.xxx bs=1M count=4096 oflag=direct<br>
&gt; Throughput ~ 94MB/s<br>
&gt;<br>
&gt; Test #5<br>
&gt; DRBD partition on primary (secondary node enabled)<br>
&gt; Using Base DRBD config with:<br>
&gt;   disk {<br>
&gt;     disk-barrier no;<br>
&gt;     disk-flushes no;<br>
&gt;     md-flushes no;<br>
&gt;   }<br>
&gt; # dd if=/dev/zero of=/var/lib/mysql/TMP/disk-test.xxx bs=1M count=4096 oflag=direct<br>
&gt; Disk throughput ~ 62MB/s<br>
&gt;<br>
&gt; No difference from Test #2 really. Also cat /proc/drbd still shows wo:b in both cases so I&#39;m not even sure<br>
&gt; these disk {..} parameters have been taken into account...<br>
&gt;<br>
&gt; Test #6<br>
&gt; DRBD partition on primary (secondary node enabled)<br>
&gt; Using Base DRBD config with:<br>
&gt;   Protocol B;<br>
&gt;   disk {<br>
&gt;     disk-barrier no;<br>
&gt;     disk-flushes no;<br>
&gt;     md-flushes no;<br>
&gt;   }<br>
&gt; # dd if=/dev/zero of=/var/lib/mysql/TMP/disk-test.xxx bs=1M count=4096 oflag=direct<br>
&gt; Disk throughput ~ 68MB/s<br>
&gt;<br>
&gt; No difference from Test #3 really. Also cat /proc/drbd still shows wo:b in both cases so I&#39;m not even sure<br>
&gt; these disk {..} parameters have been taken into account...<br>
&gt;<br>
&gt;<br>
&gt; What else can I try?<br>
&gt; Is it worth trying DRBD 8.3.x?<br>
&gt;<br>
&gt; Thx.<br>
&gt;<br>
&gt; Fred<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; On 1 Feb 2012, at 08:35, James Harper wrote:<br>
&gt;<br>
&gt;&gt;&gt; Hi<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; I&#39;ve configured DRBD with a view to use it with MySQL (and later on<br>
&gt;&gt;&gt; Pacemaker + Corosync) in a 2 nodes primary/secondary<br>
&gt;&gt;&gt; (master/slave) setup.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; ...<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; No replication over the 1Gb/s crossover cable is taking place since the<br>
&gt;&gt;&gt; secondary node is down yet there&#39;s x2 lower disk performance.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; I&#39;ve tried to add:<br>
&gt;&gt;&gt;  disk {<br>
&gt;&gt;&gt;    disk-barrier no;<br>
&gt;&gt;&gt;    disk-flushes no;<br>
&gt;&gt;&gt;    md-flushes no;<br>
&gt;&gt;&gt;  }<br>
&gt;&gt;&gt; to the config but it didn&#39;t seem to change anything.<br>
&gt;&gt;&gt;<br>
&gt;&gt;&gt; Am I missing something here?<br>
&gt;&gt;&gt; On another note is 8.4.1 the right version to use?<br>
&gt;&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; If you can do it just for testing, try changing to protocol B with one primary and one secondary and see how that impacts your performance, both with barrier/flushes on and off. I&#39;m not sure if it will help but if protocol B makes things faster then it might hint as to where to start looking...<br>

&gt;&gt;<br>
&gt;&gt; James<br>
&gt;<br>
</div></div>&gt; _______________________________________________<br>
&gt; drbd-user mailing list<br>
&gt; <a href="mailto:drbd-user@lists.linbit.com">drbd-user@lists.linbit.com</a><br>
&gt; <a href="http://lists.linbit.com/mailman/listinfo/drbd-user" target="_blank">http://lists.linbit.com/mailman/listinfo/drbd-user</a><br>
<br>
<br>
<br>
<br>
<br>_______________________________________________<br>
drbd-user mailing list<br>
<a href="mailto:drbd-user@lists.linbit.com">drbd-user@lists.linbit.com</a><br>
<a href="http://lists.linbit.com/mailman/listinfo/drbd-user" target="_blank">http://lists.linbit.com/mailman/listinfo/drbd-user</a><br>
<br></blockquote></div><br>