QTIP Index calculation along with a script to run qtip from docker 91/5591/1
authorNauman_Ahad <Nauman_Ahad@dell.com>
Tue, 5 Jan 2016 16:01:17 +0000 (21:01 +0500)
committerNauman_Ahad <Nauman_Ahad@dell.com>
Tue, 5 Jan 2016 16:01:17 +0000 (21:01 +0500)
Calculation of Result Indices for
1. Compute suite
2. Storage suite
3. Network suite

A script to run qtip from inside the docker container (for Jenkins Jobs)

Resolved bugs with ssl_trasform.py, sys info collection on ubuntu and
system information collection script

Change-Id: Ic5abb3dbd0012cd2257b588b1b3067a6677b1f5d
Signed-off-by: Nauman_Ahad <Nauman_Ahad@dell.com>
36 files changed:
benchmarks/playbooks/info_script/info_collect.py
benchmarks/playbooks/result_transform/ssl/ssl_transform.py
benchmarks/playbooks/sys_info_pbook.yaml
data/fetch_os_creds.sh [moved from fetch_os_creds.sh with 83% similarity]
data/get_env_info.sh
data/qtip_creds.sh
data/ref_results/.reference.json.swp [new file with mode: 0644]
data/ref_results/compute_benchmarks_indices.py [new file with mode: 0644]
data/ref_results/compute_suite.py [new file with mode: 0644]
data/ref_results/generator_ref_json.py [new file with mode: 0644]
data/ref_results/network_benchmarks_indices.py [new file with mode: 0644]
data/ref_results/network_suite.py [new file with mode: 0644]
data/ref_results/reference.json [new file with mode: 0644]
data/ref_results/result_accum.py [new file with mode: 0644]
data/ref_results/storage_benchmarks_indices.py [new file with mode: 0644]
data/ref_results/storage_suite.py [new file with mode: 0644]
docker/Dockerfile
docker/run_qtip.sh [new file with mode: 0755]
func/env_setup.py
test_cases/dell-us-testing-bm-1/compute/dhrystone_bm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/compute/dhrystone_vm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/compute/dpi_bm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/compute/dpi_vm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/compute/ssl_bm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/compute/ssl_vm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/compute/whetstone_bm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/compute/whetstone_vm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/network/iperf_topology_1.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/network/iperf_topology_2.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/network/iperf_topology_3.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/network/netperf.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/network/pktgen.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/storage/fio_bm.yaml [new file with mode: 0644]
test_cases/dell-us-testing-bm-1/storage/fio_vm.yaml [new file with mode: 0644]
test_list/compute.txt
test_list/storage.txt

index b352651..7e5544c 100644 (file)
@@ -17,7 +17,7 @@ est_ob2.close()
 
 Info_dict={};
 inxi_host=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Host:).*(?=Kernel)' """).read().lstrip().rstrip()
-inxi_mem=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Memory:).*(?=Init)' """).read().lstrip().rstrip()
+inxi_mem=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=Memory:).*(?=MB)' """).read().lstrip().rstrip()+"MB"
 inxi_cpu=os.popen("""cat $PWD/est_1 | grep -o -P '(?<=CPU).*(?=speed)' | cut -f2 -d':'""").read().lstrip().rstrip()
 inxi_distro=os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Distro:).*(?=Machine:)' """).read().rstrip().lstrip()
 inxi_kernel=os.popen(""" cat $PWD/est_1 | grep -o -P '(?<=Kernel:).*(?=Console:)' """).read().rstrip().lstrip()
@@ -72,7 +72,7 @@ if (network_flag == 'n'):
                 Info_dict['9_Network_Interfaces']['Interface_'+str(x)]['2_Interface_info']=inxi_card_2 
             else:
                 print "No network cards"
-    os.system("bwm-ng -c 1 | grep -v '=' | grep -v 'iface' | grep -v '-'   > bwm_dump")
+    os.system("bwm-ng -o plain -c 1 | grep -v '=' | grep -v 'iface' | grep -v '-'   > bwm_dump")
     n_interface=int(os.popen(" cat bwm_dump | grep -v 'total' |  wc -l ").read().rstrip())
     interface={};
     for x in range (1,n_interface):
@@ -82,7 +82,7 @@ if (network_flag == 'n'):
         interface[str(interface_name)]['Tx (KB/s)']=os.popen(" cat bwm_dump | awk 'NR=="+str(x)+"' | awk '{print $4}' ").read().rstrip()
         interface[str(interface_name)]['Total (KB/s)']=os.popen(" cat bwm_dump | awk 'NR== "+str(x)+"' | awk '{print $6}' ").read().rstrip()
  
-    Info_dict['Interface I/O']=interface
+    Info_dict['10.Interface I/O']=interface
 
 print Info_dict
     
index 20ca5cf..6e63225 100644 (file)
@@ -48,18 +48,18 @@ os.system("cat AES-128-CBC_dump >> " + hostname + "-" + time_stamp + ".log")
 result = {}
 
 result['1. Version'] = [openssl_version]
-result['2. RSA singatures'] = {}
-result['2. RSA singatures']['1. 512 bits (sign/s)'] = [rsa_512_sps]
-result['2. RSA singatures']['2. 1024 bits (sign/s)'] = [rsa_1024_sps]
-result['2. RSA singatures']['3. 2048 bits (sign/s)'] = [rsa_2048_sps]
-result['2. RSA singatures']['4. 4096 bits (sign/s)'] = [rsa_4096_sps]
+result['2. RSA signatures'] = {}
+result['2. RSA signatures']['1. 512 bits (sign/s)'] = rsa_512_sps
+result['2. RSA signatures']['2. 1024 bits (sign/s)'] = rsa_1024_sps
+result['2. RSA signatures']['3. 2048 bits (sign/s)'] = rsa_2048_sps
+result['2. RSA signatures']['4. 4096 bits (sign/s)'] = rsa_4096_sps
 
 result['3. AES-128-cbc throughput'] = {}
-result['3. AES-128-cbc throughput']['1. 16 Bytes block (B/sec)'] = [aes_16B]
-result['3. AES-128-cbc throughput']['2. 64 Bytes block (B/sec)'] = [aes_64B]
-result['3. AES-128-cbc throughput']['3. 256 Bytes block (B/sec)'] = [aes_256B]
-result['3. AES-128-cbc throughput']['4. 1024 Bytes block (B/sec)'] = [aes_1024B]
-result['3. AES-128-cbc throughput']['5. 16 Bytes block (B/sec)'] = [aes_8192B]
+result['3. AES-128-cbc throughput']['1. 16 Bytes block (B/sec)'] = aes_16B
+result['3. AES-128-cbc throughput']['2. 64 Bytes block (B/sec)'] = aes_64B
+result['3. AES-128-cbc throughput']['3. 256 Bytes block (B/sec)'] = aes_256B
+result['3. AES-128-cbc throughput']['4. 1024 Bytes block (B/sec)'] = aes_1024B
+result['3. AES-128-cbc throughput']['5. 8192 Bytes block (B/sec)'] = aes_8192B
 
 
 with open('./result_temp', 'w+') as result_file:
