diff --git a/src/vstart.sh b/src/vstart.sh index bdf0f596dec..ff91a663688 100755 --- a/src/vstart.sh +++ b/src/vstart.sh @@ -1134,6 +1134,27 @@ EOF start_mds() { local mds=0 + if [ $new -eq 1 ]; then + if [ "$CEPH_NUM_FS" -gt "0" ] ; then + sleep 5 # time for MDS to come up as standby to avoid health warnings on fs creation + if [ "$CEPH_NUM_FS" -gt "1" ] ; then + ceph_adm fs flag set enable_multiple true --yes-i-really-mean-it + fi + + # wait for volume module to load + while ! ceph_adm fs volume ls ; do sleep 1 ; done + local fs=0 + for name in a b c d e f g h i j k l m n o p + do + ceph_adm fs volume create ${name} + ceph_adm fs authorize ${name} "client.fs_${name}" / rwp >> "$keyring_fn" + fs=$(($fs + 1)) + [ $fs -eq $CEPH_NUM_FS ] && break + done + fi + fi + ceph_adm fs set a allow_standby_replay true + for name in a b c d e f g h i j k l m n o p do [ $mds -eq $CEPH_NUM_MDS ] && break @@ -1174,27 +1195,6 @@ EOF #$CEPH_BIN/ceph-mds -d $ARGS --mds_thrash_fragments 0 --mds_thrash_exports 0 #--debug_ms 20 #ceph_adm mds set max_mds 2 done - - if [ $new -eq 1 ]; then - if [ "$CEPH_NUM_FS" -gt "0" ] ; then - sleep 5 # time for MDS to come up as standby to avoid health warnings on fs creation - if [ "$CEPH_NUM_FS" -gt "1" ] ; then - ceph_adm fs flag set enable_multiple true --yes-i-really-mean-it - fi - - # wait for volume module to load - while ! ceph_adm fs volume ls ; do sleep 1 ; done - local fs=0 - for name in a b c d e f g h i j k l m n o p - do - ceph_adm fs volume create ${name} - ceph_adm fs authorize ${name} "client.fs_${name}" / rwp >> "$keyring_fn" - fs=$(($fs + 1)) - [ $fs -eq $CEPH_NUM_FS ] && break - done - fi - fi - } # Ganesha Daemons requires nfs-ganesha nfs-ganesha-ceph nfs-ganesha-rados-grace