EC2中修改MD成员名称
The MD member name is changed in ec2
我在 EC2 实例中使用 mdadm 创建了一个 RAID1 设备。 mdadm的版本是v3.3.2.
/sbin/mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/xvdf /dev/xvdk
这是 mdstat 的输出:
cat /proc/mdstat
Personalities : [raid1]
md1 : healthy raid1 xvdk[1] xvdf[0]
41594888 blocks super 1.2 [2/2] [UU]
这是正常的。我们看到这个RAID1设备有两个成员盘xvdk和xvdf。
但是,我发现MD设备的成员在"mdadm -D"输出中变为/dev/sd*:
mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Dec 11 06:29:50 2015
Raid Level : raid1
...
Number Major Minor RaidDevice State
0 202 82 0 active sync /dev/sdf
1 202 162 1 active sync /dev/sdk
然后我发现这些链接是自动创建的:
ll /dev/sd*
lrwxrwxrwx. 1 root root 4 Dec 11 06:29 /dev/sdf -> xvdf
lrwxrwxrwx. 1 root root 4 Dec 11 06:29 /dev/sdk -> xvdk
我猜这是由 mdadm 完成的。我以前从未见过这个问题。
我认为MD成员的设备名称不需要更改,因为它会混淆人们。如何避免这个问题?非常感谢!
这个问题我自己解决了。在 EC2 实例中,有一个 UDEV 规则可以自动为 xvd 驱动器创建链接:
$cat /etc/udev/rules.d/99-ami-udev.rules
KERNEL=="xvd*", PROGRAM="/usr/sbin/ami-udev %k", SYMLINK+="%c"
去掉这条规则后,就OK了
我在 EC2 实例中使用 mdadm 创建了一个 RAID1 设备。 mdadm的版本是v3.3.2.
/sbin/mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/xvdf /dev/xvdk
这是 mdstat 的输出:
cat /proc/mdstat
Personalities : [raid1]
md1 : healthy raid1 xvdk[1] xvdf[0]
41594888 blocks super 1.2 [2/2] [UU]
这是正常的。我们看到这个RAID1设备有两个成员盘xvdk和xvdf。
但是,我发现MD设备的成员在"mdadm -D"输出中变为/dev/sd*:
mdadm -D /dev/md1
/dev/md1:
Version : 1.2
Creation Time : Fri Dec 11 06:29:50 2015
Raid Level : raid1
...
Number Major Minor RaidDevice State
0 202 82 0 active sync /dev/sdf
1 202 162 1 active sync /dev/sdk
然后我发现这些链接是自动创建的:
ll /dev/sd*
lrwxrwxrwx. 1 root root 4 Dec 11 06:29 /dev/sdf -> xvdf
lrwxrwxrwx. 1 root root 4 Dec 11 06:29 /dev/sdk -> xvdk
我猜这是由 mdadm 完成的。我以前从未见过这个问题。
我认为MD成员的设备名称不需要更改,因为它会混淆人们。如何避免这个问题?非常感谢!
这个问题我自己解决了。在 EC2 实例中,有一个 UDEV 规则可以自动为 xvd 驱动器创建链接:
$cat /etc/udev/rules.d/99-ami-udev.rules
KERNEL=="xvd*", PROGRAM="/usr/sbin/ami-udev %k", SYMLINK+="%c"
去掉这条规则后,就OK了