我需要在两个地理位置不同的 DC 之间设置文件复制。我的第一个想法是使用 GlusterFS,但它与高延迟 Blicks 配合不好,而且它的地理复制不是双向的。
设置 DRBD+OCFS2 并且进行复制,但是当您对多个文件进行操作时,复制会非常慢。
我用 DD 进行了一些测试
root@nfs02:/gluster/r0# dd if=/dev/zero of=./testdd bs=1M count=500
500+0 records in
500+0 records out
524288000 bytes (524 MB, 500 MiB) copied, 35.5622 s, 14.7 MB/s
使用 DD 时,网络接口上的速度等于使用 ftop 的 DD 速度。
但是当我对多个文件进行 cp 或 chmod 时,流量以 kb 速度运行并且非常慢。
我的配置 DRBD
resource r0 {
protocol C;
meta-disk internal;
device /dev/drbd0;
disk /dev/nfs/nfs;
startup {
wfc-timeout 20;
become-primary-on both;
}
net {
allow-two-primaries yes;
after-sb-0pri discard-zero-changes;
after-sb-1pri discard-secondary;
after-sb-2pri disconnect;
rr-conflict disconnect;
rcvbuf-size 10M;
sndbuf-size 10M;
no-tcp-cork;
unplug-watermark 16;
max-buffers 40k;
max-epoch-size 8000;
}
disk {
on-io-error detach;
resync-rate 250M;
no-disk-flushes ;
no-disk-barrier;
no-md-flushes;
c-plan-ahead 0;
c-fill-target 1M;
c-min-rate 250M;
c-max-rate 800M;
}
syncer {
rate 90M;
}
on nfs01 {
address 172.16.100.101:7789;
}
on nfs02 {
address 172.16.200.101:7789;
}
}
谢谢!