Merge "Fix influxdb "field type conflict" error" into stable/gambia
[yardstick.git] / samples / fio.yaml
index f70912a..0890766 100644 (file)
@@ -1,48 +1,29 @@
+##############################################################################
+# Copyright (c) 2017 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
 ---
 # Sample benchmark task config file
 # measure storage performance using fio
+# can be used both on Openstack and Kubernetes with "context_type"
 #
-# For this sample just like running the command below on the test vm and 
+# For this sample just like running the command below on the test vm and
 # getting benchmark info back to the yardstick.
 #
-# sudo fio -filename=/home/ec2-user/data.raw -bs=4k -rw=write -ramp_time=10 \
-#          -runtime=60 -name=yardstick-fio -ioengine=libaio -direct=1 \
-#          -group_reporting -numjobs=1 -time_based --output=yardstick-fio.log
-#
-# When the above fio command done, the yardstick-fio.log file will contain 
-# information like below and the benchmark script will take iops, throughput 
-# and latency info marked with "" to create json style output.
-#
-# yardstick-fio: (g=0): rw=write, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=1
-# fio-2.1.3
-# Starting 1 process
-#
-# yardstick-fio: (groupid=0, jobs=1): err= 0: pid=1421: Mon Jul  6 01:25:41 2015
-#   write: io=1985.4MB, bw=33882KB/s, iops="8470", runt= 60001msec
-#     slat (usec): min=6, max=15049, avg=10.29, stdev=19.42
-#     clat (usec): min=1, max=18517, avg=105.68, stdev=37.76
-#      lat ("usec"): min=85, max=18528, avg="116.30", stdev=43.57
-#     clat percentiles (usec):
-#      |  1.00th=[   83],  5.00th=[   85], 10.00th=[   87], 20.00th=[   88],
-#      | 30.00th=[   90], 40.00th=[   93], 50.00th=[   98], 60.00th=[  102],
-#      | 70.00th=[  110], 80.00th=[  124], 90.00th=[  137], 95.00th=[  149],
-#      | 99.00th=[  173], 99.50th=[  181], 99.90th=[  203], 99.95th=[  290],
-#      | 99.99th=[  604]
-#     bw (KB  /s): min=    0, max=39816, per=99.26%, avg=33631.46, stdev=4369.58
-#     lat (usec) : 2=0.01%, 50=0.01%, 100=55.44%, 250=44.50%, 500=0.02%
-#     lat (usec) : 750=0.04%, 1000=0.01%
-#     lat (msec) : 2=0.01%, 4=0.01%, 10=0.01%, 20=0.01%
-#   cpu          : usr=4.09%, sys=16.38%, ctx=604931, majf=0, minf=27
-#   IO depths    : 1=118.9%, 2=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, >=64=0.0%
-#      submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
-#      complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
-#      issued    : total=r=0/w=508237/d=0, short=r=0/w=0/d=0
-#
-# Run status group 0 (all jobs):
-#   WRITE: io=1985.4MB, aggrb="33881KB/s", minb=33881KB/s, maxb=33881KB/s, mint=60001msec, maxt=60001msec
-#
-# Disk stats (read/write):
-#   vda: ios=0/604235, merge=0/211, ticks=0/61964, in_queue=61804, util=86.25%
+# sudo fio -filename=/home/ubuntu/data.raw -bs=4k -ipdepth=1 -rw=rw \
+#          -ramp_time=10 -runtime=60 -name=yardstick-fio -ioengine=libaio \
+#          -direct=1 -group_reporting -numjobs=1 -time_based \
+#          --output-format=json
+
+{% set context_type = context_type or "Heat" %}
+{% set separator = separator or "." %}
+{% if context_type == "Kubernetes" %}
+{% set separator = "-" %}
+{% endif %}
 
 schema: "yardstick:task:0.1"
 
@@ -50,25 +31,52 @@ scenarios:
 -
   type: Fio
   options:
-    filename: /home/ec2-user/data.raw
+    filename: /tmp/data.raw
     bs: 4k
-    rw: write
+    iodepth: 1
+    rw: rw
     ramp_time: 10
-  host: fio.demo
+  host: fio{{ separator }}demo
   runner:
     type: Duration
     duration: 60
-    interval: 60
+    interval: 1
+  sla:
+    read_bw: 6000
+    read_iops: 1500
+    read_lat: 500.1
+    write_bw: 6000
+    write_iops: 1500
+    write_lat: 500.1
+    action: monitor
 
 context:
+  type: {{ context_type }}
   name: demo
-  image: yardstick-trusty-server
+  {% if context_type == "Kubernetes" %}
+
+  servers:
+    fio:
+      image: opnfv/yardstick-image-k8s
+      resources:
+        limits:
+          cpu: 1
+          memory: 1Gi
+        requests:
+          cpu: 1
+          memory: 1Gi
+      command: /bin/bash
+      args: ['-c', 'mkdir /root/.ssh; cp /tmp/.ssh/authorized_keys ~/.ssh/.;
+                    chmod 700 ~/.ssh; chmod 600 ~/.ssh/*; service ssh restart;
+                    while true ; do sleep 10000; done']
+  {% else %}
+  image: yardstick-image
   flavor: yardstick-flavor
-  user: ec2-user
+  user: ubuntu
   servers:
     fio:
       floating_ip: true
   networks:
     test:
       cidr: "10.0.1.0/24"
-      external_network: "net04_ext"
+  {% endif %}