5 export PATH=`dirname $0`/../utils:$PATH
7 config=${1:-`basename $0 .sh`.xml}
9 LMC="${LMC:-lmc} -m $config"
13 MDSDEV=${MDSDEV:-$TMP/mds1-`hostname`}
14 MDSSIZE=${MDSSIZE:-400000}
15 FSTYPE=${FSTYPE:-ext3}
16 MOUNT=${MOUNT:-/mnt/lustre}
17 MOUNT2=${MOUNT2:-${MOUNT}2}
18 NETTYPE=${NETTYPE:-tcp}
20 OSTCOUNT=${OSTCOUNT:-5}
21 # OSTDEVN will still override the device for OST N
23 OSTSIZE=${OSTSIZE:-150000}
24 # 1 to config an echo client instead of llite
25 ECHO_CLIENT=${ECHO_CLIENT:-}
27 STRIPE_BYTES=${STRIPE_BYTES:-1048576}
28 STRIPES_PER_OBJ=${STRIPES_PER_OBJ:-$((OSTCOUNT -1))}
30 CLIENTOPT="user_xattr,${CLIENTOPT:-""}"
32 # specific journal size for the ost, in MB
35 [ "$JSIZE" -gt 0 ] && JARG="--journal_size $JSIZE"
40 ${LMC} --add node --node $HOSTNAME || exit 10
41 ${LMC} --add net --node $HOSTNAME --nid $HOSTNAME --nettype $NETTYPE || exit 11
42 ${LMC} --add net --node client --nid '*' --nettype $NETTYPE || exit 12
44 # configure mds server
45 ${LMC} --format --add mds --node $HOSTNAME --mds mds1 --fstype $FSTYPE \
46 --dev $MDSDEV --size $MDSSIZE $MDSOPT || exit 20
49 ${LMC} --add lov --lov lov1 --mds mds1 --stripe_sz $STRIPE_BYTES \
50 --stripe_cnt $STRIPES_PER_OBJ --stripe_pattern 0 $LOVOPT || exit 20
52 for num in `seq $OSTCOUNT`; do
55 eval $DEVPTR=${!DEVPTR:=$TMP/$OST-`hostname`}
56 ${LMC} --add ost --node $HOSTNAME --lov lov1 --ost $OST --fstype $FSTYPE \
57 --dev ${!DEVPTR} --size $OSTSIZE $JARG $OSTOPT || exit 30
61 if [ -z "$ECHO_CLIENT" ]; then
62 # create client config
63 [ "x$CLIENTOPT" != "x" ] && CLIENTOPT="--clientoptions $CLIENTOPT"
64 ${LMC} --add mtpt --node $HOSTNAME --path $MOUNT \
65 --mds mds1 --lov lov1 $CLIENTOPT || exit 40
66 ${LMC} --add mtpt --node client --path $MOUNT2 \
67 --mds mds1 --lov lov1 $CLIENTOPT || exit 41
69 ${LMC} --add echo_client --node $HOSTNAME --ost lov1 || exit 42