github.com/swiftstack/ProxyFS@v0.0.0-20210203235616-4017c267d62f/sait/bin/start_proxyfs_and_swift (about) 1 #!/bin/bash 2 3 # Copyright (c) 2015-2021, NVIDIA CORPORATION. 4 # SPDX-License-Identifier: Apache-2.0 5 6 if [ "$1" == "1" ] 7 then 8 PRIVATE_IP_ADDR="192.168.22.114" 9 VOLUME_TO_SERVE="CommonVolume" 10 elif [ "$1" == "2" ] 11 then 12 PRIVATE_IP_ADDR="192.168.22.115" 13 VOLUME_TO_SERVE="" 14 elif [ "$1" == "3" ] 15 then 16 PRIVATE_IP_ADDR="192.168.22.116" 17 VOLUME_TO_SERVE="" 18 else 19 echo Arg1 is unexpected: $1 20 exit 1 21 fi 22 23 SAIT_DIR=sait$1 24 25 function await_proxyfsd_startup { 26 while true 27 do 28 /usr/bin/systemctl -q is-active proxyfsd 29 if [ $? -ne 0 ] 30 then 31 echo "ProxyFS failed to start. Exiting..." 32 exit 1 33 fi 34 curl http://$PRIVATE_IP_ADDR:15346/ 2>/dev/null >/dev/null 35 if [ $? -eq 0 ] 36 then 37 break 38 fi 39 sleep 1 40 done 41 } 42 43 function await_swift_startup { 44 while true 45 do 46 curl http://127.0.0.1:8090/info 2>/dev/null >/dev/null 47 if [ $? -eq 0 ] 48 then 49 break 50 fi 51 echo "Waiting for Swift to be started..." 52 sleep 1 53 done 54 } 55 56 function format_volume_if_necessary { 57 if [ "" != "$1" ] 58 then 59 sudo /vagrant/bin/mkproxyfs -I $1 /vagrant/src/github.com/swiftstack/ProxyFS/sait/$SAIT_DIR/proxyfs.conf SwiftClient.RetryLimit=1 60 if [ $? -ne 0 ] 61 then 62 echo "Could not pre-format $1" 63 exit 1 64 fi 65 fi 66 } 67 68 sudo mount -a 69 70 echo "Shutting down services and mount points..." 71 /vagrant/src/github.com/swiftstack/ProxyFS/sait/bin/unmount_and_stop_pfs 72 echo 73 echo "Bringing up services..." 74 if [ -f /usr/bin/systemctl ]; then 75 # Centos 76 sudo /usr/bin/systemctl start memcached 77 sudo /usr/bin/swift-init main start 78 await_swift_startup 79 format_volume_if_necessary $VOLUME_TO_SERVE 80 sudo /usr/bin/systemctl start proxyfsd 81 await_proxyfsd_startup 82 else 83 # Ubuntu (not tested!) 84 sudo /usr/sbin/service memcached start 85 sudo /usr/bin/swift-init main start 86 await_swift_startup 87 format_volume_if_necessary $VOLUME_TO_SERVE 88 sudo /usr/sbin/service proxyfsd start 89 await_proxyfsd_startup 90 fi