index cca6c94..b5415aa 100644 (file)
@@ -5,7 +5,7 @@
      shell: yum install inxi -y
      when: ansible_os_family == "RedHat"
    - name: system info collection tool install when Ubuntu
-     shell: apt-get install inxi -y
+     shell: apt-get update && apt-get install inxi -y
      when: ansible_os_family  == "Debian"
    - name: Install ansible copy dependencies if remote host has selinux enabled
      shell: yum  install libselinux-python -y
similarity index 83%
rename from fetch_os_creds.sh
rename to data/fetch_os_creds.sh
index cefc857..3b493e1 100755 (executable)
@@ -100,40 +100,24 @@ if [ "$installer_type" == "fuel" ]; then
     #NOTE: this is super ugly sed 's/v1\/.*/v1\//'OS_AUTH_URL
     # but sometimes the output of endpoint-list is like this: http://172.30.9.70:8004/v1/%(tenant_id)s
 
-
-elif [ "$installer_type" == "foreman" ]; then
-    #ip_foreman="172.30.10.73"
-    controller="oscontroller1.opnfv.com"
+elif [ "$installer_type" == "apex" ]; then
     verify_connectivity $installer_ip
 
-    # Check if controller is alive (here is more difficult to get the ip from a command like "fuel node")
-    sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
-        "sshpass -p Op3nStack ssh $ssh_options root@${controller} 'ls'" &> /dev/null
-    if [ $? -ne 0 ]; then
-        error "The controller ${controller} is not up. Please check that the POD is correctly deployed."
+    # The credentials file is located in the Instack VM (192.0.2.1)
+    # NOTE: This might change for bare metal deployments
+    info "Fetching rc file from Instack VM $installer_ip..."
+    if [ -f /root/.ssh/id_rsa ]; then
+        chmod 600 /root/.ssh/id_rsa
     fi
-
-    info "Fetching openrc from a Foreman Controller '${controller}'..."
-    sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
-        "sshpass -p Op3nStack scp $ssh_options root@${controller}:~/keystonerc_admin ." &> /dev/null
-    sshpass -p vagrant scp $ssh_options root@${installer_ip}:~/keystonerc_admin $dest_path &> /dev/null
-
-    #This file contains the mgmt keystone API, we need the public one for our rc file
-    admin_ip=$(cat $dest_path | grep "OS_AUTH_URL" | sed 's/^.*\=//' | sed "s/^\([\"']\)\(.*\)\1\$/\2/g" | sed s'/\/$//')
-    public_ip=$(sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
-        "sshpass -p Op3nStack ssh $ssh_options root@${controller} \
-        'source keystonerc_admin;keystone endpoint-list'" \
-        | grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1) &> /dev/null
+    sudo scp $ssh_options root@$installer_ip:/home/stack/overcloudrc $dest_path
 
 elif [ "$installer_type" == "compass" ]; then
-    #ip_compass="10.1.0.12"
     verify_connectivity $installer_ip
-
-    # controller_ip='10.1.0.222'
-    controller_ip=$(sshpass -p'root' ssh 2>/dev/null -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no root@10.1.0.12 \
-        'mysql -ucompass -pcompass -Dcompass -e"select package_config  from cluster;"' \
-        | awk -F"," '{for(i=1;i<NF;i++)if($i~/\"ha_proxy\": {\"vip\":/)print $i}' \
+    controller_ip=$(sshpass -p'root' ssh 2>/dev/null $ssh_options root@${installer_ip} \
+        'mysql -ucompass -pcompass -Dcompass -e"select *  from cluster;"' \
+        | awk -F"," '{for(i=1;i<NF;i++)if($i~/\"host1\"/) {print $(i+1);break;}}'  \
         | grep -oP "\d+.\d+.\d+.\d+")
+
     if [ -z $controller_ip ]; then
         error "The controller $controller_ip is not up. Please check that the POD is correctly deployed."
     fi
@@ -152,18 +136,51 @@ elif [ "$installer_type" == "compass" ]; then
         | grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1)
     info "public_ip: $public_ip"
 
+
+elif [ "$installer_type" == "joid" ]; then
+    # do nothing...for the moment
+    # we can either do a scp from the jumphost or use the -v option to transmit the param to the docker file
+    echo "Do nothing, creds will be provided through volume option at docker creation for joid"
+
+elif [ "$installer_type" == "foreman" ]; then
+    #ip_foreman="172.30.10.73"
+    controller="oscontroller1.opnfv.com"
+    verify_connectivity $installer_ip
+
+    # Check if controller is alive (here is more difficult to get the ip from a command like "fuel node")
+    sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
+        "sshpass -p Op3nStack ssh $ssh_options root@${controller} 'ls'" &> /dev/null
+    if [ $? -ne 0 ]; then
+        error "The controller ${controller} is not up. Please check that the POD is correctly deployed."
+    fi
+
+    info "Fetching openrc from a Foreman Controller '${controller}'..."
+    sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
+        "sshpass -p Op3nStack scp $ssh_options root@${controller}:~/keystonerc_admin ." &> /dev/null
+    sshpass -p vagrant scp $ssh_options root@${installer_ip}:~/keystonerc_admin $dest_path &> /dev/null
+
+    #This file contains the mgmt keystone API, we need the public one for our rc file
+    admin_ip=$(cat $dest_path | grep "OS_AUTH_URL" | sed 's/^.*\=//' | sed "s/^\([\"']\)\(.*\)\1\$/\2/g" | sed s'/\/$//')
+    public_ip=$(sshpass -p vagrant ssh $ssh_options root@${installer_ip} \
+        "sshpass -p Op3nStack ssh $ssh_options root@${controller} \
+        'source keystonerc_admin;keystone endpoint-list'" \
+        | grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1) &> /dev/null
+
 else
     error "Installer $installer is not supported by this script"
 fi
 
 
+if [ ! -f $dest_path ]; then
+    error "There has been an error retrieving the credentials"
+fi
 
