X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=src%2Ftools%2Ftest_service_latency.sh;h=fff0ead13ca2cf09c3f4098699867e6658485593;hb=57094f205e91e64fcc39e506ced430f2a4e2516e;hp=c72c744fbb36764b35d75aab76f8e6ea418fefbe;hpb=0a0f33855c2e24a0f1d7e45ccfe4895e0fde6e46;p=iec.git diff --git a/src/tools/test_service_latency.sh b/src/tools/test_service_latency.sh index c72c744..fff0ead 100755 --- a/src/tools/test_service_latency.sh +++ b/src/tools/test_service_latency.sh @@ -2,6 +2,7 @@ set -e localIP=$(ip route show default | cut -d " " -f 9) echo "localIP:"$localIP +echo "" if [ "x${1}" == "x" ]; then echo "No node IP defined, uses the local IP instead." @@ -10,14 +11,14 @@ fi nodeIP=$localIP aNum=1000 - display_help () { echo "Usage:" echo " " echo "Please input the nodeIP and access number" } -ARGS=`getopt -a -o s:n:h -l nodeIP:,number:,help -- "$@"` + +ARGS=`getopt -a -o s:n:c:p:k::h:: -l nodeIP:,number:,serviceIP:,nodePort:,nodeOnly::,help:: -- "$@"` eval set -- "${ARGS}" while true do @@ -32,12 +33,30 @@ do echo "access number=$2" shift ;; + -c|--serviceIP) + svcIP="$2" + echo "Service IP=$2" + shift + ;; + -p|--nodePort) + nodePort="$2" + echo "nodePort=$2" + shift + ;; + -k|--nodeOnly) + nodeOnly="true" + echo "Ignore accessing service IP test." + echo "nodeOnly=true" + ;; -h|--help) echo "this is help case" display_help + exit 0 ;; --) - echo "Now do the test:" + echo "" + echo "Use default args, now do the test:" + echo "" shift break ;; @@ -46,26 +65,43 @@ shift done -svcIP=$(kubectl get svc | grep nginx |grep -i "nodeport" | awk -F'[ ]+' '{print $3}') -echo "Service IP:"$svcIP -nodePort=$(kubectl get svc | grep nginx |grep -i "nodeport" | awk -F'[ ]+' '{print $5}' | cut -d ":" -f 2 |cut -d "/" -f 1) -echo "NodePort:"$nodePort +if [[ "x${svcIP}" == "x" && ${onlyNode} != "true" ]]; then + echo "No service IP defined, try to find locally:" + svcIP=$(kubectl get svc | grep nginx |grep -i "nodeport" | awk -F'[ ]+' '{print $3}') + echo "Service IP:"$svcIP +fi + +if [ "x${nodePort}" == "x" ]; then + echo "No nodePort defined, try to find locally:" + nodePort=$(kubectl get svc | grep nginx |grep -i "nodeport" | awk -F'[ ]+' '{print $5}' | cut -d ":" -f 2 |cut -d "/" -f 1) + echo "NodePort:"$nodePort +fi accessNum=$((aNum + 0)) -echo "Now access the service IP, $aNum times:" -#for i in {1..$(($aNum + 0))} START=1 END=$aNum -for (( c=$START; c<=$END; c++)) -do +if [ "x${nodeOnly}" != "xtrue" ]; then + echo "Now access the service IP $svcIP:80, $aNum times, time total:" + for (( c=$START; c<=$END; c++)) + do curl -w "%{time_total}\n" -o /dev/null -s http://$svcIP -done | jq -s add/length + done | jq -s add/length + echo "Now access the service IP $svcIP:80, $aNum times, time connect:" + for (( c=$START; c<=$END; c++)) + do + curl -w "%{time_connect}\n" -o /dev/null -s http://$svcIP + done | jq -s add/length +fi -echo "Now access the NodePort, $aNum times" +echo "" +echo "Now access the $nodeIP:$nodePort, $aNum times, time total:" +for (( c=$START; c<=$END; c++)) +do + curl -w "%{time_total}\n" -o /dev/null -s $nodeIP:$nodePort +done | jq -s add/length +echo "Now access the $nodeIP:$nodePort, $aNum times, time connect:" for (( c=$START; c<=$END; c++)) do - #curl -w "%{time_total}\n" -o /dev/null -s http://10.169.210.208:31942 - #curl -w "%{time_total}\n" -o /dev/null -s http://10.169.210.208:31942 - curl -w "%{time_total}\n" -o /dev/null -s $localIP:$nodePort + curl -w "%{time_connect}\n" -o /dev/null -s $nodeIP:$nodePort done | jq -s add/length