linux – 为什么我看到DRBD会有很大的性能损失?

前端之家收集整理的这篇文章主要介绍了linux – 为什么我看到DRBD会有很大的性能损失?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我看到DRBD的性能比他们的用户手册说的要大得多.我正在使用DRBD 8.3.7(Fedora 13 RPMs).

我已经设置了DRBD测试并测量了没有DRBD的磁盘和网络的吞吐量:

dd if=/dev/zero of=/data.tmp bs=512M count=1 oflag=direct
536870912 bytes (537 MB) copied,4.62985 s,116 MB/s

/是我正在测试的磁盘上的逻辑卷,在没有DRBD的情况下安装

iperf的:

[  4]  0.0-10.0 sec  1.10 GBytes   941 Mbits/sec

根据Throughput overhead expectations,瓶颈将是较慢的,网络或磁盘和DRBD应该有3%的开销.在我看来,网络和I / O似乎相当匹配.听起来我应该可以达到100 MB / s左右.

所以,使用原始drbd设备,我得到了

dd if=/dev/zero of=/dev/drbd2 bs=512M count=1 oflag=direct
536870912 bytes (537 MB) copied,6.61362 s,81.2 MB/s

这比我想象的慢.然后,一旦我用ext4格式化设备,我就得到了

dd if=/dev/zero of=/mnt/data.tmp bs=512M count=1 oflag=direct
536870912 bytes (537 MB) copied,9.60918 s,55.9 MB/s

这似乎不对.必须有一些其他因素在我不知道的情况下发挥作用.

global_common.conf

global {
usage-count yes;
}

common {
protocol C;
}

syncer {
al-extents 1801;
rate 33M;
}

data_mirror.res

resource data_mirror {
    device /dev/drbd1;
    disk   /dev/sdb1;

    Meta-disk internal;

    on cluster1 {
       address 192.168.33.10:7789;
    }

    on cluster2 {
       address 192.168.33.12:7789;
    }
}

对于硬件,我有两台相同的机器:

> 6 GB RAM
>四核AMD Phenom 3.2Ghz
>主板SATA控制器
> 7200 RPM 64MB缓存1TB WD硬盘

网络通过交换机连接1Gb.我知道建议直接连接,但这可能会产生很大的影响吗?

编辑

我只是试着监控用来试图看看发生了什么的带宽.当我运行dd测试10次时,我使用了ibmonitor并测量了平均带宽.我有:

> avg~450Mbits写入ext4
> avg~800Mbits写入原始设备

看起来像ext4,drbd使用的原始设备使用的带宽大约只有一半,因此存在一个不是网络的瓶颈.

解决方法

你用“rate = 33M”限制带宽为什么?
你使用同步协议“C”为什么?

我通常使用协议“A”和8 MB缓冲区.对于千兆线路和繁忙的流量,我限制为“速率= 90M”.

猜你在找的Linux相关文章