-if [ "$public_ip" == "" ]; then
-    error "Cannot retrieve the public IP from keystone"
+if [ "$public_ip" != "" ]; then
+    info "Exchanging keystone public IP in rc file to $public_ip"
+    sed -i  "/OS_AUTH_URL/c\export OS_AUTH_URL=\'$public_ip'" $dest_path
 fi
 
-info "Keystone public IP is $public_ip"
-sed -i  "/OS_AUTH_URL/c\export OS_AUTH_URL=\'$public_ip'" $dest_path
+
 
 echo "-------- Credentials: --------"
 cat $dest_path
index 98ca68a..98ad6dd 100755 (executable)
@@ -19,3 +19,4 @@ while getopts ":n:i:" optchar; do
            usage ;;
     esac
 done
+./fetch_os_creds.sh -d opnfv-creds.sh
index e2619d6..085e3a6 100755 (executable)
@@ -16,8 +16,8 @@ case "$INSTALLER_TYPE" in
        *)
         echo "Unkown installer $INSTALLER_TYPE specified";;
 esac
-
+echo $PWD
 sshoptions="-o StrictHostKeyChecking=no"
-sshpass -p $PSWD scp $sshoptions QtipKey.pub root@$INSTALLER_IP:/root
+sshpass -p $PSWD scp $sshoptions ./data/QtipKey.pub root@$INSTALLER_IP:/root
 sshpass -p $PSWD ssh $sshoptions root@$INSTALLER_IP "ssh-copy-id -i /root/QtipKey.pub root@$DEST_IP && rm -rf /root/QtipKey.pub"
 
