Articles of mdadm

mdadm LBA映射

我试图写一个类似于mdtrim的脚本( https://github.com/Cyber​​ax/mdtrim )通过mdadm的RAID软件突袭。 mdtrim目前仅用于raid 1,它通过写一个大的,大部分为空的文件到文件系统,通过hdparm –fibmapfind扇区范围,并在单个驱动器上修改这些扇区(+ offset)镜子arrays。 我的问题是关于mdadm如何将虚拟LBA映射到物理LBA。 例如,对于两个磁盘arrays,就像在第一个驱动器(+偏移量)和第二个驱动器上的所有奇数个条带上连续连接所有偶数条一样简单? 它保持一个内部地图,并且是地图常量。 我已经尝试searchnetworking有关如何mdadm如何实施突袭0的细节,但无济于事。

如何在Amazon上使用EBS创buildRAID10arrays?

基于这个问题,我得到的信息为什么df只显示RAID10arrays的一半大小? ,我应该如何在亚马逊上使用EBS卷来创build一个RAID10arrays,而这种方式不会是多余的? 正如链接的问题所示,我正在使用10gen公司(创buildmongodb)的指导,了解如何使用EBS创buildraid10arrays。 我遇到了创build的数组大小的问题,并得到了响应,我应该使用不同的方法来处理脚本的MDADM使用情况。 由于这是我第一次遇到RAID,所以我似乎无法完全理解脚本的作用和LVM的build议方式之间的区别(我也不知道该怎么做)。 我是一名程序员,我认为自己非常适合使用linux机器,这是我在完成我所需要完成的任务时所学到的。 现在到了我知道RAID分期的时候了。 相关信息: 实例是m1.large Ubuntu 11.10。 这里是链接的问题,为了舒适的原因: #!/bin/sh disk1="/dev/xvdh1" disk2="/dev/xvdh2" disk3="/dev/xvdh3" disk4="/dev/xvdh4" echo "*** Verifying existence of 4 volumes $disk1, $disk2, $disk3 and $disk4" if [ -b "$disk1" -a -b "$disk2" -a -b "$disk3" -a -b "$disk4" ]; then echo "# Found expected block devices." else echo "!!! Did not […]

四磁盘md raid10-far可以组装起来,只用2个磁盘就可以“干净,降级”运行。 错误或我错过了什么?

今天,我正在用四个磁盘解决突袭失败的问题。 一个硬盘出现故障,另一个硬盘重新启动后不能重新添加。 mdadm -D报告它是干净的,只有四个磁盘中有两个运行。 当我尝试读取使用dd = / dev / md1 = / dev / null的md数组时,读取在1.5MB后出现错误,dmesg中的“设备md1,逻辑块XXX上的缓冲区I / O错误”。 假设我使用了默认的512KB块,那么就会发生不可避免的事情:根据raid10-FAR http://goo.gl/5Xl7k中的块分布,位于两个缺失磁盘之一上的每个块都不可用。 它是否有一定的目的,数组可以组装得如此糟糕,还是它在md-raid10-far实现中的缺陷? Raid10-near可以在某些情况下以这种方式进行组装,所以也许开发人员忘记修改代码来决定是否可以组装? 我使用Ubuntu Server 12.04,内核3.2.0-26-generic,mdadm v3.2.3

Raid1磁盘重新启动后性能下降

我正在testingRackspace云服务器,并在Raid1configuration中设置了两个云块存储卷。 这些卷上没有任何系统文件,它们纯粹用于存储。 一切似乎正常工作,直到我重新启动服务器。 这样做后,第二卷被删除,并在状态下标记为“错误的备用”。 任何想法可能是什么原因造成的? 更新:12/24 我已经讨论过这个Rackspace支持,问题仍然没有解决。 他们认为Raid在closures之前可能没有完全停用,并build议我尝试在fstab选项中joinbarrier=0 ,这样做没有帮助。 我也尝试在重新启动之前卸载Raid卷,但是当发生这种情况时,第一卷本次进入了“错误的备用”。 以下是我的fstab选项: proc /proc proc nodev,noexec,nosuid 0 0 /dev/xvda1 / ext3 errors=remount-ro,barrier=0 0 1 /dev/xvdc1 none swap sw 0 0 /dev/md0 /mnt/var1 ext4 defaults,noatime,barrier=0 0 0 以下是重启后mdadm –query –detail /dev/md0的结果 Version : 1.2 Creation Time : Fri Dec 21 17:42:10 2012 Raid Level : raid1 Array […]

突袭5 mdadm驱动器下降,同时增长

我有一个4x 2tb raid 5 mdadmarrays,我已经开始成长到第五盘。 ~# mdadm –add /dev/md1 /dev/sdb ~# mdadm –grow /dev/md1 –raid-devices=5 在成长过程中,我收到了一封电子邮件; A Fail event had been detected on md device /dev/md/fubox:1. It could be related to component device /dev/sdf. Faithfully yours, etc. PS The /proc/mdstat file currently contains the following: Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] […]

DF显示错误的磁盘使用情况 – 磁盘损坏

我使用mdadm从我的一个磁盘得到了一个相当奇怪的结果。 它被设置为raid 10中的2TB磁盘中的4个。 # df Filesystem Size Used Avail Use% Mounted on /dev/md2 3.6T 40G 3.4T 2% / <—— this one tmpfs 7.8G 0 7.8G 0% /dev/shm /dev/md0 4.9G 189M 4.4G 5% /boot 实际的磁盘使用量大致在2TB左右。 但是,它只报告40GB的使用量。 我在/ var / log / messages和/ var / log / dmesg(同样的)中看到类似这样的错误。 Feb 13 05:46:00 las kernel: EXT4-fs error (device md2): […]

mdadm不断移除磁盘

正如标题所示,mdadm不断将驱动器标记为“已删除”(来自mdadm –detail),我希望能够得到有关为什么可能发生的build议。 我想fsck的驱动器,但是我得到了以下错误: $ fsck /dev/sda1 fsck from util-linux 2.20.1 fsck: fsck.linux_raid_member: not found fsck: error 2 while executing fsck.linux_raid_member for /dev/sda1 我已经了解到,内部位图将有助于阻止我需要 – join第三个驱动器,并避免重新同步过程/时间,但我假设我需要第一个位置的第三个磁盘加回来任何用途。 任何其他build议如何避免昂贵的resync将不胜感激。 这个RAID的用途是用于媒体服务,因此是一个高读低写应用程序。 更新:在MadHatter的请求下,这里是/ proc / mdstat的输出(RAID正在重build过程中)。 Personalities : [raid6] [raid5] [raid4] md1 : active raid5 sdc1[3] sda1[2] sdb1[1] 3907023872 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [_UU] […]

为什么mdadm –examine –scan给出了两个相同的ARRAYs?

以下使我困惑: [root@mrak ~]# mdadm –examine –scan ARRAY /dev/md/0 metadata=1.2 UUID=d3f800db:26de8691:dc0caf45:0f75028b name=mrak.dex.internal:0 ARRAY /dev/md/0 metadata=1.2 UUID=1870fd84:2234e3d4:580f7634:b0b621e7 name=mrak.dex.internal:0 这个arrays是RAID10,包括4个希捷Momentus XT 750GB磁盘。 活动RAID的UUID是d3f800db:26de8691:dc0caf45:0f75028b。 有人可以向我解释为什么我得到第二个ARRAY线? 另外,为什么我没有看到/ dev / sdb1,/ dev / sde1和/ dev / sde1? 这些都是用于构buildarrays的分区,即“Linux raid autodetect”types。 如果我得到/ dev / md / 0的详细信息,我会得到: [root@mrak ~]# mdadm –detail /dev/md/0 /dev/md/0: Version : 1.2 Creation Time : Fri Feb 8 […]

如果VG不一致,则还原LVM(XenServer 5.6.1)

我有一个使用PV / dev / md1和/ dev / md2的VG。 现在在/ dev / md1中有一个硬盘失败 : [root@xenserver1 ~]# cat /proc/mdstat Personalities : [raid1] md1 : active raid1 sda3[0] 382320128 blocks [2/1] [U_] md2 : active raid1 sdc4[0] sdd4[1] 1562805632 blocks [2/2] [UU] md0 : active raid1 sda1[0] 4194240 blocks [2/1] [U_] unused devices: <none> 因为那样, 我得到以下的LVM错误 : [root@xenserver1 […]

mdadm raid10或nfs的性能问题?

我有一个新的mdadm RAID10设备是健康的,由4个7200转/分钟的SATA 3驱动器构build而成: # cat /proc/mdstat Personalities : [raid10] [raid1] md2 : active raid10 sdc3[5] sda3[4] sdb3[1] sdd3[3] 3885267968 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU] (还有两个mdadm设备,但是md2是相关的) 在md2之上是一个ext4文件系统,用以下方式创build: mkfs.ext4 -m0 -L bups -b 4096 -E stride=8,stripe-width=32 /dev/md2 在通过NFS使用它作为备份目标时,性能非常糟糕。 在单个客户端写作时,我看到了这样的数字,大约有30%到50%的I / O等待在top : Device: tps MB_read/s MB_wrtn/s MB_read MB_wrtn sda 197.00 0.00 1.07 0 […]