glusterfs

Форк
0
90 строк · 1.9 Кб
1
#!/bin/bash
2

3
. $(dirname $0)/../../include.rc
4
. $(dirname $0)/../../fileio.rc
5
. $(dirname $0)/../../dht.rc
6
. $(dirname $0)/../../volume.rc
7

8
cleanup;
9
wait_check_status ()
10
{
11
        n=0
12
        while [ $n -lt $1 ]
13
        do
14
                ret=$(rebalance_completed)
15
                if [ $ret == "0" ]
16
                then
17
                        return 0;
18
                else
19
                        sleep 1
20
                        n=`expr $n + 1`;
21
                fi
22
       done
23
       return 1;
24
}
25

26
addbr_rebal_till_layout_change()
27
{
28
        val=1
29
        l=$1
30
        i=1
31
        while [ $i -lt 5 ]
32
        do
33
                $CLI volume add-brick $V0 $H0:$B0/${V0}$l &>/dev/null
34
                $CLI volume rebalance $V0 fix-layout start &>/dev/null
35
                wait_check_status $REBALANCE_TIMEOUT
36
                if [ $? -eq 1 ]
37
                then
38
                        break
39
                fi
40
                NEW_LAYOUT=`get_layout $B0/${V0}0 | cut -c11-34`
41
                if [ $OLD_LAYOUT == $NEW_LAYOUT ]
42
                then
43
                        i=`expr $i + 1`;
44
                        l=`expr $l + 1`;
45
                else
46
                        val=0
47
                        break
48
                fi
49
        done
50
        return $val
51
}
52
TEST glusterd
53
TEST pidof glusterd
54

55
TEST $CLI volume create $V0 $H0:$B0/${V0}0
56
TEST $CLI volume set $V0 subvols-per-directory 1
57
TEST $CLI volume start $V0
58

59
TEST glusterfs -s $H0 --volfile-id $V0 $M0;
60

61
TEST mkdir $M0/test
62
TEST touch $M0/test/test
63

64
fd=`fd_available`
65
TEST fd_open $fd "rw" $M0/test/test
66

67
OLD_LAYOUT=`get_layout $B0/${V0}0 | cut -c11-34`
68

69
addbr_rebal_till_layout_change 1
70

71
TEST [ $? -eq 0 ]
72

73
for i in $(seq 1 1000)
74
do
75
	ls -l $M0/ >/dev/null
76
	ret=$?
77
	if [ $ret != 0 ]
78
	then
79
		break
80
	fi
81
done
82

83
TEST [ $ret == 0 ];
84
TEST fd_close $fd;
85

86
EXPECT_WITHIN $UMOUNT_TIMEOUT "Y" force_umount $M0
87
TEST $CLI volume stop $V0
88
TEST $CLI volume delete $V0
89

90
cleanup
91

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.