diff --git a/data/ref_results/.reference.json.swp b/data/ref_results/.reference.json.swp
new file mode 100644 (file)
index 0000000..45891cd
Binary files /dev/null and b/data/ref_results/.reference.json.swp differ
diff --git a/data/ref_results/compute_benchmarks_indices.py b/data/ref_results/compute_benchmarks_indices.py
new file mode 100644 (file)
index 0000000..305b6b0
--- /dev/null
@@ -0,0 +1,142 @@
+import os
+import json
+from result_accum import result_concat as concat
+
+
+def dpi_index ():
+    total=0
+    dpi_dict=concat('../../results/dpi/')
+    for k,v in dpi_dict.iteritems():
+        for i,j in dpi_dict[k].iteritems():
+            if i=="3  DPI result": 
+                raw_num=int(dpi_dict[k][i]["DPI_benchmark(Gb/s)"])
+                total=total+raw_num
+    
+    l=len(dpi_dict)
+    with open ('./reference.json') as reference_file:
+        reference_djson=json.load(reference_file)
+        dpi_ref=reference_djson['compute']['dpi']
+    dpi_index= float((total/l)/dpi_ref)
+    dpi_dict_i={};
+    dpi_dict_i['1. Index']=dpi_index
+    dpi_dict_i['2. Results']=dpi_dict
+    return dpi_dict_i
+
+def dwstone_index (file_dir,benchmark):
+    total=0
+    dwstone_dict=concat('../../results/'+file_dir+'/')
+    for k,v in dwstone_dict.iteritems():
+        for i,j in dwstone_dict[k].iteritems():
+            if i=="3  "+benchmark+" result":
+               for a,b in dwstone_dict[k][i].iteritems():
+                   if a=="2.Single CPU test":
+                       raw_num=float(dwstone_dict[k][i][a]["2.Index score"])
+                       total=total+raw_num
+   
+    l= len(dwstone_dict)
+    
+    with open ('./reference.json') as reference_file:
+        reference_djson=json.load(reference_file)
+        dwstone_ref=reference_djson['compute'][file_dir]
+    
+    dwstone_index=float((total/l)/dwstone_ref)
+    dwstone_dict_i={};
+    dwstone_dict_i['1. Index']=dwstone_index
+    dwstone_dict_i['2. Results']=dwstone_dict
+    return dwstone_dict_i
+
+def ssl_index ():
+    total_512rsa=0
+    total_1024rsa=0
+    total_2048rsa=0
+    total_4096rsa=0
+
+    total_16aes=0
+    total_64aes=0
+    total_256aes=0
+    total_1024aes=0
+    total_8192aes=0
+
+    ssl_dict=concat('../../results/ssl/')
+    for k,v in ssl_dict.iteritems():
+        for i,j in ssl_dict[k].iteritems():
+            if i=="3  SSL result":
+               for a,b in ssl_dict[k][i].iteritems():
+                   if a=="2. RSA signatures":
+                       raw_num_512rsa=float(ssl_dict[k][i][a]["1. 512 bits (sign/s)"])
+                       raw_num_1024rsa=float(ssl_dict[k][i][a]["2. 1024 bits (sign/s)"])
+                       raw_num_2048rsa=float(ssl_dict[k][i][a]["3. 2048 bits (sign/s)"])
+                       raw_num_4096rsa=float(ssl_dict[k][i][a]["4. 4096 bits (sign/s)"])
+                       total_512rsa=total_512rsa+raw_num_512rsa
+                       total_1024rsa=total_512rsa+raw_num_1024rsa
+                       total_2048rsa=total_2048rsa+raw_num_2048rsa
+                       total_4096rsa=total_4096rsa+raw_num_4096rsa
+                   elif a=="3. AES-128-cbc throughput":
+                       raw_num_16aes=float(ssl_dict[k][i][a]["1. 16 Bytes block (B/sec)"][:-1])*1000
+                       raw_num_64aes=float(ssl_dict[k][i][a]["2. 64 Bytes block (B/sec)"][:-1])*1000
+                       raw_num_256aes=float(ssl_dict[k][i][a]["3. 256 Bytes block (B/sec)"][:-1])*1000
+                       raw_num_1024aes=float(ssl_dict[k][i][a]["4. 1024 Bytes block (B/sec)"][:-1])*1000
+                       raw_num_8192aes=float(ssl_dict[k][i][a]["5. 8192 Bytes block (B/sec)"][:-1])*1000
+                       total_16aes=raw_num_16aes+total_16aes
+                       total_64aes=raw_num_64aes+total_64aes
+                       total_256aes=raw_num_256aes+total_256aes
+                       total_1024aes=raw_num_1024aes+total_1024aes
+                       total_8192aes=raw_num_8192aes+total_8192aes
+
+    with open ('./reference.json') as reference_file:
+        reference_djson=json.load(reference_file)
+        ssl_ref512rsa=reference_djson['compute']['ssl']['RSA']['512b']
+        ssl_ref1024rsa=reference_djson['compute']['ssl']['RSA']['1024b']                
+        ssl_ref2048rsa=reference_djson['compute']['ssl']['RSA']['2048b']
+        ssl_ref4096rsa=reference_djson['compute']['ssl']['RSA']['4096b']
+          
+     
+        ssl_ref16aes=reference_djson['compute']['ssl']['AES']['16B']
+        ssl_ref64aes=reference_djson['compute']['ssl']['AES']['64B']
+        ssl_ref256aes=reference_djson['compute']['ssl']['AES']['256B']
+        ssl_ref1024aes=reference_djson['compute']['ssl']['AES']['1024B']
+        ssl_ref8192aes=reference_djson['compute']['ssl']['AES']['8192B']
+
+
+    l=len(ssl_dict)    
+    index_512rsa=float((total_512rsa/l)/ssl_ref512rsa)
+    index_1024rsa= float((total_1024rsa/l)/ssl_ref1024rsa)
+    index_2048= float((total_2048rsa/l)/ssl_ref2048rsa)
+    index_4096= float((total_4096rsa/l)/ssl_ref4096rsa)
+    
+    index_16aes=float((total_16aes/l)/ssl_ref16aes)
+    index_64aes=float((total_64aes/l)/ssl_ref64aes)
+    index_256aes=float((total_256aes/l)/ssl_ref256aes)
+    index_1024aes=float((total_1024aes/l)/ssl_ref1024aes)
+    index_8192aes=float((total_8192aes/l)/ssl_ref8192aes)
+      
+    index_sum= (index_512rsa+index_1024rsa+index_2048+index_4096+index_16aes+index_64aes+index_256aes+index_1024aes+index_8192aes)
+    ssl_index=float(index_sum/9)
+    ssl_dict_i={};
+    ssl_dict_i['1. Index']=ssl_index
+    ssl_dict_i['2. Results']=ssl_dict
+    return ssl_dict_i
+
+  
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    
diff --git a/data/ref_results/compute_suite.py b/data/ref_results/compute_suite.py
new file mode 100644 (file)
index 0000000..a57a4b0
--- /dev/null
@@ -0,0 +1,22 @@
+import json
+import compute_benchmarks_indices as benchmark_indices
+
+
+compute_dict={};
+compute_dict['DPI']=benchmark_indices.dpi_index()
+compute_dict['Dhrystone']=benchmark_indices.dwstone_index('dhrystone','Dhrystone')
+compute_dict['Whetstone']=benchmark_indices.dwstone_index('whetstone','Whetstone') 
+compute_dict['SSL']=benchmark_indices.ssl_index()
+
+compute_bench_list=['DPI','Dhrystone','Whetstone','SSL']
+temp=0
+for benchmark in compute_bench_list:
+    temp=temp+float(compute_dict[benchmark]['1. Index'])
+compute_suite_index=temp/len(compute_bench_list)
+
+compute_dict_f={};
+compute_dict_f['1. Compute Index']=compute_suite_index
+compute_dict_f['2. Compute suite results']=compute_dict
+with open('../../results/compute_result.json', 'w+') as result_json:
+    json.dump(compute_dict_f, result_json, indent=4, sort_keys=True)
+
diff --git a/data/ref_results/generator_ref_json.py b/data/ref_results/generator_ref_json.py
new file mode 100644 (file)
index 0000000..986ac61
--- /dev/null
@@ -0,0 +1,36 @@
+import os
+import json
+
+dict_ref={};
+dict_ref['compute']={};
+dict_ref['compute']['dpi']=8.12
+dict_ref['compute']['whetstone']=859.1
+dict_ref['compute']['dhrystone']=3146.66
+dict_ref['compute']['ssl']={};
+dict_ref['compute']['ssl']['RSA']={};
+dict_ref['compute']['ssl']['AES']={};
+dict_ref['compute']['ssl']['RSA']['512b']=22148.9
+dict_ref['compute']['ssl']['RSA']['1024b']=7931.44
+dict_ref['compute']['ssl']['RSA']['2048b']=1544.3
+dict_ref['compute']['ssl']['RSA']['4096b']=161.92
+
+dict_ref['compute']['ssl']['AES']['16B']=735490250
+dict_ref['compute']['ssl']['AES']['64B']=788429210
+dict_ref['compute']['ssl']['AES']['256B']=803323650
+dict_ref['compute']['ssl']['AES']['1024B']=808861020
+dict_ref['compute']['ssl']['AES']['8192B']=807701160
+
+
+dict_ref['storage']={};
+dict_ref['storage']['read']={};
+dict_ref['storage']['write']={};
+dict_ref['storage']['read']['IOPS']= 6995
+dict_ref['storage']['write']['IOPS']= 6990
+
+dict_ref['network']={};
+dict_ref['network']['iperf']={};
+dict_ref['network']['iperf']['throughput received(b/s)']=9973180000.0
+
+with open('reference.json', 'w+') as result_json:
+    json.dump(dict_ref, result_json, indent=4, sort_keys=True)
+
diff --git a/data/ref_results/network_benchmarks_indices.py b/data/ref_results/network_benchmarks_indices.py
new file mode 100644 (file)
index 0000000..f841a65
--- /dev/null
@@ -0,0 +1,28 @@
+import os
+import json
+from result_accum import result_concat as concat
+
+def iperf_index ():
+    total_r=0
+    iperf_dict=concat('../../results/iperf/')
+    for k,v in iperf_dict.iteritems():
+        for i,j in iperf_dict[k].iteritems():
+            if i=="3  IPERF result":
+               for a,b in iperf_dict[k][i].iteritems():        
+                   if a=="2. Bandwidth":
+                      raw_num=iperf_dict[k][i][a]['2. throughput Received (b/s)']
+                      total_r=total_r+raw_num
+
+    l= len(iperf_dict)
+
+    with open ('./reference.json') as reference_file:
+        reference_djson=json.load(reference_file)
+        iperf_ref_r=reference_djson['network']['iperf']['throughput received(b/s)']
+       
+
+    iperf_index_r=float((total_r/l)/iperf_ref_r)
+    iperf_dict_i={};
+    iperf_dict_i['1. Index']=iperf_index_r
+    iperf_dict_i['2. Results']=iperf_dict
+    return iperf_dict_i
+
diff --git a/data/ref_results/network_suite.py b/data/ref_results/network_suite.py
new file mode 100644 (file)
index 0000000..df80b8b
--- /dev/null
@@ -0,0 +1,22 @@
+import json
+import network_benchmarks_indices as benchmark_indices
+
+
+network_dict={};
+network_dict['IPERF']=benchmark_indices.iperf_index()
+
+
+
+
+network_bench_list=['IPERF']
+temp=0
+for benchmark in network_bench_list:
+    temp=temp+float(network_dict[benchmark]['1. Index'])
+network_suite_index=temp/len(network_bench_list)
+
+network_dict_f={};
+network_dict_f['1. Network Index']=network_suite_index
+network_dict_f['2. Network suite results']=network_dict
+with open('../../results/network_result.json', 'w+') as result_json:
+    json.dump(network_dict_f, result_json, indent=4, sort_keys=True)
+
diff --git a/data/ref_results/reference.json b/data/ref_results/reference.json
new file mode 100644 (file)
index 0000000..7ded553
--- /dev/null
@@ -0,0 +1,35 @@
+{
+    "compute": {
+        "dhrystone": 3146.66, 
+        "dpi": 8.12, 
+        "ssl": {
+            "AES": {
+                "1024B": 808861020, 
+                "16B": 735490250, 
+                "256B": 803323650, 
+                "64B": 788429210, 
+                "8192B": 807701160
+            }, 
+            "RSA": {
+                "1024b": 7931.44, 
+                "2048b": 1544.3, 
+                "4096b": 161.92, 
+                "512b": 22148.9
+            }
+        }, 
+        "whetstone": 859.1
+    }, 
+    "network": {
+        "iperf": {
+            "throughput received(b/s)": 9973180000.0
+        }
+    }, 
+    "storage": {
+        "read": {
+            "IOPS": 6995
+        }, 
+        "write": {
+            "IOPS": 6990
+        }
+    }
+}
\ No newline at end of file
diff --git a/data/ref_results/result_accum.py b/data/ref_results/result_accum.py
new file mode 100644 (file)
index 0000000..4c60004
--- /dev/null
@@ -0,0 +1,31 @@
+import os
+import json
+
+def result_concat(targ_dir):
+    list_vm=[];
+    list_bm=[];
+    diction={};
+    for file in os.listdir(targ_dir):
+        if file.endswith(".json"):
+            if file.startswith("instance"):
+                print str(file)
+                list_vm.append(file)
+                #echo "I am here"
+            else:
+                list_bm.append(file)
+    l=len(list_bm)
+    k=len(list_vm)
+
+    for x in range (0,l):
+        file_t=list_bm[x]
+        with open (targ_dir+file_t) as result_file:
+            result_djson=json.load(result_file)
+            diction['Baremetal'+str(int(x+1))]=result_djson
+
+    for x in range (0,k):
+        file_t=list_vm[x]
+        with open (targ_dir+file_t) as result_file:
+            result_djson=json.load(result_file)
+            diction['Virtual Machine '+str(x+1)]=result_djson
+    return diction
+
diff --git a/data/ref_results/storage_benchmarks_indices.py b/data/ref_results/storage_benchmarks_indices.py
new file mode 100644 (file)
index 0000000..6114ad6
--- /dev/null
@@ -0,0 +1,35 @@
+import os
+import json
+from result_accum import result_concat as concat
+
+def fio_index ():
+    total_r=0
+    total_w=0
+    fio_dict=concat('../../results/fio/')
+    for k,v in fio_dict.iteritems():
+        for i,j in fio_dict[k].iteritems():
+            if i=="3  FIO result":
+               for a,b in fio_dict[k][i].iteritems():
+                   for c,d in fio_dict[k][i][a].iteritems():
+                        if c=='read':
+                            raw_num=float(fio_dict[k][i][a][c]["IO/sec"])                   
+                            total_r=total_r+raw_num
+                        elif c=='write':
+                            raw_num=float(fio_dict[k][i][a][c]["IO/sec"])
+                            total_w=total_w+raw_num
+
+    l= len(fio_dict)
+
+    with open ('./reference.json') as reference_file:
+        reference_djson=json.load(reference_file)
+        fio_ref_r=reference_djson['storage']['read']['IOPS']
+        fio_ref_w=reference_djson['storage']['write']['IOPS']
+
+    fio_index_r=float((total_r/l)/fio_ref_r)
+    fio_index_w=float((total_w/l)/fio_ref_w)
+    fio_index=float((fio_index_r+fio_index_w)/2)
+    fio_dict_i={};
+    fio_dict_i['1. Index']=fio_index
+    fio_dict_i['2. Results']=fio_dict
+    return fio_dict_i
+
diff --git a/data/ref_results/storage_suite.py b/data/ref_results/storage_suite.py
new file mode 100644 (file)
index 0000000..fe4e940
--- /dev/null
@@ -0,0 +1,22 @@
+import json
+import storage_benchmarks_indices as benchmark_indices
+
+
+storage_dict={};
+storage_dict['FIO']=benchmark_indices.fio_index()
+
+
+
+
+storage_bench_list=['FIO']
+temp=0
+for benchmark in storage_bench_list:
+    temp=temp+float(storage_dict[benchmark]['1. Index'])
+storage_suite_index=temp/len(storage_bench_list)
+
+storage_dict_f={};
+storage_dict_f['1. Storage Index']=storage_suite_index
+storage_dict_f['2. Storage suite results']=storage_dict
+with open('../../results/storage_result.json', 'w+') as result_json:
+    json.dump(storage_dict_f, result_json, indent=4, sort_keys=True)
+
index b0d512f..0087689 100644 (file)
@@ -10,7 +10,8 @@ LABEL version="0.1" description="OPNFV QTIP Docker container"
 
 
 
