linux pcie组raid_linux – 8个SSD驱动器的软件RAID10阵列写入性能差

我的服务器配有Supermicro X10DRW-i主板和8个KINGSTON SKC400S SSD的RAID10阵列;操作系统是CentOS 6

# cat /proc/mdstat

Personalities : [raid10] [raid1]

md2 : active raid10 sdj3[9](S) sde3[4] sdi3[8] sdd3[3] sdg3[6] sdf3[5] sdh3[7] sdb3[1] sda3[0]

3978989568 blocks super 1.1 512K chunks 2 near-copies [8/8] [UUUUUUUU]

bitmap: 9/30 pages [36KB],65536KB chunk

# mdadm --detail /dev/md2

/dev/md2:

Version : 1.1

Creation Time : Wed Feb 8 18:35:14 2017

Raid Level : raid10

Array Size : 3978989568 (3794.66 GiB 4074.49 GB)

Used Dev Size : 994747392 (948.67 GiB 1018.62 GB)

Raid Devices : 8

Total Devices : 9

Persistence : Superblock is persistent

Intent Bitmap : Internal

Update Time : Fri Sep 14 15:19:51 2018

State : active

Active Devices : 8

Working Devices : 9

Failed Devices : 0

Spare Devices : 1

Layout : near=2

Chunk Size : 512K

Name : ---------:2 (local to host -------)

UUID : 8a945a7a:1d43dfb2:cdcf8665:ff607a1b

Events : 601432

Number Major Minor RaidDevice State

0 8 3 0 active sync set-A /dev/sda3

1 8 19 1 active sync set-B /dev/sdb3

8 8 131 2 active sync set-A /dev/sdi3

3 8 51 3 active sync set-B /dev/sdd3

4 8 67 4 active sync set-A /dev/sde3

5 8 83 5 active sync set-B /dev/sdf3

6 8 99 6 active sync set-A /dev/sdg3

7 8 115 7 active sync set-B /dev/sdh3

9 8 147 - spare /dev/sdj3

我注意到写入速度非常糟糕,甚至没有接近SSD性能.

# dd if=/dev/zero of=/tmp/testfile bs=1G count=1 oflag=dsync

1+0 records in

1+0 records out

1073741824 bytes (1.1 GB) copied,16.511 s,65.0 MB/s

读取速度很好

# hdparm -tT /dev/md2

/dev/md2:

Timing cached reads: 20240 MB in 1.99 seconds = 10154.24 MB/sec

Timing buffered disk reads: 3478 MB in 3.00 seconds = 1158.61 MB/sec

在对这个问题进行一些故障排除之后,我发现可能我最初搞乱了存储配置:X10DRW-i有Intel C610,它有两个独立的SATA控制器,6端口SATA和4端口sSATA.因此阵列中的磁盘连接到不同的控制器,我相信这是性能不佳的根本原因.

我只有一个想法来解决这个问题:安装PCIe SAS控制器(可能是AOC-S3008L-L8E)并将SSD驱动器连接到它.

所以我想确认以下内容:

我对根本原因是对的,还是应该仔细检查一下?

我的解决方案能运作吗

如果我将驱动器重新连接到新控制器,我的RAID和数据会存活吗?我的研究表明,是的,因为分区的UUID将保持不变,但我只是想确定.

感谢大家提前.

# hdparm /dev/sda

/dev/sda:

multcount = 16 (on)

IO_support = 1 (32-bit)

readonly = 0 (off)

readahead = 256 (on)

geometry = 124519/255/63,sectors = 2000409264,start = 0

# cat /sys/block/md2/queue/scheduler

none

虽然AFAIK调度程序设置在物理驱动器上:

# cat /sys/block/sda/queue/scheduler

noop anticipatory [deadline] cfq

UPD2:

# dd if=/dev/zero of=/tmp/testfile bs=1M count=1024 oflag=direct

1024+0 records in

1024+0 records out

1073741824 bytes (1.1 GB) copied,14.389 s,74.6 MB/s

UPD3:

我只是在/ partition上运行fstrim并且产生了一些效果,仍然写入速度太低:连续五次测试中227 MB / s,162 MB / s,112 MB / s,341 MB / s,202 MB / s.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值