Hi All,
I need to use very low bandwith network between 2 machines using
drbd and I try using csums-alg/verify-alg.
But I've same duration with or without csums-alg !
Execution with csums-alg:
[root@sms246105 drbd.d]# cat /proc/drbd
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by
root@rh63_build, 2013-01-10 09:57:53
1: cs:SyncTarget ro:Secondary/Secondary
ds:Inconsistent/UpToDate C r-----
ns:0 nr:512 dw:512 dr:147968 al:0 bm:9 lo:0 pe:0 ua:0 ap:0
ep:1 wo:f oos:4904384
[>....................] sync'ed: 3.0% (4788/4932)M
finish: 0:15:17 speed: 5,332 (5,284) want: 2,040 K/sec
Execution without csums-alg:
[root@sms246105 drbd.d]# cat /proc/drbd
version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by
root@rh63_build, 2013-01-10 09:57:53
1: cs:SyncTarget ro:Secondary/Secondary
ds:Inconsistent/UpToDate C r-----
ns:0 nr:53760 dw:53760 dr:0 al:0 bm:3 lo:0 pe:0 ua:0 ap:0
ep:1 wo:f oos:4819904
[>....................] sync'ed: 1.2% (4704/4756)M
finish: 0:14:52 speed: 5,376 (5,376) want: 2,040 K/sec
I don't know where is the problem... is csums-alg usable only in a
more recent version of DRBD (like 8.4.3 or 8.4.4) ?
I've built drbd packages from source, perhaps I need to specify an
option in order to have csums-alg facility (I'll check for this) ?
I've put csums-alg in "net" section and in some web pages I've found
a "syncer" section with csums-alg (seems no more available in 8.4.x
versions).
==> what's the good place ?
On both machines, I do this sequence:
# /etc/init.d/drbd stop
# delete all partition on /dev/sdb and create a 5GB (for my
tests, real size is around 300GB) partitions with fdisk
# partprobe /dev/sdb
# dd
if=/dev/zero of=dev/sdb1 bs=4096
==> to initialize disk content
# mkfs.ext3 -j -m 0 -b 4096 /dev/sdb1
# PARTSIZE=`sfdisk -s /dev/sdb1 |
xargs -i echo "{} 1024 / 1024 / p" | dc`
# NEWSIZE=$[${PARTSIZE}-2]
# resize2fs /dev/sdb1 ${NEWSIZE}G
# e2fsck -f /dev/sdb1
# /etc/init.d/drbd start
# /sbin/drbdadm create-md sqldata
# /sbin/drbdadm up sqldata
On one machine: # /sbin/drbdadm --force primary sqldata
The file /etc/drbd.d/sqldata.res :
resource sqldata {
device /dev/drbd_sqldata minor 1;
disk /dev/sdb1;
meta-disk internal;
on sms246104 {
address 135.117.246.104:7788;
}
on sms246105 {
address 135.117.246.105:7788;
}
}
The file /etc/drbd.d/global_common.conf :
global {
usage-count yes;
dialog-refresh 1;
minor-count 5;
}
common {
handlers {
pri-on-incon-degr
"/usr/lib/drbd/notify-pri-on-incon-degr.sh;
/usr/lib/drbd/notify-emergency-reboot.sh; echo b >
/proc/sysrq-trigger ; reboot -f";
pri-lost-after-sb
"/usr/lib/drbd/notify-pri-lost-after-sb.sh;
/usr/lib/drbd/notify-emergency-reboot.sh; echo b >
/proc/sysrq-trigger ; reboot -f";
local-io-error "/usr/lib/drbd/notify-io-error.sh;
/usr/lib/drbd/notify-emergency-shutdown.sh; echo o >
/proc/sysrq-trigger ; halt -f";
split-brain "/usr/lib/drbd/notify-split-brain.sh
root";
}
startup {
wfc-timeout 15;
}
options {
}
disk {
on-io-error detach;
c-plan-ahead 20;
c-fill-target 50k;
c-min-rate 250k;
c-max-rate 2M;
}
net {
timeout 60;
ping-int 6;
after-sb-0pri discard-younger-primary;
after-sb-1pri discard-secondary;
after-sb-2pri call-pri-lost-after-sb;
ping-timeout 60;
protocol C;
cram-hmac-alg sha1;
shared-secret "TestHA";
csums-alg sha1;
verify-alg sha1;
}
}
Traces in /var/log/kern.log :
Sep 5 13:03:16 sms246104 kernel: events: mcg drbd:
2
Sep 5 13:03:16 sms246104 kernel: drbd: initialized. Version:
8.4.2 (api:1/proto:86-101)
Sep 5 13:03:16 sms246104 kernel: drbd: GIT-hash:
7ad5f850d711223713d6dcadc3dd48860321070c build by
root@rh63_build, 2013-01-10 09:57:53
Sep 5 13:03:16 sms246104 kernel: drbd: registered as block
device major 147
Sep 5 13:03:16 sms246104 kernel: d-con sqldata: Starting
worker thread (from drbdsetup [21781])
Sep 5 13:03:16 sms246104 kernel: block drbd1: disk( Diskless
-> Attaching )
Sep 5 13:03:16 sms246104 kernel: d-con sqldata: Method to
ensure write ordering: flush
Sep 5 13:03:16 sms246104 kernel: block drbd1: max BIO size =
524288
Sep 5 13:03:16 sms246104 kernel: block drbd1: drbd_bm_resize
called with capacity == 10486656
Sep 5 13:03:16 sms246104 kernel: block drbd1: resync bitmap:
bits=1310832 words=40964 pages=41
Sep 5 13:03:16 sms246104 kernel: block drbd1: size = 5120 MB
(5243328 KB)
Sep 5 13:03:16 sms246104 kernel: block drbd1: bitmap READ of
41 pages took 1 jiffies
Sep 5 13:03:16 sms246104 kernel: block drbd1: recounting of
set bits took additional 0 jiffies
Sep 5 13:03:16 sms246104 kernel: block drbd1: 5051 MB
(1293168 bits) marked out-of-sync by on disk bit-map.
Sep 5 13:03:16 sms246104 kernel: block drbd1: disk( Attaching
-> UpToDate ) pdsk( DUnknown -> Outdated )
Sep 5 13:03:16 sms246104 kernel: block drbd1: attached to
UUIDs
646C4E1151078FBF:DAB8D60C65E253A0:0000000000000004:0000000000000000
Sep 5 13:03:16 sms246104 kernel: d-con sqldata: conn(
StandAlone -> Unconnected )
Sep 5 13:03:16 sms246104 kernel: d-con sqldata: Starting
receiver thread (from drbd_w_sqldata [21782])
Sep 5 13:03:16 sms246104 kernel: d-con sqldata: receiver
(re)started
Sep 5 13:03:16 sms246104 kernel: d-con sqldata: conn(
Unconnected -> WFConnection )
Sep 5 13:03:37 sms246104 kernel: d-con sqldata: Handshake
successful: Agreed network protocol version 101
Sep 5 13:03:37 sms246104 kernel: d-con sqldata: Peer
authenticated using 20 bytes HMAC
Sep 5 13:03:37 sms246104 kernel: d-con sqldata: conn(
WFConnection -> WFReportParams )
Sep 5 13:03:37 sms246104 kernel: d-con sqldata: Starting
asender thread (from drbd_r_sqldata [21786])
Sep 5 13:03:37 sms246104 kernel: block drbd1:
drbd_sync_handshake:
Sep 5 13:03:37 sms246104 kernel: block drbd1: self
646C4E1151078FBE:DAB8D60C65E253A0:0000000000000004:0000000000000000
bits:1293168 flags:0
Sep 5 13:03:37 sms246104 kernel: block drbd1: peer
DAB8D60C65E253A0:0000000000000000:0000000000000000:0000000000000000
bits:1293168 flags:0
Sep 5 13:03:37 sms246104 kernel: block drbd1:
uuid_compare()=1 by rule 70
Sep 5 13:03:37 sms246104 kernel: block drbd1: Becoming sync
source due to disk states.
Sep 5 13:03:37 sms246104 kernel: block drbd1: peer( Unknown
-> Secondary ) conn( WFReportParams -> WFBitMapS ) pdsk(
Outdated -> Inconsistent )
Sep 5 13:03:37 sms246104 kernel: block drbd1: send bitmap
stats [Bytes(packets)]: plain 0(0), RLE 25(1), total 25;
compression: 100.0%
Sep 5 13:03:37 sms246104 kernel: block drbd1: receive bitmap
stats [Bytes(packets)]: plain 0(0), RLE 25(1), total 25;
compression: 100.0%
Sep 5 13:03:37 sms246104 kernel: block drbd1: helper command:
/sbin/drbdadm before-resync-source minor-1
Sep 5 13:03:37 sms246104 kernel: block drbd1: helper command:
/sbin/drbdadm before-resync-source minor-1 exit code 0 (0x0)
Sep 5 13:03:37 sms246104 kernel: block drbd1: conn( WFBitMapS
-> SyncSource )
Sep 5 13:03:37 sms246104 kernel: block drbd1: Began resync as
SyncSource (will sync 5172672 KB [1293168 bits set]).
Sep 5 13:03:37 sms246104 kernel: block drbd1: updated sync
UUID
646C4E1151078FBE:DAB9D60C65E253A0:DAB8D60C65E253A0:0000000000000004
I hope someone will be able to help me...
Perhaps, I'm totally wrong on csums-alg usage !
Regards
|
_______________________________________________
drbd-user mailing list
[email protected]
http://lists.linbit.com/mailman/listinfo/drbd-user