-ENV repos_dir /home/opnfv/repos
+ENV REPOS_DIR /home/opnfv/repos
+ENV QTIP_DIR /home/opnfv/repos/qtip
 WORKDIR /home/opnfv
 
 
diff --git a/docker/run_qtip.sh b/docker/run_qtip.sh
new file mode 100755 (executable)
index 0000000..dd3d322
--- /dev/null
@@ -0,0 +1,17 @@
+#! /bin/bash
+
+cp ${REPOS_DIR}/releng/utils/fetch_os_creds.sh ${QTIP_DIR}/data/
+cd ${QTIP_DIR}/data  &&  source get_env_info.sh -n ${INSTALLER_TYPE} -i ${INSTALLER_IP}
+source ${QTIP_DIR}/data/opnfv-creds.sh
+cd ${QTIP_DIR}  && python qtip.py -l ${LAB} -f compute.txt
+cd ${QTIP_DIR}  && python qtip.py -l ${LAB} -f storage.txt
+cd ${QTIP_DIR}  && python qtip.py -l ${LAB} -f network.txt
+
+cd ${QTIP_DIR}/data/ref_results/ $$ python compute_suite.py
+cd ${QTIP_DIR}/data/ref_results/ $$ python storage_suite.py
+cd ${QTIP_DIR}/data/ref_results/ $$ python network_suite.py
+
+
+
+
+
index a888046..c0e1b53 100644 (file)
@@ -57,15 +57,15 @@ class Env_setup():
 
                 ssh_c = 'ssh-keyscan {0} >> ~/.ssh/known_hosts'.format(k)
 
