51 lines
1.4 KiB
Bash
51 lines
1.4 KiB
Bash
#!/bin/bash
|
|
|
|
mdadm -CR $md0 -l1 -b clustered -n2 $dev0 $dev1 --assume-clean
|
|
ssh $NODE2 mdadm -A $md0 $dev0 $dev1
|
|
check all nosync
|
|
check all raid1
|
|
check all bitmap
|
|
check all state UU
|
|
|
|
# switch 'clustered' bitmap to 'none', and then 'none' to 'internal'
|
|
stop_md $NODE2 $md0
|
|
mdadm --grow $md0 --bitmap=none
|
|
[ $? -eq '0' ] ||
|
|
die "$NODE1: change bitmap 'clustered' to 'none' failed."
|
|
mdadm -X $dev0 $dev1 &> /dev/null
|
|
[ $? -eq '0' ] &&
|
|
die "$NODE1: bitmap still exists in member_disks."
|
|
check all nobitmap
|
|
mdadm --grow $md0 --bitmap=internal
|
|
[ $? -eq '0' ] ||
|
|
die "$NODE1: change bitmap 'none' to 'internal' failed."
|
|
sleep 2
|
|
mdadm -X $dev0 $dev1 &> /dev/null
|
|
[ $? -eq '0' ] ||
|
|
die "$NODE1: create 'internal' bitmap failed."
|
|
check $NODE1 bitmap
|
|
|
|
# switch 'internal' bitmap to 'none', and then 'none' to 'clustered'
|
|
mdadm --grow $md0 --bitmap=none
|
|
[ $? -eq '0' ] ||
|
|
die "$NODE1: change bitmap 'internal' to 'none' failed."
|
|
mdadm -X $dev0 $dev1 &> /dev/null
|
|
[ $? -eq '0' ] &&
|
|
die "$NODE1: bitmap still exists in member_disks."
|
|
check $NODE1 nobitmap
|
|
mdadm --grow $md0 --bitmap=clustered
|
|
[ $? -eq '0' ] ||
|
|
die "$NODE1: change bitmap 'none' to 'clustered' failed."
|
|
ssh $NODE2 mdadm -A $md0 $dev0 $dev1
|
|
sleep 2
|
|
for ip in $NODES
|
|
do
|
|
ssh $ip "mdadm -X $dev0 $dev1 | grep -q 'Cluster name'" ||
|
|
die "$ip: create 'clustered' bitmap failed."
|
|
done
|
|
check all bitmap
|
|
check all state UU
|
|
check all dmesg
|
|
stop_md all $md0
|
|
|
|
exit 0
|