-                #os.system(ssh_c)
-                ssh_cmd = 'expect ./data/ssh_exch.exp {0} {1}'.format(ipvar, pwvar)
+                os.system(ssh_c)
+                ssh_cmd = './data/qtip_creds.sh  {0}'.format(ipvar)
                 print ssh_cmd
                 res = os.system(ssh_cmd) 
                 for infinity in range(100):
                     try :
                         ssh = paramiko.SSHClient()
                         ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
-                        ssh.connect(k , username = 'root', password = v)
+                        ssh.connect(k , key_filename= './data/QtipKey')
                         stdin, stdout, stderr = ssh.exec_command('ls')
                         print('SSH successful')
                         break
@@ -79,7 +79,7 @@ class Env_setup():
                 time.sleep(3)
                 os.system(ssh_c)
 
-                for infinity in range(100):
+                for infinity in range(10):
                     try :
                         ssh = paramiko.SSHClient()
                         ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
diff --git a/test_cases/dell-us-testing-bm-1/compute/dhrystone_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/dhrystone_bm.yaml
new file mode 100644 (file)
index 0000000..022cf5e
--- /dev/null
@@ -0,0 +1,35 @@
+  
+Scenario:
+  benchmark: dhrystone
+  host: machine_1, machine_2
+  server: 
+
+Context:
+  Host_Machines:
+    machine_1:
+      ip: 10.20.0.4
+      pw: 
+      role: host
+    machine_2:
+      ip: 10.20.0.5
+      pw:
+      role: host
+
+  Virtual_Machines:  
+    
+
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "dhrystone"
+  Overview: >
+        ''' This test will run the dhrystone benchmark in parallel  on machine_1 and machine_2.\n
+         if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+        virtualmachine_1:
+          availability_zone:
+          public_network:
+          OS_image:
+          flavor:
+          role: '''
+  
diff --git a/test_cases/dell-us-testing-bm-1/compute/dhrystone_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/dhrystone_vm.yaml
new file mode 100644 (file)
index 0000000..c14399b
--- /dev/null
@@ -0,0 +1,45 @@
+Scenario:
+  benchmark: dhrystone
+  host: virtualmachine_1, virtualmachine_2
+  server: blakc
+
+Context:
+  Host_Machines:
+
+  Virtual_Machines:  
+    virtualmachine_1:
+      availability_zone: compute1
+      public_network: 'net04_ext'
+      OS_image: QTIP_CentOS
+      flavor: m1.large
+      role: host
+    virtualmachine_2:
+      availability_zone: compute2
+      public_network: 'net04_ext'
+      OS_image: QTIP_CentOS
+      flavor: m1.large
+      role: host
+  
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "dhrystone"
+  Overview: >
+        '''This test will run the dhrystone benchmark in parallel on machine_1 and machine_2.\n
+         if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+         machine_1:
+         ip: 172.18.0.16
+         pw: Op3nStack
+         role: host
+         machine_2:
+         ip: 172.18.0.15
+         pw: Op3nStack
+         role: host
+
+        virtualmachine_1:
+          availability_zone:
+          public_network:
+          OS_image:
+          flavor:
+          role:
+        '''
+
diff --git a/test_cases/dell-us-testing-bm-1/compute/dpi_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/dpi_bm.yaml
new file mode 100644 (file)
index 0000000..27b6d86
--- /dev/null
@@ -0,0 +1,34 @@
+Scenario:
+  benchmark: dpi
+  host: machine_1,machine_2
+
+Context:
+  Host_Machines:
+     machine_1:
+       ip: 172.18.0.17
+       pw: Op3nStack
+       role: 1host
+     machine_2:
+       ip: 172.18.0.16
+       pw: Op3nStack
+       role: 1host
+  Virtual_Machines:
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "dpi"
+  Overview: >
+        '''This test will run the DPI benchmark in serial on virutalmachine_1 and virtualmachine_2.\n
+         if you wish to add a host machine add the following information under the Host_Machine tag
+         virtualmachine_2:
+         availability_zone: compute1
+         OS_image: QTIP_CentOS
+         public_network: 'provider_network'
+
+         role: 1host
+         flavor: m1.large
+        machine_1:
+          ip:
+          pw:
+          role:
+          '''
diff --git a/test_cases/dell-us-testing-bm-1/compute/dpi_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/dpi_vm.yaml
new file mode 100644 (file)
index 0000000..8a157e7
--- /dev/null
@@ -0,0 +1,35 @@
+Scenario:
+  benchmark: dpi
+  1Run : virtualmachine_1, virtualmachine_2
+
+Context:
+  Host_Machines:
+
+
+  Virtual_Machines:
+     virtualmachine_1:
+      availability_zone: compute1
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 1Run
+      flavor: m1.large
+     virtualmachine_2:
+      availability_zone: compute4
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 1Run
+      flavor: m1.large
+
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "dpi"
+  Overview: >
+        '''This test will run the DPI benchmark in parallel on virutalmachine_1 and virtualmachine_2.\n
+         if you wish to add a host machine add the following information under the Host_Machine tag
+
+        machine_1:
+          ip:
+          pw:
+          role:
+          '''
+
diff --git a/test_cases/dell-us-testing-bm-1/compute/ssl_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/ssl_bm.yaml
new file mode 100644 (file)
index 0000000..bded6d2
--- /dev/null
@@ -0,0 +1,31 @@
+Scenario:
+  benchmark: ssl
+  1Run: machine_1,machine_2
+
+Context:
+  Host_Machines:
+    machine_1:
+      ip: 10.20.0.4
+      pw: 
+      role: 1Run
+    machine_2:
+      ip: 10.20.0.5
+      pw:
+      role: 1Run
+  Virtual_Machines:
+      
+
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "ssl"
+  Overview: >
+        '''This test will run the SSL benchmark in parallel on machine_1 and machine_1.
+           If you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+        virtualmachine_1:
+          availability_zone:
+          public_network:
+          OS_image:
+          flavor:
+          role:
+          '''   
diff --git a/test_cases/dell-us-testing-bm-1/compute/ssl_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/ssl_vm.yaml
new file mode 100644 (file)
index 0000000..cbacf08
--- /dev/null
@@ -0,0 +1,36 @@
+Scenario:
+  benchmark: ssl
+  host: virtualmachine_1, virtualmachine_2
+
+Context:
+  Host_Machines:
+
+  Virtual_Machines:  
+    virtualmachine_1:
+      availability_zone: compute1
+      public_network: 'net04_ext'
+      OS_image: 'QTIP_CentOS'
+      flavor: 'm1.large'
+      role: host
+    virtualmachine_2:
+      availability_zone: compute2
+      public_network: 'net04_ext'
+      OS_image: 'QTIP_CentOS'
+      flavor: 'm1.large'
+      role: host
+
+
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "ssl"
+  Overview: >
+        '''This test will run the SSL benchmark in parallel on virtualmachine_1 and machine_1.\n
+         if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+
+        virtualmachine_1:
+          availability_zone:
+          public_network:
+          OS_image:
+          flavor:
+          role:
+          '''   
diff --git a/test_cases/dell-us-testing-bm-1/compute/whetstone_bm.yaml b/test_cases/dell-us-testing-bm-1/compute/whetstone_bm.yaml
new file mode 100644 (file)
index 0000000..136ac2b
--- /dev/null
@@ -0,0 +1,34 @@
+  
+Scenario:
+  benchmark: whetstone
+  host: machine_1, machine_2
+
+
+Context:
+  Host_Machines:
+    machine_1:
+      ip: 10.20.0.4
+      pw: 
+      role: host
+    machine_2:
+      ip: 10.20.0.5
+      pw:
+      role: host
+  Virtual_Machines:  
+   
+      
+
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "whetstone"
+  Overview: >
+        ''' This test will run the whetstone benchmark in parallel  on machine_1 and machine_2.\n
+         if you wish to add a baremetal  machine add the following information under the Virtual_Machine tag
+
+        machine_3:
+          ip:
+          pw:
+          role:
+           '''
+  
diff --git a/test_cases/dell-us-testing-bm-1/compute/whetstone_vm.yaml b/test_cases/dell-us-testing-bm-1/compute/whetstone_vm.yaml
new file mode 100644 (file)
index 0000000..17928fa
--- /dev/null
@@ -0,0 +1,44 @@
+Scenario:
+  benchmark: whetstone
+  host: virtualmachine_1, virtualmachine_1
+  server: 
+
+Context:
+  Host_Machines:
+    
+  Virtual_Machines:  
+    virtualmachine_1:
+      availability_zone: compute1
+      public_network: 'net04_ext'
+      OS_image: QTIP_CentOS
+      flavor: m1.large
+      role: host
+    virtualmachine_2:
+      availability_zone: compute2
+      public_network: 'net04_ext'
+      OS_image: QTIP_CentOS
+      flavor: m1.large
+      role: host
+     
+
+Test_Description:
+  Test_category: "Compute"
+  Benchmark: "dhrystone"
+  Overview: >
+        '''This test will run the whetstone benchmark in parallel on machine_1 and machine_2.\n
+         if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+        virtualmachine_1:
+        availability_zone: nova
+        public_network: 'net04_ext'
+        OS_image: QTIP_CentOS
+        flavor: m1.large
+        role: host
+
+        virtualmachine_1:
+          availability_zone:
+          public_network:
+          OS_image:
+          flavor:
+          role:
+          '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/iperf_topology_1.yaml b/test_cases/dell-us-testing-bm-1/network/iperf_topology_1.yaml
new file mode 100644 (file)
index 0000000..18eba8a
--- /dev/null
@@ -0,0 +1,43 @@
+Scenario:
+  benchmark: iperf
+  topology: Client and Server on ONE compute
+  server : virtualmachine_1
+  client: virtualmachine_2
+  benchmark_details:
+    duration: 20 
+    protocol: tcp
+    bandwidthGbps: 10
+
+Context:
+  Host_Machines:
+
+
+  Virtual_Machines:
+    virtualmachine_1:
+      availability_zone: compute1
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 1-server
+      flavor: m1.large   
+
+    virtualmachine_2:
+      availability_zone: compute1
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 2-host
+      flavor: m1.large
+    
+Test_Description:
+  Test_category: "network"
+  Benchmark: "iperf"
+  Overview: >
+        '''This test will run the IPERF benchmark  on virutalmachine_1 and virtualmachine_2. On the\n
+         same compute node
+         if you wish to add a host machine add the following information under the Host_Machine tag
+
+        machine_1:
+          ip:
+          pw:
+          role:
+          '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/iperf_topology_2.yaml b/test_cases/dell-us-testing-bm-1/network/iperf_topology_2.yaml
new file mode 100644 (file)
index 0000000..301a991
--- /dev/null
@@ -0,0 +1,43 @@
+Scenario:
+  benchmark: iperf
+  topology: Client and Server on different Compute nodes
+  server: virtualmachine_1
+  client: virtualmachine_2
+  benchmark_details:
+    duration: 20
+    protocol: tcp
+    bandwidthGbps: 10
+
+Context:
+  Host_Machines:
+
+
+  Virtual_Machines:
+    virtualmachine_1:
+      availability_zone: compute1
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 1-server
+      flavor: m1.large   
+
+    virtualmachine_2:
+      availability_zone: compute2
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 2-host
+      flavor: m1.large
+    
+Test_Description:
+  Test_category: "network"
+  Benchmark: "iperf"
+  Overview: >
+        '''This test will run the IPERF benchmark  on virutalmachine_1 and virtualmachine_2. On the\n
+         same compute node
+         if you wish to add a host machine add the following information under the Host_Machine tag
+
+        machine_1:
+          ip:
+          pw:
+          role:
+          '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/iperf_topology_3.yaml b/test_cases/dell-us-testing-bm-1/network/iperf_topology_3.yaml
new file mode 100644 (file)
index 0000000..9e7b73e
--- /dev/null
@@ -0,0 +1,60 @@
+Scenario:
+  benchmark: iperf
+  topology: 2 Client on one compute and 2 servers on another machine
+  1Run : virtualmachine_1, virtualmachine_2
+  2Run:
+  benchmark_details:
+    duration: 20
+    protocol: udp
+    bandwidthGbps: 1
+
+Context:
+  Host_Machines:
+
+
+  Virtual_Machines:
+    virtualmachine_1:
+      availability_zone: compute1
+      OS_image: QTIP_CentOS
+      public_network: 'provider_network'
+      role: 1-server
+      flavor: m1.large   
+
+    virtualmachine_2:
+      availability_zone: compute2
+      OS_image: QTIP_CentOS
+      public_network: 'provider_network'
+      role: 1-server
+      flavor: m1.large
+
+    virtualmachine_3:
+      availability_zone: compute3
+      OS_image: QTIP_CentOS
+      public_network: 'provider_network'
+      role: 1-server
+      flavor: m1.large
+
+    virtualmachine_4:
+      availability_zone: compute4
+      OS_image: QTIP_CentOS
+      public_network: 'provider_network'
+      role: 1-server
+      flavor: m1.large
+
+
+
+   
+Test_Description:
+  Test_category: "network"
+  Benchmark: "iperf"
+  Overview: >
+        '''This test will run the IPERF benchmark  on virutalmachine_1 and virtualmachine_2. On the\n
+         same compute node
+         if you wish to add a host machine add the following information under the Host_Machine tag
+
+        machine_1:
+          ip:
+          pw:
+          role:
+          '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/netperf.yaml b/test_cases/dell-us-testing-bm-1/network/netperf.yaml
new file mode 100644 (file)
index 0000000..267b288
--- /dev/null
@@ -0,0 +1,42 @@
+Scenario:
+  benchmark: netperf
+  topology: Client and Server on ONE compute
+  server : virtualmachine_1
+  client: virtualmachine_2
+  benchmark_details:
+    duration: 10 
+    teststream: udp_stream
+
+Context:
+  Host_Machines:
+
+
+  Virtual_Machines:
+    virtualmachine_1:
+      availability_zone: compute2
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 1-server
+      flavor: m1.large   
+
+    virtualmachine_2:
+      availability_zone: compute2
+      OS_image: QTIP_CentOS
+      public_network: 'net04_ext'
+      role: 2-host
+      flavor: m1.large
+    
+Test_Description:
+  Test_category: "network"
+  Benchmark: "netperf"
+  Overview: >
+        '''This test will run the NETPERF benchmark  on virutalmachine_1 and virtualmachine_2. On the\n
+         same compute node
+         if you wish to add a host machine add the following information under the Host_Machine tag
+
+        machine_1:
+          ip:
+          pw:
+          role:
+          '''
+
diff --git a/test_cases/dell-us-testing-bm-1/network/pktgen.yaml b/test_cases/dell-us-testing-bm-1/network/pktgen.yaml
new file mode 100644 (file)
index 0000000..13fae68
--- /dev/null
@@ -0,0 +1,44 @@
+Scenario:
+  benchmark: pktgen
+  topology: Client and Server on ONE compute
+  server : virtualmachine_1
+  client: virtualmachine_2
+  benchmark_details:
+    duration: "10" 
+    packetsize: "64"
+    ipaddr: "10.10.17.4"
+    numberofports: "10"
+
+Context:
+  Host_Machines:
+
+
+  Virtual_Machines:
+    virtualmachine_1:
+      availability_zone: compute2
+      OS_image: pktgenready
+      public_network: 'provider_network'
+      role: 1-server
+      flavor: m1.large   
+
+    virtualmachine_2:
+      availability_zone: compute2
+      OS_image: pktgenready
+      public_network: 'provider_network'
+      role: 2-host
+      flavor: m1.large
+    
+Test_Description:
+  Test_category: "network"
+  Benchmark: "iperf"
+  Overview: >
+        '''This test will run the IPERF benchmark  on virutalmachine_1 and virtualmachine_2. On the\n
+         same compute node
+         if you wish to add a host machine add the following information under the Host_Machine tag
+
+        machine_1:
+          ip:
+          pw:
+          role:
+          '''
+
diff --git a/test_cases/dell-us-testing-bm-1/storage/fio_bm.yaml b/test_cases/dell-us-testing-bm-1/storage/fio_bm.yaml
new file mode 100644 (file)
index 0000000..4778c38
--- /dev/null
@@ -0,0 +1,39 @@
+Scenario:
+  benchmark: fio
+  host: machine_1, machine_2
+  server: blakc
+
+Context:
+  Host_Machines:
+    machine_1:
+      ip: 10.20.0.7
+      pw: r00tme
+      role: host
+    machine_2:
+      ip: 10.20.0.6
+      pw: r00tme
+      role: host
+
+
+  Virtual_Machines:
+
+
+Test_Description:
+  Test_category: "Storage"
+  Benchmark: "FIO"
+  Overview: >
+        '''This test will run the FIO  benchmark in parallel on host machines "machine_1" and "machine_2".\n
+         The fio job specifications can be found in qtip/benchmarks/fio_jobs/test_job.
+         The job conists of an fio load of:
+          1.50% rand read 50% rand write
+          2.Asynch engine
+          3.Direct IO. 
+          4.Queing depth of 2
+
+         if you wish to add another  machine add the following information under the Host_Machines tag
+         machine_3:
+         ip: 172.18.0.16
+         pw: Op3nStack
+         role: host
+         '''
+
diff --git a/test_cases/dell-us-testing-bm-1/storage/fio_vm.yaml b/test_cases/dell-us-testing-bm-1/storage/fio_vm.yaml
new file mode 100644 (file)
index 0000000..dcd2725
--- /dev/null
@@ -0,0 +1,44 @@
+Scenario:
+  benchmark: fio
+  host: machine_1, machine_2
+  server: blakc
+
+Context:
+  Host_Machines:
+    
+  Virtual_Machines:
+    virtualmachine_1:
+      availability_zone: compute1
+      public_network: 'net04_ext'
+      OS_image: QTIP_CentOS
+      flavor: m1.large
+      role: host
+    virtualmachine_2:
+      availability_zone: compute2
+      public_network: 'net04_ext'
+      OS_image: QTIP_CentOS
+      flavor: m1.large
+      role: host
+
+Test_Description:
+  Test_category: "Storage"
+  Benchmark: "FIO"
+  Overview: >
+        '''This test will run the FIO  benchmark in parallel on virtualmachine_1 and virtualmachine_2.\n
+         The fio job specifications can be found in qtip/benchmarks/fio_jobs/test_job.
+         The job conists of an fio load of:
+          1.50% rand read 50% rand write
+          2.Asynch engine
+          3.Direct IO. 
+          4.Queing depth of 2
+
+         if you wish to add a virtual machine add the following information under the Virtual_Machine tag
+  
+        virtualmachine_3:
+          availability_zone:
+          public_network:
+          OS_image:
+          flavor:
+          role:
+        '''
+
index 30d904e..044d8de 100644 (file)
@@ -1,2 +1,8 @@
-dpi_parallel.yaml
-ssl_parallel.yaml
+dhrystone_bm.yaml
+dhrystone_vm.yaml
+whetstone_bm.yaml
+whetstone_vm.yaml
+ssl_bm.yaml
+ssl_vm.yaml
+dpi_bm.yaml
+dpi_vm.yaml
index fdca37e..266d399 100644 (file)
@@ -1,2 +1,2 @@
-fio_baremetal.yaml
+fio_bm.yaml
 fio_vm.yaml