+ set -e
+ type=iozone
+ bsizes='1k 4k 64k 256k 1m'
+ ops=write
+ osync=s
+ three_times='1 2 3'
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:01:01 6929 >>>> Start rally with opts 'task start /tmp/fileLzEiVA --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file4N0XXD
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  95a37e9d-5c68-4971-bb1c-74f2a8347743: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:03:01 7168 >>>> Start io test
02:03:01 7168 >>>> Ready and waiting on barrier. Will wait at most 180 seconds
02:03:09 7167 >>>> Start io test
02:03:09 7167 >>>> Ready and waiting on barrier. Will wait at most 172 seconds
02:03:14 7166 >>>> Start io test
02:03:14 7166 >>>> Ready and waiting on barrier. Will wait at most 167 seconds
02:03:42 7166 >>>> Test finished
02:03:42 7167 >>>> Test finished
02:03:43 7168 >>>> Test finished
2015-02-08 02:04:13.363 6929 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: fa465fd8-aacb-4b90-83de-5a993a45d11b.

--------------------------------------------------------------------------------
Task 95a37e9d-5c68-4971-bb1c-74f2a8347743: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file4N0XXD',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.591     | 3.359     | 6.877     | 5.823         | 6.35          | 100.0%  | 3     |
| nova.boot_server            | 58.607    | 61.832    | 65.371    | 64.601        | 64.986        | 100.0%  | 3     |
| nova.delete_server          | 5.087     | 6.651     | 9.768     | 8.834         | 9.301         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.702     | 1.791     | 1.907     | 1.878         | 1.893         | 100.0%  | 3     |
| total                       | 128.749   | 129.25    | 129.585   | 129.551       | 129.568       | 100.0%  | 3     |
| vm.run_command              | 27.825    | 28.359    | 28.786    | 28.722        | 28.754        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.075     | 2.084     | 6.097     | 4.894         | 5.496         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.735     | 10.274    | 12.256    | 12.171        | 12.213        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 129.692778111
Full duration: 185.989417791

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 95a37e9d-5c68-4971-bb1c-74f2a8347743 --out output.html

* To get raw JSON output of task results, run:
	rally task results 95a37e9d-5c68-4971-bb1c-74f2a8347743

Using task: 95a37e9d-5c68-4971-bb1c-74f2a8347743
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileJheUID -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 23},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileLA5Cah -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file4YOQ9J -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22}]
================================================================================

====> {"write s 1k": [22, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:04:17 7502 >>>> Start rally with opts 'task start /tmp/file9j8HnA --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filex4eLyL
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  4135bd38-f375-48aa-9d63-8ed43f445544: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:05:47 7697 >>>> Start io test
02:05:47 7697 >>>> Ready and waiting on barrier. Will wait at most 209 seconds
02:05:48 7698 >>>> Start io test
02:05:48 7698 >>>> Ready and waiting on barrier. Will wait at most 209 seconds
02:05:54 7699 >>>> Start io test
02:05:54 7699 >>>> Ready and waiting on barrier. Will wait at most 202 seconds
02:06:22 7698 >>>> Test finished
02:06:23 7697 >>>> Test finished
02:06:23 7699 >>>> Test finished
2015-02-08 02:06:59.313 7502 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 4c2bee40-1660-4514-8adf-0a1c8892ed15.

--------------------------------------------------------------------------------
Task 4135bd38-f375-48aa-9d63-8ed43f445544: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filex4eLyL',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.415     | 1.561     | 1.755     | 1.706         | 1.731         | 100.0%  | 3     |
| nova.boot_server            | 57.578    | 58.854    | 60.218    | 59.928        | 60.073        | 100.0%  | 3     |
| nova.delete_server          | 5.123     | 6.683     | 9.788     | 8.858         | 9.323         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.65      | 1.774     | 1.855     | 1.848         | 1.851         | 100.0%  | 3     |
| total                       | 118.12    | 120.604   | 124.177   | 123.245       | 123.711       | 100.0%  | 3     |
| vm.run_command              | 28.383    | 29.095    | 29.47     | 29.463        | 29.466        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.088     | 6.097     | 6.106     | 6.104         | 6.105         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.525     | 8.151     | 11.292    | 10.361        | 10.827        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 124.254468918
Full duration: 159.261395931

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 4135bd38-f375-48aa-9d63-8ed43f445544 --out output.html

* To get raw JSON output of task results, run:
	rally task results 4135bd38-f375-48aa-9d63-8ed43f445544

Using task: 4135bd38-f375-48aa-9d63-8ed43f445544
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileMuH2wt -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 23},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileik0NN0 -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filemSyXWf -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22}]
================================================================================

====> {"write s 1k": [22, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:07:03 8052 >>>> Start rally with opts 'task start /tmp/fileC1fqsJ --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileOGt8G5
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f647ead2-fb54-4b21-8932-f86eb8e83c44: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:08:41 8299 >>>> Start io test
02:08:41 8299 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
02:08:45 8298 >>>> Start io test
02:08:45 8298 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
02:08:46 8297 >>>> Start io test
02:08:46 8297 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
02:09:14 8297 >>>> Test finished
02:09:15 8299 >>>> Test finished
02:09:15 8298 >>>> Test finished
2015-02-08 02:09:50.308 8052 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: b3723baa-c828-40cd-85aa-548c99cd6e36.

--------------------------------------------------------------------------------
Task f647ead2-fb54-4b21-8932-f86eb8e83c44: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileOGt8G5',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.433     | 1.529     | 1.652     | 1.622         | 1.637         | 100.0%  | 3     |
| nova.boot_server            | 61.082    | 63.594    | 65.102    | 65.001        | 65.052        | 100.0%  | 3     |
| nova.delete_server          | 5.111     | 5.127     | 5.139     | 5.137         | 5.138         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.615     | 3.388     | 6.691     | 5.724         | 6.207         | 100.0%  | 3     |
| total                       | 118.538   | 120.609   | 124.135   | 123.139       | 123.637       | 100.0%  | 3     |
| vm.run_command              | 27.741    | 28.2      | 28.479    | 28.459        | 28.469        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.085     | 5.537     | 6.555     | 6.438         | 6.497         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.562     | 7.391     | 7.954     | 7.895         | 7.925         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 124.250823021
Full duration: 164.457447052

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f647ead2-fb54-4b21-8932-f86eb8e83c44 --out output.html

* To get raw JSON output of task results, run:
	rally task results f647ead2-fb54-4b21-8932-f86eb8e83c44

Using task: f647ead2-fb54-4b21-8932-f86eb8e83c44
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filelN86Lj -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 23},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filemkx9Gp -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filetj7SqQ -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22}]
================================================================================

====> {"write s 1k": [22, 0]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:09:54 8611 >>>> Start rally with opts 'task start /tmp/fileF7ycGP --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileWvSOgb
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  6ff58334-f406-4cf6-acc2-c90804cb108a: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:11:29 8812 >>>> Start io test
02:11:29 8812 >>>> Ready and waiting on barrier. Will wait at most 204 seconds
02:11:33 8814 >>>> Start io test
02:11:33 8814 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
02:11:36 8813 >>>> Start io test
02:11:36 8813 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
02:12:06 8812 >>>> Test finished
02:12:06 8814 >>>> Test finished
02:12:06 8813 >>>> Test finished
2015-02-08 02:12:32.220 8611 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 1d236352-64d1-4afd-8364-8aad841520d4.

--------------------------------------------------------------------------------
Task 6ff58334-f406-4cf6-acc2-c90804cb108a: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileWvSOgb',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.422     | 1.559     | 1.781     | 1.719         | 1.75          | 100.0%  | 3     |
| nova.boot_server            | 59.406    | 61.904    | 66.891    | 65.396        | 66.144        | 100.0%  | 3     |
| nova.delete_server          | 5.172     | 6.747     | 9.829     | 8.911         | 9.37          | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.583     | 1.751     | 2.056     | 1.968         | 2.012         | 100.0%  | 3     |
| total                       | 122.919   | 125.789   | 127.759   | 127.545       | 127.652       | 100.0%  | 3     |
| vm.run_command              | 29.895    | 30.174    | 30.46     | 30.402        | 30.431        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.095     | 6.099     | 6.101     | 6.101         | 6.101         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.583     | 9.191     | 12.007    | 11.202        | 11.604        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 127.864459038
Full duration: 155.141624928

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 6ff58334-f406-4cf6-acc2-c90804cb108a --out output.html

* To get raw JSON output of task results, run:
	rally task results 6ff58334-f406-4cf6-acc2-c90804cb108a

Using task: 6ff58334-f406-4cf6-acc2-c90804cb108a
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileRadJny -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 86},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filehKZghX -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 85},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileMaeH2W -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 84}]
================================================================================

====> {"write s 4k": [85, 1]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:12:35 9152 >>>> Start rally with opts 'task start /tmp/file1wnCQa --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileRHJ7kQ
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  4e13b6d2-87d3-4a22-a168-edea52b0d83f: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:14:09 9356 >>>> Start io test
02:14:09 9356 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
02:14:10 9357 >>>> Start io test
02:14:10 9357 >>>> Ready and waiting on barrier. Will wait at most 204 seconds
02:14:12 9355 >>>> Start io test
02:14:12 9355 >>>> Ready and waiting on barrier. Will wait at most 203 seconds
02:14:42 9357 >>>> Test finished
02:14:42 9356 >>>> Test finished
02:14:42 9355 >>>> Test finished
2015-02-08 02:15:05.368 9152 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 22d0a7a4-8d34-4832-9e42-3f1e5d8c1fe9.

--------------------------------------------------------------------------------
Task 4e13b6d2-87d3-4a22-a168-edea52b0d83f: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileRHJ7kQ',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.4       | 1.432     | 1.482     | 1.468         | 1.475         | 100.0%  | 3     |
| nova.boot_server            | 60.888    | 61.676    | 62.17     | 62.13         | 62.15         | 100.0%  | 3     |
| nova.delete_server          | 5.411     | 6.747     | 7.421     | 7.419         | 7.42          | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.682     | 1.754     | 1.791     | 1.791         | 1.791         | 100.0%  | 3     |
| total                       | 119.863   | 121.129   | 121.789   | 121.778       | 121.783       | 100.0%  | 3     |
| vm.run_command              | 30.538    | 30.626    | 30.757    | 30.722        | 30.74         | 100.0%  | 3     |
| vm.wait_for_ping            | 0.362     | 2.656     | 6.859     | 5.636         | 6.247         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.438     | 7.257     | 7.717     | 7.697         | 7.707         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 121.837308168
Full duration: 148.056043863

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 4e13b6d2-87d3-4a22-a168-edea52b0d83f --out output.html

* To get raw JSON output of task results, run:
	rally task results 4e13b6d2-87d3-4a22-a168-edea52b0d83f

Using task: 4e13b6d2-87d3-4a22-a168-edea52b0d83f
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileldbwAP -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 83},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filee8IE1k -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 83},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filefuez0P -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 83}]
================================================================================

====> {"write s 4k": [83, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:15:10 9646 >>>> Start rally with opts 'task start /tmp/filec54e6B --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filesuZDwQ
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  29139e04-b47e-4331-a18d-7d9cc88b3b83: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:16:56 9844 >>>> Start io test
02:16:56 9844 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
02:16:56 9842 >>>> Start io test
02:16:56 9842 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
02:16:59 9843 >>>> Start io test
02:16:59 9843 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
02:17:28 9842 >>>> Test finished
02:17:28 9844 >>>> Test finished
02:17:28 9843 >>>> Test finished
2015-02-08 02:17:55.648 9646 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 7bd3e8eb-6c6a-4239-8855-38b30815238e.

--------------------------------------------------------------------------------
Task 29139e04-b47e-4331-a18d-7d9cc88b3b83: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filesuZDwQ',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.468     | 1.501     | 1.554     | 1.539         | 1.547         | 100.0%  | 3     |
| nova.boot_server            | 61.792    | 62.496    | 62.853    | 62.851        | 62.852        | 100.0%  | 3     |
| nova.delete_server          | 5.112     | 7.472     | 12.014    | 10.669        | 11.342        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.636     | 1.728     | 1.81      | 1.796         | 1.803         | 100.0%  | 3     |
| total                       | 121.107   | 123.975   | 128.788   | 127.436       | 128.112       | 100.0%  | 3     |
| vm.run_command              | 28.963    | 29.395    | 29.629    | 29.622        | 29.625        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.088     | 6.092     | 6.097     | 6.096         | 6.096         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.692     | 8.85      | 12.132    | 11.251        | 11.691        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 128.858690977
Full duration: 158.385176182

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 29139e04-b47e-4331-a18d-7d9cc88b3b83 --out output.html

* To get raw JSON output of task results, run:
	rally task results 29139e04-b47e-4331-a18d-7d9cc88b3b83

Using task: 29139e04-b47e-4331-a18d-7d9cc88b3b83
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileNLhGov -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 89},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filezRxq1r -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 87},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filed41hk2 -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 87}]
================================================================================

====> {"write s 4k": [87, 1]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:17:59 10182 >>>> Start rally with opts 'task start /tmp/fileDoXODZ --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filePGwDEi
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  ba2e3ca5-1998-4b1f-b907-68308f99c045: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:19:34 10379 >>>> Start io test
02:19:34 10379 >>>> Ready and waiting on barrier. Will wait at most 204 seconds
02:19:36 10380 >>>> Start io test
02:19:36 10380 >>>> Ready and waiting on barrier. Will wait at most 203 seconds
02:19:40 10378 >>>> Start io test
02:19:40 10378 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
02:20:13 10380 >>>> Test finished
02:20:14 10379 >>>> Test finished
02:20:15 10378 >>>> Test finished
2015-02-08 02:20:41.055 10182 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 842d7eae-6794-485a-b499-4792c497aec4.

--------------------------------------------------------------------------------
Task ba2e3ca5-1998-4b1f-b907-68308f99c045: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filePGwDEi',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.41      | 1.595     | 1.812     | 1.762         | 1.787         | 100.0%  | 3     |
| nova.boot_server            | 61.265    | 61.823    | 62.623    | 62.415        | 62.519        | 100.0%  | 3     |
| nova.delete_server          | 5.168     | 5.215     | 5.276     | 5.261         | 5.269         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.639     | 1.713     | 1.802     | 1.781         | 1.792         | 100.0%  | 3     |
| total                       | 127.111   | 127.752   | 128.174   | 128.134       | 128.154       | 100.0%  | 3     |
| vm.run_command              | 33.474    | 34.041    | 34.506    | 34.433        | 34.469        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.771     | 5.654     | 6.098     | 6.097         | 6.098         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.684     | 9.676     | 12.527    | 11.785        | 12.156        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 128.253315926
Full duration: 159.049183846

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report ba2e3ca5-1998-4b1f-b907-68308f99c045 --out output.html

* To get raw JSON output of task results, run:
	rally task results ba2e3ca5-1998-4b1f-b907-68308f99c045

Using task: ba2e3ca5-1998-4b1f-b907-68308f99c045
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file7qobLL -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1240},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileyRLZ6x -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1210},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileoF8EFP -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1190}]
================================================================================

====> {"write s 64k": [1213, 35]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:20:44 10719 >>>> Start rally with opts 'task start /tmp/fileIokJB0 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filejewmMu
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  7af12d5a-af01-455b-a3b8-ec173b5c4d74: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:22:17 10913 >>>> Start io test
02:22:17 10913 >>>> Ready and waiting on barrier. Will wait at most 207 seconds
02:22:21 10914 >>>> Start io test
02:22:21 10914 >>>> Ready and waiting on barrier. Will wait at most 203 seconds
02:22:24 10915 >>>> Start io test
02:22:24 10915 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
02:22:57 10913 >>>> Test finished
02:22:57 10915 >>>> Test finished
02:22:57 10914 >>>> Test finished
2015-02-08 02:23:31.480 10719 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 63aeb466-dba4-4147-bc41-094c4f71cbbe.

--------------------------------------------------------------------------------
Task 7af12d5a-af01-455b-a3b8-ec173b5c4d74: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filejewmMu',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.502     | 1.515     | 1.531     | 1.527         | 1.529         | 100.0%  | 3     |
| nova.boot_server            | 58.546    | 59.21     | 59.672    | 59.62         | 59.646        | 100.0%  | 3     |
| nova.delete_server          | 7.405     | 7.434     | 7.454     | 7.452         | 7.453         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.605     | 1.692     | 1.748     | 1.743         | 1.745         | 100.0%  | 3     |
| total                       | 126.657   | 126.713   | 126.812   | 126.783       | 126.798       | 100.0%  | 3     |
| vm.run_command              | 33.743    | 33.79     | 33.818    | 33.816        | 33.817        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.703     | 5.638     | 6.108     | 6.107         | 6.108         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.683     | 10.418    | 13.221    | 12.847        | 13.034        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 126.958745003
Full duration: 163.678922892

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 7af12d5a-af01-455b-a3b8-ec173b5c4d74 --out output.html

* To get raw JSON output of task results, run:
	rally task results 7af12d5a-af01-455b-a3b8-ec173b5c4d74

Using task: 7af12d5a-af01-455b-a3b8-ec173b5c4d74
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileUQwiEj -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1287},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileW6X2PF -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1286},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filebdhsrA -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1285}]
================================================================================

====> {"write s 64k": [1286, 1]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:23:35 11254 >>>> Start rally with opts 'task start /tmp/fileNW1wuv --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file306uc0
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  020449b2-dd28-4c5e-9f22-0e6042f1afdb: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:25:19 11451 >>>> Start io test
02:25:19 11451 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
02:25:22 11450 >>>> Start io test
02:25:22 11450 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
02:25:25 11449 >>>> Start io test
02:25:25 11449 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
02:25:58 11451 >>>> Test finished
02:25:58 11450 >>>> Test finished
02:25:58 11449 >>>> Test finished
2015-02-08 02:26:28.418 11254 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 3b2ffd4d-7c87-480c-90df-69b240c611e6.

--------------------------------------------------------------------------------
Task 020449b2-dd28-4c5e-9f22-0e6042f1afdb: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file306uc0',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.282     | 1.355     | 1.433     | 1.417         | 1.425         | 100.0%  | 3     |
| nova.boot_server            | 60.928    | 63.303    | 66.095    | 65.453        | 65.774        | 100.0%  | 3     |
| nova.delete_server          | 5.134     | 5.16      | 5.204     | 5.192         | 5.198         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.599     | 3.351     | 6.737     | 5.733         | 6.235         | 100.0%  | 3     |
| total                       | 129.535   | 131.361   | 134.793   | 133.786       | 134.289       | 100.0%  | 3     |
| vm.run_command              | 32.48     | 32.604    | 32.691    | 32.681        | 32.686        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.095     | 6.85      | 8.35      | 7.901         | 8.126         | 100.0%  | 3     |
| vm.wait_for_ssh             | 4.65      | 11.703    | 18.112    | 16.959        | 17.535        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 134.867283106
Full duration: 169.970800161

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 020449b2-dd28-4c5e-9f22-0e6042f1afdb --out output.html

* To get raw JSON output of task results, run:
	rally task results 020449b2-dd28-4c5e-9f22-0e6042f1afdb

Using task: 020449b2-dd28-4c5e-9f22-0e6042f1afdb
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileU6s3YC -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1283},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileSb7amA -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1276},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filetl8AUJ -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1276}]
================================================================================

====> {"write s 64k": [1278, 5]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:26:32 11795 >>>> Start rally with opts 'task start /tmp/filesHOvO4 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filefKoevm
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  a965ea3e-1438-4dcc-9e7b-eda827321dd4: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:28:05 11989 >>>> Start io test
02:28:05 11989 >>>> Ready and waiting on barrier. Will wait at most 206 seconds
02:28:06 11991 >>>> Start io test
02:28:06 11991 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
02:28:07 11990 >>>> Start io test
02:28:07 11990 >>>> Ready and waiting on barrier. Will wait at most 204 seconds
02:28:50 11991 >>>> Test finished
02:28:51 11990 >>>> Test finished
02:28:51 11989 >>>> Test finished
2015-02-08 02:29:11.661 11795 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 6619d821-d4fc-462c-afb5-d850afaf2261.

--------------------------------------------------------------------------------
Task a965ea3e-1438-4dcc-9e7b-eda827321dd4: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filefKoevm',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.381     | 1.502     | 1.593     | 1.581         | 1.587         | 100.0%  | 3     |
| nova.boot_server            | 59.554    | 61.183    | 63.626    | 62.975        | 63.3          | 100.0%  | 3     |
| nova.delete_server          | 5.104     | 5.173     | 5.25      | 5.233         | 5.241         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.723     | 1.8       | 1.899     | 1.875         | 1.887         | 100.0%  | 3     |
| total                       | 130.115   | 130.845   | 131.242   | 131.229       | 131.235       | 100.0%  | 3     |
| vm.run_command              | 42.833    | 43.376    | 43.663    | 43.657        | 43.66         | 100.0%  | 3     |
| vm.wait_for_ping            | 4.697     | 6.013     | 6.682     | 6.678         | 6.68          | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.567     | 6.994     | 7.698     | 7.502         | 7.6           | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 131.369011879
Full duration: 157.518203974

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report a965ea3e-1438-4dcc-9e7b-eda827321dd4 --out output.html

* To get raw JSON output of task results, run:
	rally task results a965ea3e-1438-4dcc-9e7b-eda827321dd4

Using task: a965ea3e-1438-4dcc-9e7b-eda827321dd4
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileMDUmTt -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4036},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filevlaxDd -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3938},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileJJnAOl -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3923}]
================================================================================

====> {"write s 256k": [3965, 86]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:29:16 12336 >>>> Start rally with opts 'task start /tmp/fileSqKGRj --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileAZ3SXP
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  ed5c7e0a-3d27-4e7e-a885-f03fa3f3a447: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:30:59 12541 >>>> Start io test
02:30:59 12541 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
02:31:01 12531 >>>> Start io test
02:31:01 12531 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
02:31:05 12540 >>>> Start io test
02:31:05 12540 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
02:31:49 12531 >>>> Test finished
02:31:49 12540 >>>> Test finished
02:31:49 12541 >>>> Test finished
2015-02-08 02:32:20.583 12336 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 58d78c4f-4739-4c45-acb5-0f72d2ff2658.

--------------------------------------------------------------------------------
Task ed5c7e0a-3d27-4e7e-a885-f03fa3f3a447: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileAZ3SXP',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.573     | 1.655     | 1.814     | 1.767         | 1.79          | 100.0%  | 3     |
| nova.boot_server            | 59.332    | 60.177    | 60.674    | 60.644        | 60.659        | 100.0%  | 3     |
| nova.delete_server          | 5.176     | 5.262     | 5.384     | 5.352         | 5.368         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.849     | 3.487     | 6.694     | 5.739         | 6.216         | 100.0%  | 3     |
| total                       | 135.02    | 136.686   | 139.745   | 138.854       | 139.3         | 100.0%  | 3     |
| vm.run_command              | 43.613    | 43.814    | 44.065    | 44.005        | 44.035        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.595     | 6.201     | 7.912     | 7.549         | 7.73          | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.366     | 8.457     | 10.322    | 9.794         | 10.058        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 139.891269207
Full duration: 181.290491104

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report ed5c7e0a-3d27-4e7e-a885-f03fa3f3a447 --out output.html

* To get raw JSON output of task results, run:
	rally task results ed5c7e0a-3d27-4e7e-a885-f03fa3f3a447

Using task: ed5c7e0a-3d27-4e7e-a885-f03fa3f3a447
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileTrxO0L -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3847},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filew8g4uV -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3827},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileLUqvcg -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3791}]
================================================================================

====> {"write s 256k": [3821, 40]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:32:24 12929 >>>> Start rally with opts 'task start /tmp/fileAeuyaa --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileRuOC83
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  2b72839b-9ed9-4a8d-9755-f63c5604e706: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:34:06 13126 >>>> Start io test
02:34:06 13126 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
02:34:12 13125 >>>> Start io test
02:34:12 13125 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
02:34:17 13127 >>>> Start io test
02:34:17 13127 >>>> Ready and waiting on barrier. Will wait at most 186 seconds
02:35:00 13127 >>>> Test finished
02:35:01 13125 >>>> Test finished
02:35:03 13126 >>>> Test finished
2015-02-08 02:35:33.807 12929 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: d372b811-4a2f-4617-9375-bf5d0b176e12.

--------------------------------------------------------------------------------
Task 2b72839b-9ed9-4a8d-9755-f63c5604e706: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileRuOC83',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.461     | 1.523     | 1.641     | 1.606         | 1.624         | 100.0%  | 3     |
| nova.boot_server            | 63.07     | 64.631    | 67.607    | 66.729        | 67.168        | 100.0%  | 3     |
| nova.delete_server          | 5.259     | 6.822     | 9.719     | 8.873         | 9.296         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.586     | 1.72      | 1.819     | 1.806         | 1.813         | 100.0%  | 3     |
| total                       | 146.147   | 148.016   | 149.654   | 149.372       | 149.513       | 100.0%  | 3     |
| vm.run_command              | 42.578    | 43.877    | 45.068    | 44.851        | 44.96         | 100.0%  | 3     |
| vm.wait_for_ping            | 4.619     | 5.242     | 6.108     | 5.886         | 5.997         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.321     | 10.173    | 12.106    | 12.104        | 12.105        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 149.794737101
Full duration: 185.754514217

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 2b72839b-9ed9-4a8d-9755-f63c5604e706 --out output.html

* To get raw JSON output of task results, run:
	rally task results 2b72839b-9ed9-4a8d-9755-f63c5604e706

Using task: 2b72839b-9ed9-4a8d-9755-f63c5604e706
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filefEbC0X -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4261},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileK8K4kD -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4075},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file1tZfqK -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3939}]
================================================================================

====> {"write s 256k": [4091, 228]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:35:37 13484 >>>> Start rally with opts 'task start /tmp/fileRWhSKh --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileFGgylp
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  a8154347-6cc9-411f-b38a-1d7d6aa98f21: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:37:12 13683 >>>> Start io test
02:37:12 13683 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
02:37:14 13684 >>>> Start io test
02:37:14 13684 >>>> Ready and waiting on barrier. Will wait at most 203 seconds
02:37:19 13682 >>>> Start io test
02:37:19 13682 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
02:38:53 13684 >>>> Test finished
02:38:55 13682 >>>> Test finished
02:38:55 13683 >>>> Test finished
2015-02-08 02:39:37.411 13484 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 19b5e73a-eb11-40dd-a52e-10e9d33c92c4.

--------------------------------------------------------------------------------
Task a8154347-6cc9-411f-b38a-1d7d6aa98f21: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileFGgylp',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.373     | 1.401     | 1.419     | 1.418         | 1.418         | 100.0%  | 3     |
| nova.boot_server            | 60.778    | 61.705    | 62.732    | 62.507        | 62.619        | 100.0%  | 3     |
| nova.delete_server          | 5.105     | 6.68      | 9.775     | 8.852         | 9.313         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.658     | 3.326     | 6.564     | 5.602         | 6.083         | 100.0%  | 3     |
| total                       | 189.362   | 193.818   | 199.322   | 198.012       | 198.667       | 100.0%  | 3     |
| vm.run_command              | 94.391    | 95.52     | 96.331    | 96.232        | 96.282        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.09      | 6.182     | 6.353     | 6.303         | 6.328         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.539     | 7.681     | 7.771     | 7.763         | 7.767         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 199.393381119
Full duration: 236.726731062

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report a8154347-6cc9-411f-b38a-1d7d6aa98f21 --out output.html

* To get raw JSON output of task results, run:
	rally task results a8154347-6cc9-411f-b38a-1d7d6aa98f21

Using task: a8154347-6cc9-411f-b38a-1d7d6aa98f21
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileXODmBy -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7965},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filelZsFeA -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7757},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileSXwn6l -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7848}]
================================================================================

====> {"write s 1024k": [7856, 147]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:39:41 14036 >>>> Start rally with opts 'task start /tmp/filelToPNe --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filenfg0wN
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  ac3a0010-7b52-4640-ba91-83133fd28d2e: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:41:22 14232 >>>> Start io test
02:41:22 14232 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
02:41:25 14230 >>>> Start io test
02:41:25 14230 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
02:41:29 14231 >>>> Start io test
02:41:29 14231 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
02:42:59 14230 >>>> Test finished
02:42:59 14232 >>>> Test finished
02:42:59 14231 >>>> Test finished
2015-02-08 02:43:37.584 14036 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 80598539-fee3-4599-b33c-fea133077f83.

--------------------------------------------------------------------------------
Task ac3a0010-7b52-4640-ba91-83133fd28d2e: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filenfg0wN',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.56      | 1.61      | 1.647     | 1.643         | 1.645         | 100.0%  | 3     |
| nova.boot_server            | 62.995    | 63.293    | 63.786    | 63.648        | 63.717        | 100.0%  | 3     |
| nova.delete_server          | 5.178     | 8.391     | 12.469    | 11.48         | 11.974        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.554     | 3.237     | 6.537     | 5.554         | 6.045         | 100.0%  | 3     |
| total                       | 186.699   | 189.176   | 191.143   | 190.852       | 190.997       | 100.0%  | 3     |
| vm.run_command              | 89.775    | 90.166    | 90.511    | 90.451        | 90.481        | 100.0%  | 3     |
| vm.wait_for_ping            | 2.087     | 4.884     | 6.347     | 6.321         | 6.334         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.628     | 8.704     | 10.928    | 10.453        | 10.691        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 191.273862839
Full duration: 233.295112133

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report ac3a0010-7b52-4640-ba91-83133fd28d2e --out output.html

* To get raw JSON output of task results, run:
	rally task results ac3a0010-7b52-4640-ba91-83133fd28d2e

Using task: ac3a0010-7b52-4640-ba91-83133fd28d2e
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file99oz35 -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8500},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file3FNxPn -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8365},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filesYA0hA -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8347}]
================================================================================

====> {"write s 1024k": [8404, 118]}

================================================================================
+ for xxx in '$three_times'
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:43:41 14566 >>>> Start rally with opts 'task start /tmp/filefILgG9 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileb0dLih
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  ef5f8e2b-f1fa-445b-872a-3b217bf1c30a: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:45:24 14760 >>>> Start io test
02:45:24 14760 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
02:45:29 14761 >>>> Start io test
02:45:29 14761 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
02:45:32 14762 >>>> Start io test
02:45:32 14762 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
02:47:06 14761 >>>> Test finished
02:47:06 14762 >>>> Test finished
02:47:06 14760 >>>> Test finished
2015-02-08 02:47:46.837 14566 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 64c7306f-b05a-4cbe-8a56-7de2245478a1.

--------------------------------------------------------------------------------
Task ef5f8e2b-f1fa-445b-872a-3b217bf1c30a: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileb0dLih',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.625     | 1.945     | 2.524     | 2.357         | 2.44          | 100.0%  | 3     |
| nova.boot_server            | 61.061    | 62.013    | 63.296    | 62.973        | 63.135        | 100.0%  | 3     |
| nova.delete_server          | 5.512     | 5.523     | 5.544     | 5.538         | 5.541         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.666     | 3.445     | 6.82      | 5.826         | 6.323         | 100.0%  | 3     |
| total                       | 187.295   | 188.873   | 192.021   | 191.077       | 191.549       | 100.0%  | 3     |
| vm.run_command              | 93.93     | 94.286    | 94.627    | 94.562        | 94.594        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.098     | 6.106     | 6.114     | 6.112         | 6.113         | 100.0%  | 3     |
| vm.wait_for_ssh             | 5.258     | 7.552     | 10.811    | 9.966         | 10.388        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 192.087732077
Full duration: 242.544982195

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report ef5f8e2b-f1fa-445b-872a-3b217bf1c30a --out output.html

* To get raw JSON output of task results, run:
	rally task results ef5f8e2b-f1fa-445b-872a-3b217bf1c30a

Using task: ef5f8e2b-f1fa-445b-872a-3b217bf1c30a
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filen5yUsz -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7784},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filehssvUs -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7750},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file9KdQg0 -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7703}]
================================================================================

====> {"write s 1024k": [7745, 57]}

================================================================================
+ bsizes='4k 64k 256k 1m'
+ ops='randread read'
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 4k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 4k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
02:47:50 15098 >>>> Start rally with opts 'task start /tmp/fileyLa6ay --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file43pNPU
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  a2035cda-c1ba-4b2e-b001-957776d6b62d: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

02:49:35 15296 >>>> Start io test
02:49:35 15296 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
02:49:39 15295 >>>> Start io test
02:49:39 15295 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
02:49:42 15294 >>>> Start io test
02:49:42 15294 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
02:59:46 15296 >>>> Test finished
03:01:21 15294 >>>> Test finished
03:05:18 15295 >>>> Test finished
2015-02-08 03:06:04.345 15098 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 1d37146f-2194-4bb1-a1e9-2ddd4521a521.

--------------------------------------------------------------------------------
Task a2035cda-c1ba-4b2e-b001-957776d6b62d: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file43pNPU',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.562     | 1.583     | 1.605     | 1.6           | 1.602         | 66.7%   | 3     |
| nova.boot_server            | 60.516    | 61.197    | 61.878    | 61.742        | 61.81         | 66.7%   | 3     |
| nova.delete_server          | 9.734     | 64.22     | 118.707   | 107.809       | 113.258       | 66.7%   | 3     |
| nova.dissociate_floating_ip | 7.256     | 7.343     | 7.429     | 7.412         | 7.421         | 66.7%   | 3     |
| total                       | 916.864   | 980.748   | 1044.633  | 1031.856      | 1038.244      | 66.7%   | 3     |
| vm.run_command              | 699.725   | 818.19    | 936.655   | 912.962       | 924.809       | 66.7%   | 3     |
| vm.wait_for_ping            | 6.829     | 6.925     | 7.022     | 7.002         | 7.012         | 66.7%   | 3     |
| vm.wait_for_ssh             | 7.798     | 9.646     | 11.494    | 11.124        | 11.309        | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 1044.72544599
Full duration: 1090.92513418

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report a2035cda-c1ba-4b2e-b001-957776d6b62d --out output.html

* To get raw JSON output of task results, run:
	rally task results a2035cda-c1ba-4b2e-b001-957776d6b62d

Using task: a2035cda-c1ba-4b2e-b001-957776d6b62d
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileYpfqGI -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 5704},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file71kREt -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 2405},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileqQuSgR -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 1546}]
================================================================================

====> {"randread a 4k": [3218, 3104]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 4k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 4k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
03:06:08 15757 >>>> Start rally with opts 'task start /tmp/filegahy0i --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filepJIm06
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f64f22f2-75f6-4b8e-8e75-325071d36647: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

03:08:02 15951 >>>> Start io test
03:08:02 15951 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
03:08:04 15953 >>>> Start io test
03:08:04 15953 >>>> Ready and waiting on barrier. Will wait at most 184 seconds
03:08:07 15952 >>>> Start io test
03:08:07 15952 >>>> Ready and waiting on barrier. Will wait at most 181 seconds
03:15:51 15952 >>>> Test finished
03:20:13 15951 >>>> Test finished
03:23:45 15953 >>>> Test finished
2015-02-08 03:24:47.264 15757 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 0e56722f-a6f4-400e-b566-69513f172737.

--------------------------------------------------------------------------------
Task f64f22f2-75f6-4b8e-8e75-325071d36647: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filepJIm06',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.585     | 1.585     | 1.585     | 1.585         | 1.585         | 66.7%   | 3     |
| nova.boot_server            | 60.579    | 63.488    | 66.397    | 65.815        | 66.106        | 66.7%   | 3     |
| nova.delete_server          | 101.763   | 109.978   | 118.192   | 116.549       | 117.371       | 66.7%   | 3     |
| nova.dissociate_floating_ip | 7.717     | 7.802     | 7.887     | 7.87          | 7.879         | 66.7%   | 3     |
| total                       | 678.909   | 801.72    | 924.531   | 899.968       | 912.249       | 66.7%   | 3     |
| vm.run_command              | 463.872   | 594.925   | 725.978   | 699.767       | 712.872       | 66.7%   | 3     |
| vm.wait_for_ping            | 4.745     | 5.797     | 6.849     | 6.638         | 6.744         | 66.7%   | 3     |
| vm.wait_for_ssh             | 6.618     | 7.068     | 7.519     | 7.429         | 7.474         | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 1039.91754508
Full duration: 1115.95508695

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f64f22f2-75f6-4b8e-8e75-325071d36647 --out output.html

* To get raw JSON output of task results, run:
	rally task results f64f22f2-75f6-4b8e-8e75-325071d36647

Using task: f64f22f2-75f6-4b8e-8e75-325071d36647
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filekwv0GX -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 5631},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileJe4keD -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 2401},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filezkCFTw -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 1627}]
================================================================================

====> {"randread a 4k": [3219, 3003]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 4k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 4k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
03:24:51 16470 >>>> Start rally with opts 'task start /tmp/filee6OcGM --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileAxCCy9
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  be0e01e1-d0b4-4438-8211-0dcbb8a25494: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

03:26:30 16670 >>>> Start io test
03:26:30 16670 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
03:26:34 16671 >>>> Start io test
03:26:34 16671 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
03:26:36 16672 >>>> Start io test
03:26:36 16672 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
03:34:17 16670 >>>> Test finished
03:38:12 16671 >>>> Test finished
03:42:12 16672 >>>> Test finished
2015-02-08 03:43:14.760 16470 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 4d01bd56-16a5-4779-9909-0a54bbb6c408.

--------------------------------------------------------------------------------
Task be0e01e1-d0b4-4438-8211-0dcbb8a25494: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileAxCCy9',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.43      | 1.579     | 1.727     | 1.697         | 1.712         | 66.7%   | 3     |
| nova.boot_server            | 59.598    | 60.62     | 61.642    | 61.437        | 61.54         | 66.7%   | 3     |
| nova.delete_server          | 107.422   | 110.554   | 113.686   | 113.059       | 113.373       | 66.7%   | 3     |
| nova.dissociate_floating_ip | 7.259     | 7.594     | 7.928     | 7.861         | 7.895         | 66.7%   | 3     |
| total                       | 662.103   | 784.922   | 907.741   | 883.178       | 895.459       | 66.7%   | 3     |
| vm.run_command              | 461.257   | 578.766   | 696.276   | 672.774       | 684.525       | 66.7%   | 3     |
| vm.wait_for_ping            | 4.372     | 4.909     | 5.446     | 5.339         | 5.392         | 66.7%   | 3     |
| vm.wait_for_ssh             | 6.33      | 10.25     | 14.17     | 13.386        | 13.778        | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 1039.57612801
Full duration: 1100.92216921

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report be0e01e1-d0b4-4438-8211-0dcbb8a25494 --out output.html

* To get raw JSON output of task results, run:
	rally task results be0e01e1-d0b4-4438-8211-0dcbb8a25494

Using task: be0e01e1-d0b4-4438-8211-0dcbb8a25494
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileLPYo3V -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 5596},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileWDIRGn -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 2456},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file7XPTqh -i 2 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 1547}]
================================================================================

====> {"randread a 4k": [3199, 3004]}

================================================================================
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 4k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 4k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
03:43:18 17180 >>>> Start rally with opts 'task start /tmp/filewY04CB --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileYAOZL4
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  c6df4441-cbe6-411a-9988-828c5f753190: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

03:45:09 17401 >>>> Start io test
03:45:09 17401 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
03:45:09 17400 >>>> Start io test
03:45:09 17400 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
03:45:10 17402 >>>> Start io test
03:45:10 17402 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
03:46:12 17402 >>>> Test finished
03:46:13 17401 >>>> Test finished
03:46:15 17400 >>>> Test finished
2015-02-08 03:46:45.887 17180 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: e055c38f-eb1a-4255-8e50-d5e61fba86e5.

--------------------------------------------------------------------------------
Task c6df4441-cbe6-411a-9988-828c5f753190: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileYAOZL4',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.312     | 1.503     | 1.633     | 1.619         | 1.626         | 100.0%  | 3     |
| nova.boot_server            | 60.807    | 63.406    | 67.252    | 66.233        | 66.743        | 100.0%  | 3     |
| nova.delete_server          | 5.118     | 5.181     | 5.283     | 5.255         | 5.269         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.791     | 5.063     | 6.726     | 6.715         | 6.721         | 100.0%  | 3     |
| total                       | 161.009   | 162.234   | 163.704   | 163.361       | 163.533       | 100.0%  | 3     |
| vm.run_command              | 62.605    | 63.704    | 65.078    | 64.748        | 64.913        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.739     | 5.253     | 6.098     | 5.863         | 5.981         | 100.0%  | 3     |
| vm.wait_for_ssh             | 8.83      | 12.046    | 14.362    | 14.079        | 14.22         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 163.799864054
Full duration: 204.062970161

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report c6df4441-cbe6-411a-9988-828c5f753190 --out output.html

* To get raw JSON output of task results, run:
	rally task results c6df4441-cbe6-411a-9988-828c5f753190

Using task: c6df4441-cbe6-411a-9988-828c5f753190
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileJDzs6n -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 93311},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileG1bSAG -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 93183},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file7jppMM -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 82790}]
================================================================================

====> {"read a 4k": [89761, 8538]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 4k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 4k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
03:46:49 17685 >>>> Start rally with opts 'task start /tmp/filer62bgm --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileEw9cBp
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  d07375f1-2c76-4e6c-b5ef-f7f77ac8713a: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

03:48:27 17882 >>>> Start io test
03:48:27 17882 >>>> Ready and waiting on barrier. Will wait at most 202 seconds
03:48:27 17880 >>>> Start io test
03:48:27 17880 >>>> Ready and waiting on barrier. Will wait at most 202 seconds
03:48:29 17881 >>>> Start io test
03:48:29 17881 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
03:49:28 17881 >>>> Test finished
03:49:29 17880 >>>> Test finished
03:49:30 17882 >>>> Test finished
2015-02-08 03:49:56.935 17685 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 5b1d3b23-3fdf-45e4-9bbf-474a00bf88b7.

--------------------------------------------------------------------------------
Task d07375f1-2c76-4e6c-b5ef-f7f77ac8713a: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileEw9cBp',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.312     | 1.471     | 1.598     | 1.579         | 1.589         | 100.0%  | 3     |
| nova.boot_server            | 60.969    | 62.361    | 63.1      | 63.083        | 63.092        | 100.0%  | 3     |
| nova.delete_server          | 5.329     | 6.731     | 7.442     | 7.438         | 7.44          | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.543     | 6.692     | 6.832     | 6.806         | 6.819         | 100.0%  | 3     |
| total                       | 157.705   | 158.191   | 159.086   | 158.826       | 158.956       | 100.0%  | 3     |
| vm.run_command              | 58.301    | 59.552    | 60.555    | 60.404        | 60.479        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.417     | 3.996     | 6.561     | 6.251         | 6.406         | 100.0%  | 3     |
| vm.wait_for_ssh             | 8.607     | 9.899     | 12.472    | 11.701        | 12.087        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 159.181003094
Full duration: 184.547394991

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report d07375f1-2c76-4e6c-b5ef-f7f77ac8713a --out output.html

* To get raw JSON output of task results, run:
	rally task results d07375f1-2c76-4e6c-b5ef-f7f77ac8713a

Using task: d07375f1-2c76-4e6c-b5ef-f7f77ac8713a
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileWTc16J -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 101778},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filefuW14Y -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 94327},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileUKBY4b -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 88073}]
================================================================================

====> {"read a 4k": [94726, 9703]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 4k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 4k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
03:50:00 18218 >>>> Start rally with opts 'task start /tmp/file6kNlAh --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filec8j2LC
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  eab9ae50-6dba-494c-8e7c-b746bb6cac47: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

03:51:35 18414 >>>> Start io test
03:51:35 18414 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
03:51:37 18412 >>>> Start io test
03:51:37 18412 >>>> Ready and waiting on barrier. Will wait at most 203 seconds
03:51:39 18413 >>>> Start io test
03:51:39 18413 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
03:52:40 18414 >>>> Test finished
03:52:41 18412 >>>> Test finished
03:52:42 18413 >>>> Test finished
2015-02-08 03:53:14.295 18218 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 73505413-80d5-497b-acaf-98026958166f.

--------------------------------------------------------------------------------
Task eab9ae50-6dba-494c-8e7c-b746bb6cac47: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filec8j2LC',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.491     | 1.513     | 1.554     | 1.542         | 1.548         | 100.0%  | 3     |
| nova.boot_server            | 62.204    | 62.691    | 63.636    | 63.355        | 63.496        | 100.0%  | 3     |
| nova.delete_server          | 5.15      | 6.78      | 10.018    | 9.049         | 9.534         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.513     | 3.302     | 6.842     | 5.784         | 6.313         | 100.0%  | 3     |
| total                       | 151.867   | 156.879   | 163.36    | 161.77        | 162.565       | 100.0%  | 3     |
| vm.run_command              | 61.108    | 62.273    | 63.423    | 63.196        | 63.309        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.316     | 2.283     | 6.098     | 4.966         | 5.532         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.67      | 7.548     | 8.389     | 8.228         | 8.309         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 163.49594593
Full duration: 190.661319971

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report eab9ae50-6dba-494c-8e7c-b746bb6cac47 --out output.html

* To get raw JSON output of task results, run:
	rally task results eab9ae50-6dba-494c-8e7c-b746bb6cac47

Using task: eab9ae50-6dba-494c-8e7c-b746bb6cac47
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileoMZBpL -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 102057},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileuL3kd5 -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 90171},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileqMW87o -i 1 -s 1003592 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 84684}]
================================================================================

====> {"read a 4k": [92304, 12559]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 64k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 64k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
03:53:18 18765 >>>> Start rally with opts 'task start /tmp/filebTBHbt --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filekoRmrS
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  55a8c53a-6382-4150-ba97-472feefb9a4c: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

03:55:00 18961 >>>> Start io test
03:55:00 18961 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
03:55:01 18960 >>>> Start io test
03:55:01 18960 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
03:55:02 18959 >>>> Start io test
03:55:02 18959 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
03:57:06 18959 >>>> Test finished
03:58:50 18960 >>>> Test finished
03:58:51 18961 >>>> Test finished
2015-02-08 03:59:49.063 18765 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 1c3529d2-3b3c-411f-b940-03c808699f04.

--------------------------------------------------------------------------------
Task 55a8c53a-6382-4150-ba97-472feefb9a4c: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filekoRmrS',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.525     | 1.594     | 1.648     | 1.64          | 1.644         | 100.0%  | 3     |
| nova.boot_server            | 64.224    | 65.255    | 65.788    | 65.781        | 65.785        | 100.0%  | 3     |
| nova.delete_server          | 5.275     | 39.871    | 102.086   | 84.12         | 93.103        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 2.219     | 5.665     | 7.573     | 7.499         | 7.536         | 100.0%  | 3     |
| total                       | 328.329   | 332.59    | 337.326   | 336.284       | 336.805       | 100.0%  | 3     |
| vm.run_command              | 124.315   | 194.091   | 229.598   | 229.351       | 229.475       | 100.0%  | 3     |
| vm.wait_for_ping            | 6.106     | 6.108     | 6.111     | 6.11          | 6.111         | 100.0%  | 3     |
| vm.wait_for_ssh             | 10.92     | 11.986    | 13.187    | 12.92         | 13.054        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 337.380197048
Full duration: 388.13932991

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 55a8c53a-6382-4150-ba97-472feefb9a4c --out output.html

* To get raw JSON output of task results, run:
	rally task results 55a8c53a-6382-4150-ba97-472feefb9a4c

Using task: 55a8c53a-6382-4150-ba97-472feefb9a4c
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filewjDdKA -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 47901},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileVTdIsv -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 14197},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filezmWQw0 -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 13118}]
================================================================================

====> {"randread a 64k": [25072, 27970]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 64k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 64k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
03:59:52 19298 >>>> Start rally with opts 'task start /tmp/fileOa9iPH --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filewDMref
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  e330e33b-cf77-4a7d-8fec-27754254a60b: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:01:33 19498 >>>> Start io test
04:01:33 19498 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
04:01:36 19496 >>>> Start io test
04:01:36 19496 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
04:01:36 19497 >>>> Start io test
04:01:36 19497 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
04:03:42 19497 >>>> Test finished
04:04:55 19496 >>>> Test finished
04:05:35 19498 >>>> Test finished
2015-02-08 04:06:22.542 19298 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: b595de09-0c4c-4bd1-ac6b-0b1411866ff4.

--------------------------------------------------------------------------------
Task e330e33b-cf77-4a7d-8fec-27754254a60b: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filewDMref',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.35      | 1.498     | 1.647     | 1.618         | 1.633         | 100.0%  | 3     |
| nova.boot_server            | 61.584    | 63.821    | 66.77     | 66.038        | 66.404        | 100.0%  | 3     |
| nova.delete_server          | 5.239     | 51.077    | 109.875   | 95.523        | 102.699       | 100.0%  | 3     |
| nova.dissociate_floating_ip | 2.473     | 5.576     | 7.732     | 7.49          | 7.611         | 100.0%  | 3     |
| total                       | 332.307   | 333.862   | 336.338   | 335.659       | 335.999       | 100.0%  | 3     |
| vm.run_command              | 125.145   | 187.652   | 239.068   | 231.003       | 235.036       | 100.0%  | 3     |
| vm.wait_for_ping            | 4.777     | 5.252     | 6.106     | 5.86          | 5.983         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.626     | 8.85      | 11.258    | 10.54         | 10.899        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 336.475885868
Full duration: 386.695617914

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report e330e33b-cf77-4a7d-8fec-27754254a60b --out output.html

* To get raw JSON output of task results, run:
	rally task results e330e33b-cf77-4a7d-8fec-27754254a60b

Using task: e330e33b-cf77-4a7d-8fec-27754254a60b
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filek5umT8 -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 49709},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileelA7gH -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 13419},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filenQTFsX -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 8837}]
================================================================================

====> {"randread a 64k": [23988, 31667]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 64k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 64k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:06:26 19842 >>>> Start rally with opts 'task start /tmp/fileOUHeTj --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filewk64m2
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  8d35b591-ac81-424c-916d-dced1d1b51d4: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:07:59 20036 >>>> Start io test
04:07:59 20036 >>>> Ready and waiting on barrier. Will wait at most 206 seconds
04:08:05 20038 >>>> Start io test
04:08:05 20038 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
04:08:07 20037 >>>> Start io test
04:08:07 20037 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
04:10:59 20038 >>>> Test finished
04:11:24 20036 >>>> Test finished
04:12:02 20037 >>>> Test finished
2015-02-08 04:12:54.143 19842 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 87a06072-58d2-47c2-b92d-aab4537d9a9d.

--------------------------------------------------------------------------------
Task 8d35b591-ac81-424c-916d-dced1d1b51d4: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filewk64m2',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.458     | 1.5       | 1.554     | 1.541         | 1.548         | 100.0%  | 3     |
| nova.boot_server            | 61.084    | 63.483    | 66.04     | 65.497        | 65.769        | 100.0%  | 3     |
| nova.delete_server          | 9.903     | 37.147    | 60.946    | 56.875        | 58.911        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 2.285     | 5.154     | 6.682     | 6.644         | 6.663         | 100.0%  | 3     |
| total                       | 330.782   | 333.862   | 339.373   | 337.784       | 338.579       | 100.0%  | 3     |
| vm.run_command              | 171.985   | 201.383   | 235.307   | 227.617       | 231.462       | 100.0%  | 3     |
| vm.wait_for_ping            | 0.305     | 2.421     | 4.871     | 4.314         | 4.593         | 100.0%  | 3     |
| vm.wait_for_ssh             | 5.402     | 8.885     | 13.594    | 12.407        | 13.0          | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 339.492558002
Full duration: 385.326843023

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 8d35b591-ac81-424c-916d-dced1d1b51d4 --out output.html

* To get raw JSON output of task results, run:
	rally task results 8d35b591-ac81-424c-916d-dced1d1b51d4

Using task: 8d35b591-ac81-424c-916d-dced1d1b51d4
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileM158IT -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 48054},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file6L0NhS -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 34874},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileL1z2EE -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 10868}]
================================================================================

====> {"randread a 64k": [31265, 26663]}

================================================================================
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 64k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 64k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:12:58 20422 >>>> Start rally with opts 'task start /tmp/filerOM6qj --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filedUh8Bg
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  5919bfba-0422-430d-997a-7c93f7f68952: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:14:32 20619 >>>> Start io test
04:14:32 20619 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
04:14:32 20617 >>>> Start io test
04:14:32 20617 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
04:14:33 20618 >>>> Start io test
04:14:33 20618 >>>> Ready and waiting on barrier. Will wait at most 204 seconds
04:15:34 20617 >>>> Test finished
04:15:36 20619 >>>> Test finished
04:15:36 20618 >>>> Test finished
2015-02-08 04:16:08.971 20422 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 073429f9-9553-46ed-ac1e-3adf3f83b029.

--------------------------------------------------------------------------------
Task 5919bfba-0422-430d-997a-7c93f7f68952: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filedUh8Bg',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.312     | 1.384     | 1.444     | 1.434         | 1.439         | 100.0%  | 3     |
| nova.boot_server            | 60.937    | 61.626    | 62.303    | 62.171        | 62.237        | 100.0%  | 3     |
| nova.delete_server          | 5.124     | 9.767     | 12.175    | 12.14         | 12.157        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.6       | 1.645     | 1.697     | 1.685         | 1.691         | 100.0%  | 3     |
| total                       | 148.661   | 155.004   | 158.26    | 158.226       | 158.243       | 100.0%  | 3     |
| vm.run_command              | 60.691    | 62.348    | 63.269    | 63.232        | 63.251        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.298     | 2.452     | 6.104     | 5.074         | 5.589         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.333     | 6.876     | 7.759     | 7.515         | 7.637         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 158.382258177
Full duration: 188.079952002

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 5919bfba-0422-430d-997a-7c93f7f68952 --out output.html

* To get raw JSON output of task results, run:
	rally task results 5919bfba-0422-430d-997a-7c93f7f68952

Using task: 5919bfba-0422-430d-997a-7c93f7f68952
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileSSIH46 -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 96822},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file2c9nrm -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 92380},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filedxJefl -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 85881}]
================================================================================

====> {"read a 64k": [91694, 7781]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 64k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 64k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:16:12 20896 >>>> Start rally with opts 'task start /tmp/filekpH6Xn --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filearhMTu
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  793b0236-ce2f-40b5-b1be-e3dcb867dbe5: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:17:47 21092 >>>> Start io test
04:17:47 21092 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
04:17:48 21093 >>>> Start io test
04:17:48 21093 >>>> Ready and waiting on barrier. Will wait at most 203 seconds
04:17:52 21091 >>>> Start io test
04:17:52 21091 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
04:18:54 21091 >>>> Test finished
04:18:55 21093 >>>> Test finished
04:18:55 21092 >>>> Test finished
2015-02-08 04:19:26.569 20896 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: f1cd9e32-c3ab-44cf-9b2e-d2a5c3ab7d3f.

--------------------------------------------------------------------------------
Task 793b0236-ce2f-40b5-b1be-e3dcb867dbe5: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filearhMTu',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.329     | 1.431     | 1.6       | 1.553         | 1.576         | 100.0%  | 3     |
| nova.boot_server            | 59.75     | 62.448    | 66.327    | 65.315        | 65.821        | 100.0%  | 3     |
| nova.delete_server          | 5.166     | 8.227     | 9.764     | 9.761         | 9.763         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.669     | 1.803     | 1.996     | 1.945         | 1.97          | 100.0%  | 3     |
| total                       | 153.152   | 158.751   | 163.843   | 162.925       | 163.384       | 100.0%  | 3     |
| vm.run_command              | 61.444    | 62.292    | 62.726    | 62.722        | 62.724        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.106     | 6.11      | 6.113     | 6.113         | 6.113         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.289     | 7.922     | 8.712     | 8.522         | 8.617         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 163.902353048
Full duration: 190.593609095

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 793b0236-ce2f-40b5-b1be-e3dcb867dbe5 --out output.html

* To get raw JSON output of task results, run:
	rally task results 793b0236-ce2f-40b5-b1be-e3dcb867dbe5

Using task: 793b0236-ce2f-40b5-b1be-e3dcb867dbe5
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filewG5auY -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 96590},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileDmAbvT -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 87036},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file9EBT5G -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 85956}]
================================================================================

====> {"read a 64k": [89860, 8277]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 64k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 64k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:19:30 21433 >>>> Start rally with opts 'task start /tmp/file8CgslP --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filebQkvFZ
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  8ef48348-00e0-4fc6-aa30-48ced6af74aa: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:21:16 21629 >>>> Start io test
04:21:16 21629 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
04:21:20 21627 >>>> Start io test
04:21:20 21627 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
04:21:22 21628 >>>> Start io test
04:21:22 21628 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
04:22:25 21627 >>>> Test finished
04:22:25 21629 >>>> Test finished
04:22:26 21628 >>>> Test finished
2015-02-08 04:23:02.741 21433 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: d651454f-1264-4c17-b2d4-de8a21af3d84.

--------------------------------------------------------------------------------
Task 8ef48348-00e0-4fc6-aa30-48ced6af74aa: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filebQkvFZ',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.416     | 1.652     | 1.885     | 1.839         | 1.862         | 100.0%  | 3     |
| nova.boot_server            | 61.576    | 62.167    | 63.142    | 62.871        | 63.007        | 100.0%  | 3     |
| nova.delete_server          | 5.108     | 7.509     | 12.152    | 10.775        | 11.464        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.664     | 3.325     | 6.613     | 5.63          | 6.121         | 100.0%  | 3     |
| total                       | 157.89    | 163.165   | 169.106   | 167.785       | 168.446       | 100.0%  | 3     |
| vm.run_command              | 62.889    | 63.305    | 63.756    | 63.659        | 63.707        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.1       | 6.109     | 6.113     | 6.113         | 6.113         | 100.0%  | 3     |
| vm.wait_for_ssh             | 8.757     | 11.298    | 12.685    | 12.638        | 12.661        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 169.206213951
Full duration: 209.484374046

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 8ef48348-00e0-4fc6-aa30-48ced6af74aa --out output.html

* To get raw JSON output of task results, run:
	rally task results 8ef48348-00e0-4fc6-aa30-48ced6af74aa

Using task: 8ef48348-00e0-4fc6-aa30-48ced6af74aa
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file9z0Fbs -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 84881},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filez9U2O5 -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 86992},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file7jkppV -i 1 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 88016}]
================================================================================

====> {"read a 64k": [86629, 2260]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 256k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 256k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:23:06 21978 >>>> Start rally with opts 'task start /tmp/fileCG9xio --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filewE7uNX
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  3abb8511-1e93-4241-9ee7-f2f4221eff20: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:24:46 22174 >>>> Start io test
04:24:46 22174 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
04:24:47 22172 >>>> Start io test
04:24:47 22172 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
04:24:47 22173 >>>> Start io test
04:24:47 22173 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
04:26:52 22173 >>>> Test finished
04:26:54 22172 >>>> Test finished
04:27:04 22174 >>>> Test finished
2015-02-08 04:27:50.016 21978 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 481ac5c2-a07b-4526-ba83-6a8d75dedca0.

--------------------------------------------------------------------------------
Task 3abb8511-1e93-4241-9ee7-f2f4221eff20: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filewE7uNX',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.387     | 1.472     | 1.64      | 1.59          | 1.615         | 100.0%  | 3     |
| nova.boot_server            | 59.435    | 61.663    | 64.875    | 64.036        | 64.456        | 100.0%  | 3     |
| nova.delete_server          | 5.128     | 13.613    | 18.923    | 18.496        | 18.71         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.582     | 6.655     | 6.758     | 6.732         | 6.745         | 100.0%  | 3     |
| total                       | 235.479   | 236.771   | 239.31    | 238.553       | 238.931       | 100.0%  | 3     |
| vm.run_command              | 124.205   | 129.273   | 137.069   | 134.964       | 136.017       | 100.0%  | 3     |
| vm.wait_for_ping            | 2.092     | 4.766     | 6.113     | 6.109         | 6.111         | 100.0%  | 3     |
| vm.wait_for_ssh             | 8.484     | 11.066    | 14.205    | 13.466        | 13.835        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 239.470646143
Full duration: 280.715167999

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 3abb8511-1e93-4241-9ee7-f2f4221eff20 --out output.html

* To get raw JSON output of task results, run:
	rally task results 3abb8511-1e93-4241-9ee7-f2f4221eff20

Using task: 3abb8511-1e93-4241-9ee7-f2f4221eff20
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filewisljU -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 80886},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileBSUYtv -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 71785},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file0HNpB0 -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 36555}]
================================================================================

====> {"randread a 256k": [63075, 33112]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 256k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 256k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:27:54 22513 >>>> Start rally with opts 'task start /tmp/fileBn8qPc --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filegpecvG
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  32b31e1a-0d23-412f-addf-ba2d1f8e65d9: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:29:33 22709 >>>> Start io test
04:29:33 22709 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
04:29:34 22708 >>>> Start io test
04:29:34 22708 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
04:29:35 22707 >>>> Start io test
04:29:35 22707 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
04:31:29 22709 >>>> Test finished
04:31:32 22708 >>>> Test finished
04:31:55 22707 >>>> Test finished
2015-02-08 04:32:30.143 22513 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 8a8137cc-5649-4eb5-9a25-4397b6de1019.

--------------------------------------------------------------------------------
Task 32b31e1a-0d23-412f-addf-ba2d1f8e65d9: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filegpecvG',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.517     | 3.159     | 6.39      | 5.426         | 5.908         | 100.0%  | 3     |
| nova.boot_server            | 61.943    | 65.005    | 67.837    | 67.317        | 67.577        | 100.0%  | 3     |
| nova.delete_server          | 9.836     | 19.827    | 28.242    | 26.875        | 27.559        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.482     | 6.562     | 6.7       | 6.661         | 6.68          | 100.0%  | 3     |
| total                       | 231.318   | 236.534   | 242.613   | 241.224       | 241.918       | 100.0%  | 3     |
| vm.run_command              | 114.631   | 124.047   | 140.193   | 135.618       | 137.905       | 100.0%  | 3     |
| vm.wait_for_ping            | 0.676     | 3.39      | 5.388     | 5.131         | 5.259         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.6       | 9.314     | 12.686    | 11.68         | 12.183        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 242.772460938
Full duration: 273.41289711

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 32b31e1a-0d23-412f-addf-ba2d1f8e65d9 --out output.html

* To get raw JSON output of task results, run:
	rally task results 32b31e1a-0d23-412f-addf-ba2d1f8e65d9

Using task: 32b31e1a-0d23-412f-addf-ba2d1f8e65d9
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filelufCrl -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 82316},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file5oPuOD -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 73212},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file5zQrVa -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 20493}]
================================================================================

====> {"randread a 256k": [58673, 47202]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 256k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 256k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:32:34 23044 >>>> Start rally with opts 'task start /tmp/filesBizOD --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filemrkLdh
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  739b5967-0338-4c1a-b62e-fcfbd08d5b68: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:34:14 23238 >>>> Start io test
04:34:14 23238 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
04:34:15 23240 >>>> Start io test
04:34:15 23240 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
04:34:23 23239 >>>> Start io test
04:34:23 23239 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
04:36:36 23238 >>>> Test finished
04:36:42 23239 >>>> Test finished
04:36:42 23240 >>>> Test finished
2015-02-08 04:37:31.459 23044 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 73c67b08-c370-4ef4-98e8-c2b923dc388d.

--------------------------------------------------------------------------------
Task 739b5967-0338-4c1a-b62e-fcfbd08d5b68: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filemrkLdh',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.377     | 1.499     | 1.564     | 1.562         | 1.563         | 100.0%  | 3     |
| nova.boot_server            | 63.112    | 63.733    | 64.654    | 64.41         | 64.532        | 100.0%  | 3     |
| nova.delete_server          | 7.479     | 11.248    | 14.263    | 13.811        | 14.037        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.558     | 4.949     | 6.66      | 6.654         | 6.657         | 100.0%  | 3     |
| total                       | 242.669   | 246.243   | 248.793   | 248.488       | 248.641       | 100.0%  | 3     |
| vm.run_command              | 133.273   | 137.081   | 138.998   | 138.992       | 138.995       | 100.0%  | 3     |
| vm.wait_for_ping            | 2.092     | 4.165     | 5.669     | 5.482         | 5.575         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.608     | 9.163     | 12.248    | 11.325        | 11.787        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 248.887854099
Full duration: 294.444478989

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 739b5967-0338-4c1a-b62e-fcfbd08d5b68 --out output.html

* To get raw JSON output of task results, run:
	rally task results 739b5967-0338-4c1a-b62e-fcfbd08d5b68

Using task: 739b5967-0338-4c1a-b62e-fcfbd08d5b68
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filesZaTGZ -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 75858},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filevQ259z -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 61209},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filevZHKW5 -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 70162}]
================================================================================

====> {"randread a 256k": [69076, 10443]}

================================================================================
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 256k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 256k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:37:35 23567 >>>> Start rally with opts 'task start /tmp/filedK1Atl --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filewDejyo
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  acd44fc4-425a-4d74-aba4-4189c08c7497: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:39:21 23761 >>>> Start io test
04:39:21 23761 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
04:39:28 23762 >>>> Start io test
04:39:28 23762 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
04:42:35 23761 >>>> Barrier timeouted
04:42:35 23762 >>>> Barrier timeouted
04:43:22 23762 >>>> Test finished
04:43:22 23761 >>>> Test finished
2015-02-08 04:44:27.949 23567 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: d912c821-d47e-4a87-9338-814a7e786c74.

--------------------------------------------------------------------------------
Task acd44fc4-425a-4d74-aba4-4189c08c7497: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filewDejyo',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.436     | 1.912     | 2.389     | 2.293         | 2.341         | 66.7%   | 3     |
| nova.boot_server            | 62.781    | 64.235    | 65.689    | 65.398        | 65.544        | 66.7%   | 3     |
| nova.delete_server          | 9.847     | 9.931     | 10.016    | 9.999         | 10.007        | 66.7%   | 3     |
| nova.dissociate_floating_ip | 7.802     | 7.98      | 8.159     | 8.123         | 8.141         | 66.7%   | 3     |
| total                       | 345.045   | 345.11    | 345.175   | 345.162       | 345.169       | 66.7%   | 3     |
| vm.run_command              | 46.693    | 46.822    | 46.95     | 46.925        | 46.938        | 66.7%   | 3     |
| vm.wait_for_ping            | 4.633     | 5.368     | 6.103     | 5.956         | 6.029         | 66.7%   | 3     |
| vm.wait_for_ssh             | 6.995     | 9.269     | 11.544    | 11.089        | 11.316        | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 345.318270922
Full duration: 409.839308023

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report acd44fc4-425a-4d74-aba4-4189c08c7497 --out output.html

* To get raw JSON output of task results, run:
	rally task results acd44fc4-425a-4d74-aba4-4189c08c7497

Using task: acd44fc4-425a-4d74-aba4-4189c08c7497
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileKfKe0H -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 108004},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file5u1vOZ -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 101816}]
================================================================================

====> {"read a 256k": [104910, 4375]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 256k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 256k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:44:32 24092 >>>> Start rally with opts 'task start /tmp/filexVCGgo --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filez4KNfO
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  7ce88724-7df6-4b49-9f26-e49a345647cc: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:46:12 24297 >>>> Start io test
04:46:12 24297 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
04:46:16 24296 >>>> Start io test
04:46:16 24296 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
04:46:18 24295 >>>> Start io test
04:46:18 24295 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
04:47:20 24297 >>>> Test finished
04:47:21 24295 >>>> Test finished
04:47:23 24296 >>>> Test finished
2015-02-08 04:47:53.995 24092 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: e9aafec8-b8da-4b44-b31e-bf468e53e0e2.

--------------------------------------------------------------------------------
Task 7ce88724-7df6-4b49-9f26-e49a345647cc: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filez4KNfO',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.438     | 1.525     | 1.687     | 1.64          | 1.663         | 100.0%  | 3     |
| nova.boot_server            | 59.839    | 61.903    | 63.582    | 63.323        | 63.452        | 100.0%  | 3     |
| nova.delete_server          | 5.175     | 7.477     | 11.978    | 10.638        | 11.308        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.6       | 1.654     | 1.757     | 1.727         | 1.742         | 100.0%  | 3     |
| total                       | 156.057   | 160.483   | 163.223   | 163.012       | 163.117       | 100.0%  | 3     |
| vm.run_command              | 62.062    | 63.076    | 64.538    | 64.156        | 64.347        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.312     | 3.764     | 6.326     | 5.992         | 6.159         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.926     | 11.424    | 14.171    | 13.972        | 14.071        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 163.290655851
Full duration: 199.127013922

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 7ce88724-7df6-4b49-9f26-e49a345647cc --out output.html

* To get raw JSON output of task results, run:
	rally task results 7ce88724-7df6-4b49-9f26-e49a345647cc

Using task: 7ce88724-7df6-4b49-9f26-e49a345647cc
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileBZmu7u -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 86069},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileMJWgkx -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 86387},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filen06XzA -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 93582}]
================================================================================

====> {"read a 256k": [88679, 6008]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 256k --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 256k --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:47:58 24633 >>>> Start rally with opts 'task start /tmp/filelosPDk --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filecw3NYv
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  62beae66-7fee-4826-b23b-d1e2edbf6e49: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:49:33 24828 >>>> Start io test
04:49:33 24828 >>>> Ready and waiting on barrier. Will wait at most 204 seconds
04:49:38 24827 >>>> Start io test
04:49:38 24827 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
04:49:40 24829 >>>> Start io test
04:49:40 24829 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
04:50:40 24828 >>>> Test finished
04:50:41 24829 >>>> Test finished
04:50:42 24827 >>>> Test finished
2015-02-08 04:51:17.634 24633 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 30bbf66d-3e06-458e-b6cb-0aa9bc58c3ee.

--------------------------------------------------------------------------------
Task 62beae66-7fee-4826-b23b-d1e2edbf6e49: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filecw3NYv',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.434     | 3.232     | 6.549     | 5.582         | 6.066         | 100.0%  | 3     |
| nova.boot_server            | 60.815    | 63.156    | 66.272    | 65.493        | 65.882        | 100.0%  | 3     |
| nova.delete_server          | 5.115     | 5.141     | 5.162     | 5.158         | 5.16          | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.609     | 1.777     | 1.9       | 1.884         | 1.892         | 100.0%  | 3     |
| total                       | 154.384   | 157.126   | 161.408   | 160.244       | 160.826       | 100.0%  | 3     |
| vm.run_command              | 60.477    | 61.402    | 62.28     | 62.114        | 62.197        | 100.0%  | 3     |
| vm.wait_for_ping            | 2.09      | 4.614     | 6.111     | 6.017         | 6.064         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.593     | 8.644     | 12.412    | 11.315        | 11.864        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 161.592362165
Full duration: 196.78255105

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 62beae66-7fee-4826-b23b-d1e2edbf6e49 --out output.html

* To get raw JSON output of task results, run:
	rally task results 62beae66-7fee-4826-b23b-d1e2edbf6e49

Using task: 62beae66-7fee-4826-b23b-d1e2edbf6e49
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file0ahPT6 -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 101168},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileOyfioD -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 92857},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filewRMU07 -i 1 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 86159}]
================================================================================

====> {"read a 256k": [93394, 10633]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 1m --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 1m --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:51:21 25123 >>>> Start rally with opts 'task start /tmp/fileHbzOND --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileeduZsF
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  fd529d00-5199-43fc-87f7-ada79955a2a4: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:53:10 25320 >>>> Start io test
04:53:10 25320 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
04:53:11 25319 >>>> Start io test
04:53:11 25319 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
04:53:11 25318 >>>> Start io test
04:53:11 25318 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
04:54:57 25319 >>>> Test finished
04:55:02 25320 >>>> Test finished
04:55:03 25318 >>>> Test finished
2015-02-08 04:55:58.443 25123 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: b413df76-2a5b-4277-8de5-0c1c43152ac6.

--------------------------------------------------------------------------------
Task fd529d00-5199-43fc-87f7-ada79955a2a4: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileeduZsF',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.411     | 1.569     | 1.69      | 1.674         | 1.682         | 100.0%  | 3     |
| nova.boot_server            | 60.735    | 62.942    | 66.269    | 65.379        | 65.824        | 100.0%  | 3     |
| nova.delete_server          | 7.42      | 9.731     | 12.07     | 11.597        | 11.833        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.595     | 4.982     | 6.834     | 6.771         | 6.802         | 100.0%  | 3     |
| total                       | 205.318   | 212.848   | 218.315   | 217.634       | 217.975       | 100.0%  | 3     |
| vm.run_command              | 106.017   | 109.443   | 111.364   | 111.281       | 111.322       | 100.0%  | 3     |
| vm.wait_for_ping            | 6.094     | 6.104     | 6.113     | 6.111         | 6.112         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.444     | 10.216    | 11.984    | 11.832        | 11.908        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 218.411695004
Full duration: 274.046303034

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report fd529d00-5199-43fc-87f7-ada79955a2a4 --out output.html

* To get raw JSON output of task results, run:
	rally task results fd529d00-5199-43fc-87f7-ada79955a2a4

Using task: fd529d00-5199-43fc-87f7-ada79955a2a4
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file6tx1kh -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 101681},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileM0llPC -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 78824},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileos3rXL -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 72668}]
================================================================================

====> {"randread a 1024k": [84391, 21618]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 1m --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 1m --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
04:56:02 25654 >>>> Start rally with opts 'task start /tmp/fileuiGk5R --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filemjpp91
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  28268549-0562-4c02-9cb6-aac6b5fecbf5: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

04:57:39 25850 >>>> Start io test
04:57:39 25850 >>>> Ready and waiting on barrier. Will wait at most 203 seconds
04:57:45 25852 >>>> Start io test
04:57:45 25852 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
04:57:45 25851 >>>> Start io test
04:57:45 25851 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
04:59:32 25850 >>>> Test finished
04:59:39 25851 >>>> Test finished
04:59:39 25852 >>>> Test finished
2015-02-08 05:00:21.954 25654 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 9c9fac38-55dd-441a-b796-3f5103bcff06.

--------------------------------------------------------------------------------
Task 28268549-0562-4c02-9cb6-aac6b5fecbf5: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filemjpp91',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.34      | 3.056     | 6.359     | 5.381         | 5.87          | 100.0%  | 3     |
| nova.boot_server            | 63.772    | 66.022    | 69.13     | 68.337        | 68.733        | 100.0%  | 3     |
| nova.delete_server          | 7.493     | 9.089     | 12.202    | 11.276        | 11.739        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.546     | 1.77      | 1.986     | 1.944         | 1.965         | 100.0%  | 3     |
| total                       | 209.572   | 212.238   | 216.06    | 215.065       | 215.562       | 100.0%  | 3     |
| vm.run_command              | 107.119   | 111.544   | 113.794   | 113.779       | 113.786       | 100.0%  | 3     |
| vm.wait_for_ping            | 0.282     | 2.352     | 6.092     | 5.01          | 5.551         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.418     | 8.999     | 11.886    | 11.047        | 11.467        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 216.108293056
Full duration: 256.594227076

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 28268549-0562-4c02-9cb6-aac6b5fecbf5 --out output.html

* To get raw JSON output of task results, run:
	rally task results 28268549-0562-4c02-9cb6-aac6b5fecbf5

Using task: 28268549-0562-4c02-9cb6-aac6b5fecbf5
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filec8gl5j -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 93787},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file7qisMV -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 80563},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file9H97NF -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 76548}]
================================================================================

====> {"randread a 1024k": [83632, 12756]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a randread --iodepth 16 --blocksize 1m --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a randread --iodepth 16 --blocksize 1m --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
05:00:26 26175 >>>> Start rally with opts 'task start /tmp/fileB4vQCD --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filemGoBvx
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  8972ec9b-5ef9-4936-a27a-35b270b7bfd6: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

05:02:10 26371 >>>> Start io test
05:02:10 26371 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
05:02:12 26369 >>>> Start io test
05:02:12 26369 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
05:02:14 26370 >>>> Start io test
05:02:14 26370 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
05:04:00 26371 >>>> Test finished
05:04:06 26369 >>>> Test finished
05:04:08 26370 >>>> Test finished
2015-02-08 05:04:56.216 26175 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 205dd318-7b68-4831-aa73-601adc8d129c.

--------------------------------------------------------------------------------
Task 8972ec9b-5ef9-4936-a27a-35b270b7bfd6: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filemGoBvx',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.422     | 1.539     | 1.606     | 1.602         | 1.604         | 100.0%  | 3     |
| nova.boot_server            | 61.314    | 64.564    | 68.446    | 67.543        | 67.995        | 100.0%  | 3     |
| nova.delete_server          | 5.108     | 8.983     | 12.076    | 11.614        | 11.845        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.638     | 6.646     | 6.656     | 6.654         | 6.655         | 100.0%  | 3     |
| total                       | 213.22    | 218.145   | 221.977   | 221.429       | 221.703       | 100.0%  | 3     |
| vm.run_command              | 105.769   | 110.486   | 113.763   | 113.396       | 113.579       | 100.0%  | 3     |
| vm.wait_for_ping            | 6.1       | 6.108     | 6.112     | 6.112         | 6.112         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.736     | 11.22     | 13.883    | 13.514        | 13.699        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 222.02217412
Full duration: 267.403285027

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 8972ec9b-5ef9-4936-a27a-35b270b7bfd6 --out output.html

* To get raw JSON output of task results, run:
	rally task results 8972ec9b-5ef9-4936-a27a-35b270b7bfd6

Using task: 8972ec9b-5ef9-4936-a27a-35b270b7bfd6
================================================================================
[{u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileNsKKQX -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 93992},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileFxGZw1 -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 85549},
 {u'__meta__': {u'action': u'randread',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file3KOpCP -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 65888}]
================================================================================

====> {"randread a 1024k": [81809, 20393]}

================================================================================
+ for op in '$ops'
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 1m --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 1m --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
05:05:00 26719 >>>> Start rally with opts 'task start /tmp/fileYaRVs8 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileh8n0jp
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  23e7109e-3a30-468d-adcb-87138980931a: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

05:06:41 26916 >>>> Start io test
05:06:41 26916 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
05:06:42 26914 >>>> Start io test
05:06:42 26914 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
05:06:54 26915 >>>> Start io test
05:06:54 26915 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
05:07:59 26914 >>>> Test finished
05:08:00 26916 >>>> Test finished
05:08:00 26915 >>>> Test finished
2015-02-08 05:08:39.982 26719 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 1eb245be-e3b4-4070-aade-4a3ec624c945.

--------------------------------------------------------------------------------
Task 23e7109e-3a30-468d-adcb-87138980931a: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileh8n0jp',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.477     | 4.761     | 6.423     | 6.415         | 6.419         | 100.0%  | 3     |
| nova.boot_server            | 63.393    | 65.136    | 67.456    | 66.877        | 67.167        | 100.0%  | 3     |
| nova.delete_server          | 5.198     | 6.749     | 9.81      | 8.896         | 9.353         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.727     | 3.514     | 6.846     | 5.871         | 6.359         | 100.0%  | 3     |
| total                       | 165.902   | 171.19    | 181.184   | 178.244       | 179.714       | 100.0%  | 3     |
| vm.run_command              | 64.228    | 64.863    | 65.202    | 65.193        | 65.198        | 100.0%  | 3     |
| vm.wait_for_ping            | 2.087     | 3.039     | 4.938     | 4.369         | 4.654         | 100.0%  | 3     |
| vm.wait_for_ssh             | 5.402     | 8.183     | 13.575    | 11.974        | 12.775        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 181.237936974
Full duration: 216.883905888

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 23e7109e-3a30-468d-adcb-87138980931a --out output.html

* To get raw JSON output of task results, run:
	rally task results 23e7109e-3a30-468d-adcb-87138980931a

Using task: 23e7109e-3a30-468d-adcb-87138980931a
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileOix7wc -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 95583},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileTaPoJq -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 86063},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/files1BdbM -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 86661}]
================================================================================

====> {"read a 1024k": [89435, 7540]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 1m --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 1m --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
05:08:44 27235 >>>> Start rally with opts 'task start /tmp/filebCnZJn --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileoDugfN
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f66db582-fea4-40cd-a030-0c65f387bc76: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

05:10:08 27432 >>>> Start io test
05:10:08 27432 >>>> Ready and waiting on barrier. Will wait at most 215 seconds
05:10:09 27433 >>>> Start io test
05:10:09 27433 >>>> Ready and waiting on barrier. Will wait at most 214 seconds
05:13:44 27433 >>>> Barrier timeouted
05:13:44 27432 >>>> Barrier timeouted
05:14:32 27433 >>>> Test finished
05:14:33 27432 >>>> Test finished
2015-02-08 05:15:37.838 27235 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 53080eac-94a0-4e75-872b-b6037d3452e5.

--------------------------------------------------------------------------------
Task f66db582-fea4-40cd-a030-0c65f387bc76: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileoDugfN',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.409     | 1.424     | 1.439     | 1.436         | 1.438         | 66.7%   | 3     |
| nova.boot_server            | 49.305    | 50.575    | 51.846    | 51.591        | 51.719        | 66.7%   | 3     |
| nova.delete_server          | 9.701     | 9.899     | 10.098    | 10.058        | 10.078        | 66.7%   | 3     |
| nova.dissociate_floating_ip | 6.984     | 7.16      | 7.335     | 7.3           | 7.318         | 66.7%   | 3     |
| total                       | 356.217   | 356.535   | 356.853   | 356.789       | 356.821       | 66.7%   | 3     |
| vm.run_command              | 48.423    | 48.817    | 49.211    | 49.132        | 49.172        | 66.7%   | 3     |
| vm.wait_for_ping            | 4.92      | 5.506     | 6.093     | 5.976         | 6.035         | 66.7%   | 3     |
| vm.wait_for_ssh             | 8.669     | 9.893     | 11.117    | 10.872        | 10.994        | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 356.929191113
Full duration: 411.290596962

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f66db582-fea4-40cd-a030-0c65f387bc76 --out output.html

* To get raw JSON output of task results, run:
	rally task results f66db582-fea4-40cd-a030-0c65f387bc76

Using task: f66db582-fea4-40cd-a030-0c65f387bc76
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileE2E8Nq -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 99005},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileOFqXFC -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 92046}]
================================================================================

====> {"read a 1024k": [95525, 4920]}

================================================================================
+ for xxx in '$three_times'
+ io_opts='--type iozone -a read --iodepth 16 --blocksize 1m --iosize r2'
+ python run_rally_test.py -l -o '--type iozone -a read --iodepth 16 --blocksize 1m --iosize r2' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
05:15:41 27751 >>>> Start rally with opts 'task start /tmp/filePYUOYZ --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileAHdwmJ
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  4240bf0e-40c6-43d2-bb9e-4bec28b49e03: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

05:17:14 27948 >>>> Start io test
05:17:14 27948 >>>> Ready and waiting on barrier. Will wait at most 206 seconds
05:17:16 27947 >>>> Start io test
05:17:16 27947 >>>> Ready and waiting on barrier. Will wait at most 205 seconds
05:17:20 27949 >>>> Start io test
05:17:20 27949 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
05:18:25 27949 >>>> Test finished
05:18:26 27948 >>>> Test finished
05:18:26 27947 >>>> Test finished
2015-02-08 05:18:59.409 27751 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 42416ed9-1598-4c3c-b5c3-5a5ae77c6a83.

--------------------------------------------------------------------------------
Task 4240bf0e-40c6-43d2-bb9e-4bec28b49e03: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileAHdwmJ',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.39      | 1.433     | 1.514     | 1.491         | 1.502         | 100.0%  | 3     |
| nova.boot_server            | 58.483    | 60.455    | 61.907    | 61.721        | 61.814        | 100.0%  | 3     |
| nova.delete_server          | 7.47      | 7.492     | 7.521     | 7.514         | 7.517         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.497     | 1.564     | 1.613     | 1.607         | 1.61          | 100.0%  | 3     |
| total                       | 158.334   | 158.884   | 159.296   | 159.241       | 159.269       | 100.0%  | 3     |
| vm.run_command              | 65.142    | 65.649    | 66.049    | 65.991        | 66.02         | 100.0%  | 3     |
| vm.wait_for_ping            | 0.077     | 3.694     | 6.11      | 5.867         | 5.988         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.78      | 9.677     | 13.139    | 12.134        | 12.636        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 159.385190964
Full duration: 194.767752171

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 4240bf0e-40c6-43d2-bb9e-4bec28b49e03 --out output.html

* To get raw JSON output of task results, run:
	rally task results 4240bf0e-40c6-43d2-bb9e-4bec28b49e03

Using task: 4240bf0e-40c6-43d2-bb9e-4bec28b49e03
================================================================================
[{u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileEcLEHF -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 89275},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileTVhZsd -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 87250},
 {u'__meta__': {u'action': u'read',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file4oss6O -i 1 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 81526}]
================================================================================

====> {"read a 1024k": [86017, 5683]}

================================================================================
+ set -e
+ type=iozone
+ bsizes='1k 4k 64k 256k 1m'
+ ops='write randwrite'
+ osync='s a'
+ three_times='1 2 3'
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
10:37:35 32301 >>>> Start rally with opts 'task start /tmp/filehyB17y --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileEGCEsO
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  dd02286f-f875-4bc6-9f82-5998b8ffe958: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

10:39:49 329 >>>> Start io test
10:39:49 329 >>>> Ready and waiting on barrier. Will wait at most 166 seconds
10:39:52 328 >>>> Start io test
10:39:52 328 >>>> Ready and waiting on barrier. Will wait at most 162 seconds
10:39:52 327 >>>> Start io test
10:39:52 327 >>>> Ready and waiting on barrier. Will wait at most 162 seconds
10:40:21 327 >>>> Test finished
10:40:22 329 >>>> Test finished
10:40:22 328 >>>> Test finished
2015-02-08 10:40:49.573 32301 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 75a56ef6-061f-4ee1-ab39-d59802d7f847.

--------------------------------------------------------------------------------
Task dd02286f-f875-4bc6-9f82-5998b8ffe958: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileEGCEsO',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.494     | 1.595     | 1.669     | 1.66          | 1.664         | 100.0%  | 3     |
| nova.boot_server            | 63.349    | 66.543    | 69.063    | 68.694        | 68.878        | 100.0%  | 3     |
| nova.delete_server          | 11.99     | 12.006    | 12.021    | 12.018        | 12.02         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.732     | 1.8       | 1.878     | 1.861         | 1.87          | 100.0%  | 3     |
| total                       | 134.27    | 134.718   | 134.954   | 134.949       | 134.951       | 100.0%  | 3     |
| vm.run_command              | 29.093    | 29.392    | 29.605    | 29.58         | 29.592        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.706     | 4.303     | 6.107     | 6.105         | 6.106         | 100.0%  | 3     |
| vm.wait_for_ssh             | 10.616    | 12.898    | 14.109    | 14.081        | 14.095        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 135.007599831
Full duration: 190.422322035

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report dd02286f-f875-4bc6-9f82-5998b8ffe958 --out output.html

* To get raw JSON output of task results, run:
	rally task results dd02286f-f875-4bc6-9f82-5998b8ffe958

Using task: dd02286f-f875-4bc6-9f82-5998b8ffe958
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file2snTzk -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileD84sYa -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 21},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileC5RuFR -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 21}]
================================================================================

====> {"write s 1k": [21, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
10:40:53 690 >>>> Start rally with opts 'task start /tmp/fileKkmiXX --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileaMkYXg
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  9f989f76-5d56-4243-9ef7-03ccc6139977: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

10:42:37 928 >>>> Start io test
10:42:37 928 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
10:42:39 926 >>>> Start io test
10:42:39 926 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
10:45:53 926 >>>> Barrier timeouted
10:45:53 928 >>>> Barrier timeouted
10:46:19 928 >>>> Test finished
10:46:19 926 >>>> Test finished
2015-02-08 10:47:14.718 690 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 4422694e-4734-42c8-b1bd-3491877993a0.

--------------------------------------------------------------------------------
Task 9f989f76-5d56-4243-9ef7-03ccc6139977: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileaMkYXg',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.627     | 1.697     | 1.767     | 1.753         | 1.76          | 66.7%   | 3     |
| nova.boot_server            | 62.447    | 63.224    | 64.001    | 63.845        | 63.923        | 66.7%   | 3     |
| nova.delete_server          | 9.824     | 9.893     | 9.961     | 9.948         | 9.954         | 66.7%   | 3     |
| nova.dissociate_floating_ip | 6.915     | 7.129     | 7.344     | 7.301         | 7.322         | 66.7%   | 3     |
| total                       | 319.656   | 321.858   | 324.061   | 323.62        | 323.84        | 66.7%   | 3     |
| vm.run_command              | 26.584    | 26.605    | 26.626    | 26.622        | 26.624        | 66.7%   | 3     |
| vm.wait_for_ping            | 4.885     | 5.493     | 6.101     | 5.979         | 6.04          | 66.7%   | 3     |
| vm.wait_for_ssh             | 6.213     | 6.896     | 7.579     | 7.442         | 7.511         | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 324.234832048
Full duration: 378.626694918

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 9f989f76-5d56-4243-9ef7-03ccc6139977 --out output.html

* To get raw JSON output of task results, run:
	rally task results 9f989f76-5d56-4243-9ef7-03ccc6139977

Using task: 9f989f76-5d56-4243-9ef7-03ccc6139977
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileh4i51u -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 24},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filebWvGEv -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 24}]
================================================================================

====> {"write s 1k": [24, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
10:47:18 1375 >>>> Start rally with opts 'task start /tmp/file44pQs6 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileViJvDS
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  31b1db69-7aad-4633-a9aa-37f45028799d: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

10:49:00 1609 >>>> Start io test
10:49:00 1609 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
10:49:02 1611 >>>> Start io test
10:49:02 1611 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
10:49:04 1610 >>>> Start io test
10:49:04 1610 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
10:49:31 1611 >>>> Test finished
10:49:32 1609 >>>> Test finished
10:49:32 1610 >>>> Test finished
2015-02-08 10:49:58.068 1375 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 5c19c371-7fb6-4ede-bdb7-b331393b155a.

--------------------------------------------------------------------------------
Task 31b1db69-7aad-4633-a9aa-37f45028799d: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileViJvDS',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.568     | 3.294     | 6.716     | 5.692         | 6.204         | 100.0%  | 3     |
| nova.boot_server            | 60.302    | 61.997    | 63.025    | 62.953        | 62.989        | 100.0%  | 3     |
| nova.delete_server          | 5.077     | 5.204     | 5.274     | 5.271         | 5.272         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.565     | 3.321     | 6.776     | 5.745         | 6.26          | 100.0%  | 3     |
| total                       | 115.479   | 117.993   | 121.759   | 120.756       | 121.258       | 100.0%  | 3     |
| vm.run_command              | 27.407    | 28.184    | 28.653    | 28.621        | 28.637        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.858     | 3.855     | 6.109     | 5.807         | 5.958         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.345     | 7.594     | 7.778     | 7.754         | 7.766         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 121.874637127
Full duration: 156.813775063

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 31b1db69-7aad-4633-a9aa-37f45028799d --out output.html

* To get raw JSON output of task results, run:
	rally task results 31b1db69-7aad-4633-a9aa-37f45028799d

Using task: 31b1db69-7aad-4633-a9aa-37f45028799d
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filexfdlTo -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 23},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filesCIFdb -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 23},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filereNbGe -i 0 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 23}]
================================================================================

====> {"write s 1k": [23, 0]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1k == \1\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1k == \1\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1k == \1\k ]]
+ continue
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
10:50:01 1934 >>>> Start rally with opts 'task start /tmp/file5HOdaz --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileBw4JmB
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  98e0d5c2-b38f-45d3-9553-9ff5b9a7f419: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

10:51:40 2164 >>>> Start io test
10:51:40 2164 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
10:51:44 2165 >>>> Start io test
10:51:44 2165 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
10:51:52 2166 >>>> Start io test
10:51:52 2166 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
10:52:21 2165 >>>> Test finished
10:52:23 2166 >>>> Test finished
10:52:23 2164 >>>> Test finished
2015-02-08 10:52:43.488 1934 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 20ad0c24-64c8-4b68-bceb-3f1f4d58db2b.

--------------------------------------------------------------------------------
Task 98e0d5c2-b38f-45d3-9553-9ff5b9a7f419: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileBw4JmB',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.374     | 3.113     | 6.483     | 5.482         | 5.983         | 100.0%  | 3     |
| nova.boot_server            | 61.529    | 62.848    | 63.528    | 63.52         | 63.524        | 100.0%  | 3     |
| nova.delete_server          | 5.093     | 5.155     | 5.244     | 5.221         | 5.233         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.549     | 1.633     | 1.702     | 1.691         | 1.697         | 100.0%  | 3     |
| total                       | 129.22    | 130.475   | 131.233   | 131.181       | 131.207       | 100.0%  | 3     |
| vm.run_command              | 28.846    | 30.156    | 30.814    | 30.813        | 30.813        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.285     | 2.237     | 6.101     | 4.946         | 5.523         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.664     | 12.341    | 19.77     | 17.734        | 18.752        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 131.294897795
Full duration: 156.272279024

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 98e0d5c2-b38f-45d3-9553-9ff5b9a7f419 --out output.html

* To get raw JSON output of task results, run:
	rally task results 98e0d5c2-b38f-45d3-9553-9ff5b9a7f419

Using task: 98e0d5c2-b38f-45d3-9553-9ff5b9a7f419
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileeM7TyD -i 2 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 22},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filePmz7et -i 2 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 20},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileypi56E -i 2 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 20}]
================================================================================

====> {"randwrite s 1k": [20, 1]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
10:52:47 2514 >>>> Start rally with opts 'task start /tmp/fileqwBIpi --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileWLpTjw
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  49664188-e738-40d1-a577-3cf08341f9c0: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

10:54:08 2714 >>>> Start io test
10:54:08 2714 >>>> Ready and waiting on barrier. Will wait at most 218 seconds
10:57:47 2714 >>>> Barrier timeouted
10:58:07 2714 >>>> Test finished
2015-02-08 10:59:07.017 2514 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: ad931d98-8911-463d-9e4f-c9c8a02f8714.

--------------------------------------------------------------------------------
Task 49664188-e738-40d1-a577-3cf08341f9c0: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileWLpTjw',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.417     | 1.417     | 1.417     | 1.417         | 1.417         | 33.3%   | 3     |
| nova.boot_server            | 39.48     | 39.48     | 39.48     | 39.48         | 39.48         | 33.3%   | 3     |
| nova.delete_server          | 10.017    | 10.017    | 10.017    | 10.017        | 10.017        | 33.3%   | 3     |
| nova.dissociate_floating_ip | 6.774     | 6.774     | 6.774     | 6.774         | 6.774         | 33.3%   | 3     |
| total                       | 323.168   | 323.168   | 323.168   | 323.168       | 323.168       | 33.3%   | 3     |
| vm.run_command              | 20.65     | 20.65     | 20.65     | 20.65         | 20.65         | 33.3%   | 3     |
| vm.wait_for_ping            | 8.11      | 8.11      | 8.11      | 8.11          | 8.11          | 33.3%   | 3     |
| vm.wait_for_ssh             | 4.501     | 4.501     | 4.501     | 4.501         | 4.501         | 33.3%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 323.242009878
Full duration: 377.146957874

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 49664188-e738-40d1-a577-3cf08341f9c0 --out output.html

* To get raw JSON output of task results, run:
	rally task results 49664188-e738-40d1-a577-3cf08341f9c0

Using task: 49664188-e738-40d1-a577-3cf08341f9c0
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file2MMnsw -i 2 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 35}]
================================================================================

====> {"randwrite s 1k": [35, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
10:59:10 3048 >>>> Start rally with opts 'task start /tmp/fileKKyxrI --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileEwTmTs
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f68bf877-0a14-4bbc-93aa-fb3989520b9a: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:00:55 3254 >>>> Start io test
11:00:55 3254 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
11:00:56 3252 >>>> Start io test
11:00:56 3252 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
11:01:06 3253 >>>> Start io test
11:01:06 3253 >>>> Ready and waiting on barrier. Will wait at most 184 seconds
11:01:36 3253 >>>> Test finished
11:01:36 3252 >>>> Test finished
11:01:36 3254 >>>> Test finished
2015-02-08 11:02:01.521 3048 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: a31b53d3-fe03-4cc5-ad5d-97873d93b33f.

--------------------------------------------------------------------------------
Task f68bf877-0a14-4bbc-93aa-fb3989520b9a: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileEwTmTs',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.446     | 3.164     | 6.57      | 5.551         | 6.061         | 100.0%  | 3     |
| nova.boot_server            | 58.357    | 63.108    | 67.413    | 66.641        | 67.027        | 100.0%  | 3     |
| nova.delete_server          | 5.086     | 6.682     | 9.7       | 8.812         | 9.256         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.807     | 1.86      | 1.949     | 1.924         | 1.937         | 100.0%  | 3     |
| total                       | 127.869   | 131.07    | 132.673   | 132.672       | 132.672       | 100.0%  | 3     |
| vm.run_command              | 30.034    | 30.088    | 30.17     | 30.148        | 30.159        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.427     | 2.408     | 6.105     | 5.022         | 5.563         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.761     | 10.526    | 12.142    | 12.049        | 12.095        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 132.716315985
Full duration: 167.34110117

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f68bf877-0a14-4bbc-93aa-fb3989520b9a --out output.html

* To get raw JSON output of task results, run:
	rally task results f68bf877-0a14-4bbc-93aa-fb3989520b9a

Using task: f68bf877-0a14-4bbc-93aa-fb3989520b9a
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileBpSPk6 -i 2 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 21},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileVksLoX -i 2 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 21},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileFoiQsW -i 2 -s 500 -r 1 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 500,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 21}]
================================================================================

====> {"randwrite s 1k": [21, 0]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1k == \1\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1k == \1\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1k == \1\k ]]
+ continue
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:02:05 3547 >>>> Start rally with opts 'task start /tmp/fileF1aCUK --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileG5YZ8m
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  6dc8f06c-6730-4b04-baa3-2a96e1850947: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:03:44 3779 >>>> Start io test
11:03:44 3779 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
11:03:50 3780 >>>> Start io test
11:03:50 3780 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
11:03:50 3781 >>>> Start io test
11:03:50 3781 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
11:04:19 3779 >>>> Test finished
11:04:20 3780 >>>> Test finished
11:04:20 3781 >>>> Test finished
2015-02-08 11:04:43.211 3547 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 6b49a1b7-d327-4ccd-923c-f34a7953ce4a.

--------------------------------------------------------------------------------
Task 6dc8f06c-6730-4b04-baa3-2a96e1850947: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileG5YZ8m',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.377     | 1.433     | 1.479     | 1.472         | 1.476         | 100.0%  | 3     |
| nova.boot_server            | 62.781    | 63.489    | 64.149    | 64.027        | 64.088        | 100.0%  | 3     |
| nova.delete_server          | 5.104     | 5.421     | 5.89      | 5.766         | 5.828         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.595     | 1.838     | 2.019     | 1.995         | 2.007         | 100.0%  | 3     |
| total                       | 125.873   | 126.765   | 128.523   | 127.998       | 128.26        | 100.0%  | 3     |
| vm.run_command              | 29.287    | 29.498    | 29.71     | 29.667        | 29.689        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.821     | 6.346     | 8.121     | 7.716         | 7.919         | 100.0%  | 3     |
| vm.wait_for_ssh             | 9.832     | 12.785    | 15.14     | 14.788        | 14.964        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 128.609117985
Full duration: 155.140303135

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 6dc8f06c-6730-4b04-baa3-2a96e1850947 --out output.html

* To get raw JSON output of task results, run:
	rally task results 6dc8f06c-6730-4b04-baa3-2a96e1850947

Using task: 6dc8f06c-6730-4b04-baa3-2a96e1850947
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileH2qKUA -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 88},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileWwzFeW -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 87},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filepno6BN -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 86}]
================================================================================

====> {"write s 4k": [87, 1]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:04:46 4079 >>>> Start rally with opts 'task start /tmp/fileIrXOYd --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file7Uoq69
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  245eaa33-b291-478c-94fd-1971fe974be1: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:06:26 4291 >>>> Start io test
11:06:26 4291 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
11:06:32 4292 >>>> Start io test
11:06:32 4292 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
11:06:36 4293 >>>> Start io test
11:06:36 4293 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
11:07:04 4293 >>>> Test finished
11:07:05 4291 >>>> Test finished
11:07:05 4292 >>>> Test finished
2015-02-08 11:07:29.712 4079 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 06b34830-18ac-4a0a-b33a-0a846bd92432.

--------------------------------------------------------------------------------
Task 245eaa33-b291-478c-94fd-1971fe974be1: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file7Uoq69',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.452     | 3.082     | 6.259     | 5.314         | 5.787         | 100.0%  | 3     |
| nova.boot_server            | 61.737    | 62.691    | 64.466    | 63.947        | 64.207        | 100.0%  | 3     |
| nova.delete_server          | 5.146     | 5.169     | 5.204     | 5.194         | 5.199         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.636     | 3.309     | 6.472     | 5.542         | 6.007         | 100.0%  | 3     |
| total                       | 125.955   | 127.47    | 130.204   | 129.414       | 129.809       | 100.0%  | 3     |
| vm.run_command              | 28.431    | 28.865    | 29.086    | 29.084        | 29.085        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.496     | 3.857     | 6.106     | 5.878         | 5.992         | 100.0%  | 3     |
| vm.wait_for_ssh             | 5.495     | 12.666    | 18.481    | 17.589        | 18.035        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 130.31379199
Full duration: 160.127550125

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 245eaa33-b291-478c-94fd-1971fe974be1 --out output.html

* To get raw JSON output of task results, run:
	rally task results 245eaa33-b291-478c-94fd-1971fe974be1

Using task: 245eaa33-b291-478c-94fd-1971fe974be1
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileNzRQAN -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 91},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileuHIQVp -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 88},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filetjj1rR -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 88}]
================================================================================

====> {"write s 4k": [89, 2]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:07:33 4743 >>>> Start rally with opts 'task start /tmp/fileb9BfA9 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileSVAROe
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f75b3508-274d-4d20-a997-dbfe534d19ea: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:08:55 4972 >>>> Start io test
11:08:55 4972 >>>> Ready and waiting on barrier. Will wait at most 218 seconds
11:08:57 4971 >>>> Start io test
11:08:57 4971 >>>> Ready and waiting on barrier. Will wait at most 215 seconds
11:12:33 4971 >>>> Barrier timeouted
11:12:33 4972 >>>> Barrier timeouted
11:13:01 4972 >>>> Test finished
11:13:01 4971 >>>> Test finished
2015-02-08 11:14:00.697 4743 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 8b6b282c-9be6-4a99-9711-a1c5d65d7a3f.

--------------------------------------------------------------------------------
Task f75b3508-274d-4d20-a997-dbfe534d19ea: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileSVAROe',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.497     | 1.52      | 1.544     | 1.539         | 1.541         | 66.7%   | 3     |
| nova.boot_server            | 49.726    | 51.049    | 52.371    | 52.106        | 52.238        | 66.7%   | 3     |
| nova.delete_server          | 9.924     | 9.967     | 10.011    | 10.002        | 10.006        | 66.7%   | 3     |
| nova.dissociate_floating_ip | 7.541     | 7.586     | 7.631     | 7.622         | 7.626         | 66.7%   | 3     |
| total                       | 330.652   | 330.659   | 330.666   | 330.664       | 330.665       | 66.7%   | 3     |
| vm.run_command              | 27.662    | 27.663    | 27.664    | 27.664        | 27.664        | 66.7%   | 3     |
| vm.wait_for_ping            | 6.111     | 6.417     | 6.723     | 6.662         | 6.693         | 66.7%   | 3     |
| vm.wait_for_ssh             | 6.434     | 6.479     | 6.524     | 6.515         | 6.519         | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 330.746035099
Full duration: 384.400408983

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f75b3508-274d-4d20-a997-dbfe534d19ea --out output.html

* To get raw JSON output of task results, run:
	rally task results f75b3508-274d-4d20-a997-dbfe534d19ea

Using task: f75b3508-274d-4d20-a997-dbfe534d19ea
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileFM5QaP -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 101},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file7IYUS0 -i 0 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 100}]
================================================================================

====> {"write s 4k": [100, 0]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 4k == \1\k ]]
+ [[ 4k == \4\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 4k == \1\k ]]
+ [[ 4k == \4\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 4k == \1\k ]]
+ [[ 4k == \4\k ]]
+ continue
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:14:04 5407 >>>> Start rally with opts 'task start /tmp/fileM7d164 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file3djPOq
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  d3602ef0-a1c4-48f1-b573-b58611220be9: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:15:47 5682 >>>> Start io test
11:15:47 5682 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
11:15:50 5683 >>>> Start io test
11:15:50 5683 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
11:15:51 5681 >>>> Start io test
11:15:51 5681 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
11:16:23 5683 >>>> Test finished
11:16:23 5682 >>>> Test finished
11:16:23 5681 >>>> Test finished
2015-02-08 11:16:46.164 5407 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: ac00b279-1794-4fb1-bdef-1bc622e26cc7.

--------------------------------------------------------------------------------
Task d3602ef0-a1c4-48f1-b573-b58611220be9: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file3djPOq',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.381     | 1.471     | 1.531     | 1.525         | 1.528         | 100.0%  | 3     |
| nova.boot_server            | 60.201    | 61.391    | 62.768    | 62.455        | 62.611        | 100.0%  | 3     |
| nova.delete_server          | 5.528     | 6.888     | 7.732     | 7.667         | 7.699         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.624     | 1.687     | 1.764     | 1.746         | 1.755         | 100.0%  | 3     |
| total                       | 125.912   | 127.249   | 128.11    | 128.033       | 128.072       | 100.0%  | 3     |
| vm.run_command              | 31.666    | 31.785    | 31.866    | 31.857        | 31.862        | 100.0%  | 3     |
| vm.wait_for_ping            | 2.085     | 5.426     | 8.102     | 7.7           | 7.901         | 100.0%  | 3     |
| vm.wait_for_ssh             | 11.903    | 11.926    | 11.949    | 11.945        | 11.947        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 128.202951908
Full duration: 159.013564825

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report d3602ef0-a1c4-48f1-b573-b58611220be9 --out output.html

* To get raw JSON output of task results, run:
	rally task results d3602ef0-a1c4-48f1-b573-b58611220be9

Using task: d3602ef0-a1c4-48f1-b573-b58611220be9
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileWEyq61 -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 80},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileRMVV0V -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 79},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileQjua6t -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 79}]
================================================================================

====> {"randwrite s 4k": [79, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:16:50 6045 >>>> Start rally with opts 'task start /tmp/fileFtvmlZ --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filecGXBsw
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  3c60ce93-cf5c-49fc-81cf-b4a00a7fb51d: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:18:27 6298 >>>> Start io test
11:18:27 6298 >>>> Ready and waiting on barrier. Will wait at most 202 seconds
11:18:28 6296 >>>> Start io test
11:18:28 6296 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
11:18:32 6297 >>>> Start io test
11:18:32 6297 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
11:19:03 6297 >>>> Test finished
11:19:03 6298 >>>> Test finished
11:19:03 6296 >>>> Test finished
2015-02-08 11:19:34.826 6045 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 6cbe48f8-f0d5-4890-b7f0-9a39a9ee559e.

--------------------------------------------------------------------------------
Task 3c60ce93-cf5c-49fc-81cf-b4a00a7fb51d: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filecGXBsw',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.414     | 1.542     | 1.67      | 1.645         | 1.657         | 100.0%  | 3     |
| nova.boot_server            | 60.696    | 62.117    | 64.007    | 63.535        | 63.771        | 100.0%  | 3     |
| nova.delete_server          | 5.139     | 5.295     | 5.411     | 5.396         | 5.404         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.621     | 1.807     | 1.9       | 1.9           | 1.9           | 100.0%  | 3     |
| total                       | 121.503   | 125.144   | 126.966   | 126.965       | 126.965       | 100.0%  | 3     |
| vm.run_command              | 31.616    | 31.71     | 31.768    | 31.764        | 31.766        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.522     | 5.086     | 6.096     | 5.805         | 5.951         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.618     | 7.707     | 8.887     | 8.633         | 8.76          | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 127.094724894
Full duration: 162.131831884

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 3c60ce93-cf5c-49fc-81cf-b4a00a7fb51d --out output.html

* To get raw JSON output of task results, run:
	rally task results 3c60ce93-cf5c-49fc-81cf-b4a00a7fb51d

Using task: 3c60ce93-cf5c-49fc-81cf-b4a00a7fb51d
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileVYgEWx -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 80},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filepck4eO -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 79},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileoo2yqs -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 79}]
================================================================================

====> {"randwrite s 4k": [79, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 4k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 4k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:19:38 6612 >>>> Start rally with opts 'task start /tmp/fileG1cz5o --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileSG83G0
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  b17dad8f-e2a1-4d33-8794-bff9b64cd731: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:21:06 6838 >>>> Start io test
11:21:06 6838 >>>> Ready and waiting on barrier. Will wait at most 212 seconds
11:21:11 6839 >>>> Start io test
11:21:11 6839 >>>> Ready and waiting on barrier. Will wait at most 207 seconds
11:24:38 6839 >>>> Barrier timeouted
11:24:38 6838 >>>> Barrier timeouted
11:25:06 6839 >>>> Test finished
11:25:06 6838 >>>> Test finished
2015-02-08 11:25:57.189 6612 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 3a012f5e-eaae-476e-9f19-69f72ce2c077.

--------------------------------------------------------------------------------
Task b17dad8f-e2a1-4d33-8794-bff9b64cd731: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileSG83G0',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.441     | 1.476     | 1.511     | 1.504         | 1.507         | 66.7%   | 3     |
| nova.boot_server            | 54.69     | 54.74     | 54.79     | 54.78         | 54.785        | 66.7%   | 3     |
| nova.delete_server          | 9.971     | 10.021    | 10.071    | 10.061        | 10.066        | 66.7%   | 3     |
| nova.dissociate_floating_ip | 7.632     | 7.694     | 7.755     | 7.743         | 7.749         | 66.7%   | 3     |
| total                       | 335.885   | 335.899   | 335.912   | 335.91        | 335.911       | 66.7%   | 3     |
| vm.run_command              | 27.473    | 27.59     | 27.708    | 27.684        | 27.696        | 66.7%   | 3     |
| vm.wait_for_ping            | 6.097     | 6.446     | 6.795     | 6.725         | 6.76          | 66.7%   | 3     |
| vm.wait_for_ssh             | 7.52      | 9.745     | 11.97     | 11.525        | 11.748        | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 335.979773998
Full duration: 376.205813169

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report b17dad8f-e2a1-4d33-8794-bff9b64cd731 --out output.html

* To get raw JSON output of task results, run:
	rally task results b17dad8f-e2a1-4d33-8794-bff9b64cd731

Using task: b17dad8f-e2a1-4d33-8794-bff9b64cd731
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileCGlaC1 -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 96},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 4,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filemuKMb9 -i 2 -s 2000 -r 4 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 2000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 95}]
================================================================================

====> {"randwrite s 4k": [95, 0]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 4k == \1\k ]]
+ [[ 4k == \4\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 4k == \1\k ]]
+ [[ 4k == \4\k ]]
+ continue
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 4k == \1\k ]]
+ [[ 4k == \4\k ]]
+ continue
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:26:01 7175 >>>> Start rally with opts 'task start /tmp/fileVVAofR --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileIInJb1
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  0a3d23e7-b230-4a8c-8215-a37fe0ca8e29: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:27:59 7380 >>>> Start io test
11:27:59 7380 >>>> Ready and waiting on barrier. Will wait at most 181 seconds
11:28:00 7379 >>>> Start io test
11:28:00 7379 >>>> Ready and waiting on barrier. Will wait at most 180 seconds
11:28:05 7381 >>>> Start io test
11:28:05 7381 >>>> Ready and waiting on barrier. Will wait at most 175 seconds
11:28:39 7381 >>>> Test finished
11:28:39 7380 >>>> Test finished
11:28:40 7379 >>>> Test finished
2015-02-08 11:29:04.653 7175 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: d27e7f89-eb7c-411b-ba6f-91c8fe733fbc.

--------------------------------------------------------------------------------
Task 0a3d23e7-b230-4a8c-8215-a37fe0ca8e29: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileIInJb1',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.414     | 1.456     | 1.511     | 1.497         | 1.504         | 100.0%  | 3     |
| nova.boot_server            | 62.01     | 66.041    | 68.569    | 68.364        | 68.466        | 100.0%  | 3     |
| nova.delete_server          | 5.102     | 6.641     | 9.675     | 8.769         | 9.222         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.479     | 1.557     | 1.609     | 1.604         | 1.606         | 100.0%  | 3     |
| total                       | 138.961   | 139.071   | 139.226   | 139.186       | 139.206       | 100.0%  | 3     |
| vm.run_command              | 33.762    | 34.062    | 34.414    | 34.333        | 34.373        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.856     | 5.829     | 6.527     | 6.442         | 6.484         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.701     | 11.931    | 18.558    | 16.753        | 17.655        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 139.335828781
Full duration: 179.314894915

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 0a3d23e7-b230-4a8c-8215-a37fe0ca8e29 --out output.html

* To get raw JSON output of task results, run:
	rally task results 0a3d23e7-b230-4a8c-8215-a37fe0ca8e29

Using task: 0a3d23e7-b230-4a8c-8215-a37fe0ca8e29
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filevlmWel -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1235},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileN90iux -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1215},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filewbCPwM -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1193}]
================================================================================

====> {"write s 64k": [1214, 29]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:29:08 7702 >>>> Start rally with opts 'task start /tmp/fileiCOGNb --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileE1QROL
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  fff944c0-cb86-46cc-9e9c-ea15349a8225: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:30:45 7931 >>>> Start io test
11:30:45 7931 >>>> Ready and waiting on barrier. Will wait at most 202 seconds
11:30:53 7929 >>>> Start io test
11:30:53 7929 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
11:30:55 7930 >>>> Start io test
11:30:55 7930 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
11:31:29 7929 >>>> Test finished
11:31:29 7930 >>>> Test finished
11:31:29 7931 >>>> Test finished
2015-02-08 11:31:59.424 7702 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 2750cf4b-031f-4474-b186-80c265696334.

--------------------------------------------------------------------------------
Task fff944c0-cb86-46cc-9e9c-ea15349a8225: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileE1QROL',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.371     | 1.59      | 1.955     | 1.852         | 1.904         | 100.0%  | 3     |
| nova.boot_server            | 59.183    | 60.251    | 61.276    | 61.079        | 61.178        | 100.0%  | 3     |
| nova.delete_server          | 5.097     | 5.116     | 5.147     | 5.139         | 5.143         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.744     | 1.803     | 1.912     | 1.88          | 1.896         | 100.0%  | 3     |
| total                       | 127.045   | 128.717   | 132.056   | 131.055       | 131.556       | 100.0%  | 3     |
| vm.run_command              | 34.068    | 34.162    | 34.235    | 34.224        | 34.229        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.099     | 6.1       | 6.1       | 6.1           | 6.1           | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.22      | 10.311    | 12.415    | 12.391        | 12.403        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 132.110380173
Full duration: 167.184324026

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report fff944c0-cb86-46cc-9e9c-ea15349a8225 --out output.html

* To get raw JSON output of task results, run:
	rally task results fff944c0-cb86-46cc-9e9c-ea15349a8225

Using task: fff944c0-cb86-46cc-9e9c-ea15349a8225
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileyGEuU4 -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1209},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filemOIIgK -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1204},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filebz3xiu -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1204}]
================================================================================

====> {"write s 64k": [1205, 4]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:32:03 8235 >>>> Start rally with opts 'task start /tmp/filexTxvMH --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileq7Uko9
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  60c5791e-9d50-4c7f-a598-6a5e11832130: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:33:42 8465 >>>> Start io test
11:33:42 8465 >>>> Ready and waiting on barrier. Will wait at most 201 seconds
11:33:43 8466 >>>> Start io test
11:33:43 8466 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
11:33:46 8467 >>>> Start io test
11:33:46 8467 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
11:34:20 8466 >>>> Test finished
11:34:20 8465 >>>> Test finished
11:34:20 8467 >>>> Test finished
2015-02-08 11:34:50.918 8235 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 872c8ad1-1131-49b5-b8a4-da52f1856ec8.

--------------------------------------------------------------------------------
Task 60c5791e-9d50-4c7f-a598-6a5e11832130: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileq7Uko9',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.46      | 1.485     | 1.505     | 1.502         | 1.504         | 100.0%  | 3     |
| nova.boot_server            | 60.743    | 60.851    | 60.916    | 60.911        | 60.914        | 100.0%  | 3     |
| nova.delete_server          | 5.099     | 5.147     | 5.218     | 5.199         | 5.208         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.548     | 1.657     | 1.793     | 1.76          | 1.777         | 100.0%  | 3     |
| total                       | 124.369   | 126.33    | 129.91    | 128.87        | 129.39        | 100.0%  | 3     |
| vm.run_command              | 33.775    | 33.948    | 34.141    | 34.099        | 34.12         | 100.0%  | 3     |
| vm.wait_for_ping            | 5.914     | 6.938     | 8.119     | 7.851         | 7.985         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.599     | 9.018     | 12.784    | 11.761        | 12.272        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 129.98637104
Full duration: 164.914983988

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 60c5791e-9d50-4c7f-a598-6a5e11832130 --out output.html

* To get raw JSON output of task results, run:
	rally task results 60c5791e-9d50-4c7f-a598-6a5e11832130

Using task: 60c5791e-9d50-4c7f-a598-6a5e11832130
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileEULISq -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1231},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileVezThx -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1224},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileEG0pO9 -i 0 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1215}]
================================================================================

====> {"write s 64k": [1223, 11]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 64k == \1\k ]]
+ [[ 64k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:34:55 8808 >>>> Start rally with opts 'task start /tmp/filesh4Wuo --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file26VUrO
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  07e38409-92da-476f-9cb2-f6d9a648350d: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:36:36 9038 >>>> Start io test
11:36:36 9038 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
11:36:36 9039 >>>> Start io test
11:36:36 9039 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
11:36:39 9040 >>>> Start io test
11:36:39 9040 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
11:38:16 9038 >>>> Test finished
11:38:17 9039 >>>> Test finished
11:38:18 9040 >>>> Test finished
2015-02-08 11:39:02.343 8808 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 455518e4-6786-44cd-a12e-dcf726c8eb00.

--------------------------------------------------------------------------------
Task 07e38409-92da-476f-9cb2-f6d9a648350d: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file26VUrO',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.312     | 1.391     | 1.468     | 1.453         | 1.46          | 100.0%  | 3     |
| nova.boot_server            | 61.378    | 62.041    | 63.076    | 62.794        | 62.935        | 100.0%  | 3     |
| nova.delete_server          | 9.682     | 11.249    | 12.097    | 12.072        | 12.084        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.892     | 3.609     | 6.978     | 5.973         | 6.476         | 100.0%  | 3     |
| total                       | 195.481   | 198.5     | 203.08    | 201.852       | 202.466       | 100.0%  | 3     |
| vm.run_command              | 96.978    | 97.45     | 98.308    | 98.059        | 98.184        | 100.0%  | 3     |
| vm.wait_for_ping            | 2.077     | 4.757     | 6.105     | 6.102         | 6.103         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.71      | 9.255     | 11.582    | 10.96         | 11.271        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 203.20609498
Full duration: 244.972934008

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 07e38409-92da-476f-9cb2-f6d9a648350d --out output.html

* To get raw JSON output of task results, run:
	rally task results 07e38409-92da-476f-9cb2-f6d9a648350d

Using task: 07e38409-92da-476f-9cb2-f6d9a648350d
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filevF5GLL -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 25333},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileXwKDlk -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 25108},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileScg8Ql -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 23460}]
================================================================================

====> {"write a 64k": [24633, 1446]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 64k == \1\k ]]
+ [[ 64k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:39:06 9463 >>>> Start rally with opts 'task start /tmp/file0N2rmd --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileP3P5uN
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  ffa53e35-2c39-4c6c-a4bd-22828da7d000: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:40:46 9659 >>>> Start io test
11:40:46 9659 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
11:40:48 9658 >>>> Start io test
11:40:48 9658 >>>> Ready and waiting on barrier. Will wait at most 198 seconds
11:40:49 9657 >>>> Start io test
11:40:49 9657 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
11:42:24 9657 >>>> Test finished
11:42:29 9658 >>>> Test finished
11:42:30 9659 >>>> Test finished
2015-02-08 11:43:22.181 9463 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 7de1420c-2ea3-4a47-8342-6eda0736c23c.

--------------------------------------------------------------------------------
Task ffa53e35-2c39-4c6c-a4bd-22828da7d000: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileP3P5uN',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.459     | 1.577     | 1.762     | 1.711         | 1.737         | 100.0%  | 3     |
| nova.boot_server            | 59.477    | 60.402    | 61.675    | 61.351        | 61.513        | 100.0%  | 3     |
| nova.delete_server          | 5.316     | 9.786     | 12.111    | 12.075        | 12.093        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.693     | 3.42      | 6.719     | 5.745         | 6.232         | 100.0%  | 3     |
| total                       | 194.87    | 200.903   | 210.296   | 207.746       | 209.021       | 100.0%  | 3     |
| vm.run_command              | 95.307    | 98.8      | 101.104   | 100.881       | 100.992       | 100.0%  | 3     |
| vm.wait_for_ping            | 5.668     | 6.151     | 6.687     | 6.569         | 6.628         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.539     | 11.406    | 13.981    | 13.925        | 13.953        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 210.367856026
Full duration: 252.263090849

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report ffa53e35-2c39-4c6c-a4bd-22828da7d000 --out output.html

* To get raw JSON output of task results, run:
	rally task results ffa53e35-2c39-4c6c-a4bd-22828da7d000

Using task: ffa53e35-2c39-4c6c-a4bd-22828da7d000
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file99KPUD -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 26812},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file3A3tFL -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24059},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filevFXszd -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24193}]
================================================================================

====> {"write a 64k": [25021, 2195]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 64k == \1\k ]]
+ [[ 64k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 64k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 64k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:43:26 10009 >>>> Start rally with opts 'task start /tmp/fileexR5Lo --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileRLrXaR
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  49677130-db04-4be2-bd3b-dfeb27149aa6: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:45:15 10214 >>>> Start io test
11:45:15 10214 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
11:45:16 10213 >>>> Start io test
11:45:16 10213 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
11:45:19 10212 >>>> Start io test
11:45:19 10212 >>>> Ready and waiting on barrier. Will wait at most 186 seconds
11:46:54 10214 >>>> Test finished
11:46:54 10213 >>>> Test finished
11:46:55 10212 >>>> Test finished
2015-02-08 11:47:47.530 10009 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: a005c7c4-0a06-4cc9-ab3f-c1e2abe1e99f.

--------------------------------------------------------------------------------
Task 49677130-db04-4be2-bd3b-dfeb27149aa6: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileRLrXaR',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.516     | 1.615     | 1.71      | 1.692         | 1.701         | 100.0%  | 3     |
| nova.boot_server            | 65.094    | 66.43     | 68.3      | 67.819        | 68.06         | 100.0%  | 3     |
| nova.delete_server          | 5.38      | 6.939     | 10.023    | 9.101         | 9.562         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.658     | 6.818     | 6.962     | 6.936         | 6.949         | 100.0%  | 3     |
| total                       | 204.496   | 204.666   | 204.863   | 204.818       | 204.841       | 100.0%  | 3     |
| vm.run_command              | 95.317    | 95.635    | 96.027    | 95.934        | 95.98         | 100.0%  | 3     |
| vm.wait_for_ping            | 4.722     | 5.651     | 6.127     | 6.122         | 6.125         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.612     | 8.348     | 10.905    | 10.23         | 10.568        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 204.949121952
Full duration: 258.685722113

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 49677130-db04-4be2-bd3b-dfeb27149aa6 --out output.html

* To get raw JSON output of task results, run:
	rally task results 49677130-db04-4be2-bd3b-dfeb27149aa6

Using task: 49677130-db04-4be2-bd3b-dfeb27149aa6
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filevcbwee -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 25431},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileGzVhDK -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 25765},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file1WmBAr -i 0 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 25647}]
================================================================================

====> {"write a 64k": [25614, 239]}

================================================================================
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:47:51 10762 >>>> Start rally with opts 'task start /tmp/fileDTPzKg --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filehLxxSo
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  ece49923-7e36-4cc8-80c0-8b2a4cd9a133: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:49:46 10958 >>>> Start io test
11:49:46 10958 >>>> Ready and waiting on barrier. Will wait at most 184 seconds
11:49:46 10960 >>>> Start io test
11:49:46 10960 >>>> Ready and waiting on barrier. Will wait at most 184 seconds
11:49:47 10959 >>>> Start io test
11:49:47 10959 >>>> Ready and waiting on barrier. Will wait at most 184 seconds
11:50:22 10959 >>>> Test finished
11:50:23 10960 >>>> Test finished
11:50:23 10958 >>>> Test finished
2015-02-08 11:50:53.729 10762 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: b29917e7-4dc2-4f70-94c9-13a5d667943c.

--------------------------------------------------------------------------------
Task ece49923-7e36-4cc8-80c0-8b2a4cd9a133: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filehLxxSo',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.448     | 1.545     | 1.613     | 1.605         | 1.609         | 100.0%  | 3     |
| nova.boot_server            | 60.82     | 62.981    | 65.307    | 64.808        | 65.058        | 100.0%  | 3     |
| nova.delete_server          | 5.215     | 6.118     | 7.823     | 7.321         | 7.572         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.753     | 1.97      | 2.136     | 2.113         | 2.125         | 100.0%  | 3     |
| total                       | 133.093   | 133.673   | 134.752   | 134.436       | 134.594       | 100.0%  | 3     |
| vm.run_command              | 35.254    | 36.037    | 36.485    | 36.463        | 36.474        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.11      | 6.116     | 6.121     | 6.12          | 6.12          | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.73      | 10.244    | 12.897    | 12.539        | 12.718        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 134.882910013
Full duration: 176.795939207

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report ece49923-7e36-4cc8-80c0-8b2a4cd9a133 --out output.html

* To get raw JSON output of task results, run:
	rally task results ece49923-7e36-4cc8-80c0-8b2a4cd9a133

Using task: ece49923-7e36-4cc8-80c0-8b2a4cd9a133
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileXtALpE -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1162},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileTqDe6E -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1113},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file4MuFqb -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1112}]
================================================================================

====> {"randwrite s 64k": [1129, 40]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:50:58 11283 >>>> Start rally with opts 'task start /tmp/fileA6tRN5 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filerMxopF
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  236db880-4c9f-49ec-9f20-2e8c40a6500d: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:52:37 11479 >>>> Start io test
11:52:37 11479 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
11:52:44 11480 >>>> Start io test
11:52:44 11480 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
11:52:48 11478 >>>> Start io test
11:52:48 11478 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
11:53:23 11480 >>>> Test finished
11:53:23 11478 >>>> Test finished
11:53:23 11479 >>>> Test finished
2015-02-08 11:53:50.216 11283 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: f325bc36-7469-40df-b722-aebc110e6f2a.

--------------------------------------------------------------------------------
Task 236db880-4c9f-49ec-9f20-2e8c40a6500d: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filerMxopF',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.65      | 2.03      | 2.781     | 2.557         | 2.669         | 100.0%  | 3     |
| nova.boot_server            | 61.365    | 61.541    | 61.703    | 61.674        | 61.689        | 100.0%  | 3     |
| nova.delete_server          | 5.221     | 5.294     | 5.382     | 5.361         | 5.372         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.748     | 1.906     | 2.108     | 2.059         | 2.084         | 100.0%  | 3     |
| total                       | 133.055   | 133.444   | 133.741   | 133.7         | 133.72        | 100.0%  | 3     |
| vm.run_command              | 35.204    | 35.436    | 35.606    | 35.584        | 35.595        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.098     | 6.651     | 7.694     | 7.388         | 7.541         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.136     | 10.459    | 12.211    | 12.175        | 12.193        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 133.863234997
Full duration: 168.019260168

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 236db880-4c9f-49ec-9f20-2e8c40a6500d --out output.html

* To get raw JSON output of task results, run:
	rally task results 236db880-4c9f-49ec-9f20-2e8c40a6500d

Using task: 236db880-4c9f-49ec-9f20-2e8c40a6500d
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileBp3ew2 -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1166},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file4EQFLL -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1146},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileJkjfYh -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1145}]
================================================================================

====> {"randwrite s 64k": [1152, 16]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:53:54 11820 >>>> Start rally with opts 'task start /tmp/fileA3tMY4 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileorA1Os
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  263f9a65-80a7-4c3f-a400-0e70f4a8c2f8: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:55:43 12014 >>>> Start io test
11:55:43 12014 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
11:55:49 12015 >>>> Start io test
11:55:49 12015 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
11:55:52 12016 >>>> Start io test
11:55:52 12016 >>>> Ready and waiting on barrier. Will wait at most 181 seconds
11:56:33 12016 >>>> Test finished
11:56:33 12015 >>>> Test finished
11:56:33 12014 >>>> Test finished
2015-02-08 11:57:00.712 11820 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: c3a1dcb5-2002-420b-aad9-78722e0737c7.

--------------------------------------------------------------------------------
Task 263f9a65-80a7-4c3f-a400-0e70f4a8c2f8: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileorA1Os',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.585     | 1.932     | 2.3       | 2.222         | 2.261         | 100.0%  | 3     |
| nova.boot_server            | 58.531    | 60.086    | 62.72     | 61.977        | 62.348        | 100.0%  | 3     |
| nova.delete_server          | 5.359     | 5.378     | 5.401     | 5.396         | 5.399         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.712     | 1.828     | 1.922     | 1.907         | 1.915         | 100.0%  | 3     |
| total                       | 142.517   | 145.907   | 147.636   | 147.623       | 147.629       | 100.0%  | 3     |
| vm.run_command              | 40.29     | 40.291    | 40.291    | 40.291        | 40.291        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.098     | 7.447     | 8.136     | 8.13          | 8.133         | 100.0%  | 3     |
| vm.wait_for_ssh             | 5.008     | 10.577    | 16.928    | 15.502        | 16.215        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 147.694798946
Full duration: 184.524184942

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 263f9a65-80a7-4c3f-a400-0e70f4a8c2f8 --out output.html

* To get raw JSON output of task results, run:
	rally task results 263f9a65-80a7-4c3f-a400-0e70f4a8c2f8

Using task: 263f9a65-80a7-4c3f-a400-0e70f4a8c2f8
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filelQyfUV -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1077},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileTmrFFS -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1012},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileu9Kzv5 -i 2 -s 32000 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 32000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 1019}]
================================================================================

====> {"randwrite s 64k": [1036, 50]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 64k == \1\k ]]
+ [[ 64k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
11:57:07 12325 >>>> Start rally with opts 'task start /tmp/file91v9Ph --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file6lET9S
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  fbb41b5b-567d-40b2-ad7d-d945ecaa3e83: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

11:58:52 12569 >>>> Start io test
11:58:52 12569 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
11:59:00 12570 >>>> Start io test
11:59:00 12570 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
11:59:00 12568 >>>> Start io test
11:59:00 12568 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
12:01:38 12570 >>>> Test finished
12:01:52 12569 >>>> Test finished
12:02:51 12568 >>>> Test finished
2015-02-08 12:03:33.293 12325 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: ae708818-0f23-40d5-83d2-6c933b03701a.

--------------------------------------------------------------------------------
Task fbb41b5b-567d-40b2-ad7d-d945ecaa3e83: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file6lET9S',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.355     | 1.612     | 2.002     | 1.898         | 1.95          | 100.0%  | 3     |
| nova.boot_server            | 58.812    | 61.422    | 64.239    | 63.634        | 63.936        | 100.0%  | 3     |
| nova.delete_server          | 5.133     | 43.192    | 63.376    | 62.914        | 63.145        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.602     | 3.559     | 6.975     | 6.0           | 6.488         | 100.0%  | 3     |
| total                       | 322.051   | 327.66    | 332.464   | 331.664       | 332.064       | 100.0%  | 3     |
| vm.run_command              | 157.858   | 187.065   | 231.399   | 219.507       | 225.453       | 100.0%  | 3     |
| vm.wait_for_ping            | 4.378     | 5.559     | 6.202     | 6.181         | 6.191         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.732     | 9.928     | 12.272    | 11.974        | 12.123        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 332.556061983
Full duration: 380.546205997

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report fbb41b5b-567d-40b2-ad7d-d945ecaa3e83 --out output.html

* To get raw JSON output of task results, run:
	rally task results fbb41b5b-567d-40b2-ad7d-d945ecaa3e83

Using task: fbb41b5b-567d-40b2-ad7d-d945ecaa3e83
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileePCFhD -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 13224},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileb8ZDqU -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 11773},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileqfjpMI -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 18800}]
================================================================================

====> {"randwrite a 64k": [14599, 5246]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 64k == \1\k ]]
+ [[ 64k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:03:37 12983 >>>> Start rally with opts 'task start /tmp/fileRmR1YS --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file85sjhN
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  094b161f-311a-4f5c-bf29-7cd8c686c58a: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:05:29 13179 >>>> Start io test
12:05:29 13179 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
12:05:34 13178 >>>> Start io test
12:05:34 13178 >>>> Ready and waiting on barrier. Will wait at most 182 seconds
12:05:44 13180 >>>> Start io test
12:05:44 13180 >>>> Ready and waiting on barrier. Will wait at most 172 seconds
12:08:18 13179 >>>> Test finished
12:09:26 13178 >>>> Test finished
12:09:38 13180 >>>> Test finished
2015-02-08 12:10:23.360 12983 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: dcaf86aa-fcf2-4dd1-ab61-d8b2cc7cab51.

--------------------------------------------------------------------------------
Task 094b161f-311a-4f5c-bf29-7cd8c686c58a: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file85sjhN',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.502     | 1.86      | 2.57      | 2.358         | 2.464         | 100.0%  | 3     |
| nova.boot_server            | 59.898    | 61.881    | 65.275    | 64.314        | 64.795        | 100.0%  | 3     |
| nova.delete_server          | 9.746     | 32.269    | 76.961    | 63.589        | 70.275        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.58      | 6.986     | 7.203     | 7.198         | 7.201         | 100.0%  | 3     |
| total                       | 334.124   | 339.37    | 347.883   | 345.527       | 346.705       | 100.0%  | 3     |
| vm.run_command              | 153.519   | 202.954   | 233.69    | 231.283       | 232.486       | 100.0%  | 3     |
| vm.wait_for_ping            | 4.097     | 5.517     | 6.24      | 6.235         | 6.238         | 100.0%  | 3     |
| vm.wait_for_ssh             | 5.553     | 9.27      | 11.41     | 11.298        | 11.354        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 348.012090921
Full duration: 402.908918142

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 094b161f-311a-4f5c-bf29-7cd8c686c58a --out output.html

* To get raw JSON output of task results, run:
	rally task results 094b161f-311a-4f5c-bf29-7cd8c686c58a

Using task: 094b161f-311a-4f5c-bf29-7cd8c686c58a
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filek66lAo -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 15991},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileEbWJcN -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 9408},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileGdb2qY -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 10453}]
================================================================================

====> {"randwrite a 64k": [11950, 5003]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 64k == \1\k ]]
+ [[ 64k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 64k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:10:27 13558 >>>> Start rally with opts 'task start /tmp/filexba06j --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filetI28HP
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  8bbdffbe-78eb-4ba4-a1f3-82f0bfb762d2: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:12:08 13755 >>>> Start io test
12:12:08 13755 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
12:12:15 13753 >>>> Start io test
12:12:15 13753 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
12:12:15 13754 >>>> Start io test
12:12:15 13754 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
12:14:39 13755 >>>> Test finished
12:15:08 13754 >>>> Test finished
12:15:59 13753 >>>> Test finished
2015-02-08 12:16:50.500 13558 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: df281340-5d44-4b1e-a8b9-e03bdd27981b.

--------------------------------------------------------------------------------
Task 8bbdffbe-78eb-4ba4-a1f3-82f0bfb762d2: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filetI28HP',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.362     | 1.503     | 1.724     | 1.664         | 1.694         | 100.0%  | 3     |
| nova.boot_server            | 57.915    | 61.24     | 64.393    | 63.797        | 64.095        | 100.0%  | 3     |
| nova.delete_server          | 9.8       | 42.885    | 76.874    | 69.895        | 73.385        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.574     | 6.826     | 7.236     | 7.123         | 7.179         | 100.0%  | 3     |
| total                       | 310.583   | 318.791   | 329.807   | 327.042       | 328.424       | 100.0%  | 3     |
| vm.run_command              | 144.166   | 180.749   | 224.418   | 214.267       | 219.342       | 100.0%  | 3     |
| vm.wait_for_ping            | 4.979     | 5.725     | 6.099     | 6.099         | 6.099         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.353     | 8.586     | 11.56     | 10.817        | 11.189        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 329.886922121
Full duration: 380.69844389

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 8bbdffbe-78eb-4ba4-a1f3-82f0bfb762d2 --out output.html

* To get raw JSON output of task results, run:
	rally task results 8bbdffbe-78eb-4ba4-a1f3-82f0bfb762d2

Using task: 8bbdffbe-78eb-4ba4-a1f3-82f0bfb762d2
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filetnWQ6Y -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 16904},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileVotm6a -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 13514},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 64,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileSVMA6p -i 2 -s 1003592 -r 64 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 21294}]
================================================================================

====> {"randwrite a 64k": [17237, 5516]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:16:54 14107 >>>> Start rally with opts 'task start /tmp/fileUxvme5 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileHchieZ
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  706f6a78-1c41-4141-b46b-faeb4bb155f1: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:18:37 14343 >>>> Start io test
12:18:37 14343 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
12:18:38 14342 >>>> Start io test
12:18:38 14342 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
12:18:43 14341 >>>> Start io test
12:18:43 14341 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
12:19:26 14343 >>>> Test finished
12:19:26 14342 >>>> Test finished
12:19:27 14341 >>>> Test finished
2015-02-08 12:19:52.346 14107 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: c93ed9ae-2a80-4a40-ae5c-5b7bc9693da1.

--------------------------------------------------------------------------------
Task 706f6a78-1c41-4141-b46b-faeb4bb155f1: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileHchieZ',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.419     | 1.442     | 1.474     | 1.465         | 1.47          | 100.0%  | 3     |
| nova.boot_server            | 60.406    | 61.157    | 61.962    | 61.79         | 61.876        | 100.0%  | 3     |
| nova.delete_server          | 5.125     | 5.963     | 7.55      | 7.083         | 7.317         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.671     | 1.771     | 1.95      | 1.898         | 1.924         | 100.0%  | 3     |
| total                       | 145.268   | 147.071   | 149.299   | 148.769       | 149.034       | 100.0%  | 3     |
| vm.run_command              | 43.516    | 43.997    | 44.754    | 44.548        | 44.651        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.957     | 6.132     | 8.104     | 7.551         | 7.827         | 100.0%  | 3     |
| vm.wait_for_ssh             | 13.035    | 17.377    | 19.987    | 19.812        | 19.9          | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 149.429497004
Full duration: 174.730675936

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 706f6a78-1c41-4141-b46b-faeb4bb155f1 --out output.html

* To get raw JSON output of task results, run:
	rally task results 706f6a78-1c41-4141-b46b-faeb4bb155f1

Using task: 706f6a78-1c41-4141-b46b-faeb4bb155f1
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filekFWSTD -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3918},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileftVXi4 -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3909},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileHStrhS -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3817}]
================================================================================

====> {"write s 256k": [3881, 79]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:19:56 14642 >>>> Start rally with opts 'task start /tmp/fileyxovMg --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filew7d10M
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  270f59e0-f62f-43d5-815b-ea65acbc668c: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:21:43 14838 >>>> Start io test
12:21:43 14838 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
12:21:49 14839 >>>> Start io test
12:21:49 14839 >>>> Ready and waiting on barrier. Will wait at most 186 seconds
12:21:49 14837 >>>> Start io test
12:21:49 14837 >>>> Ready and waiting on barrier. Will wait at most 186 seconds
12:22:32 14838 >>>> Test finished
12:22:32 14839 >>>> Test finished
12:22:32 14837 >>>> Test finished
2015-02-08 12:23:02.204 14642 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: c8e3601b-c66d-45b3-85bf-85110fe26da5.

--------------------------------------------------------------------------------
Task 270f59e0-f62f-43d5-815b-ea65acbc668c: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filew7d10M',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.407     | 1.53      | 1.686     | 1.648         | 1.667         | 100.0%  | 3     |
| nova.boot_server            | 60.896    | 61.346    | 62.222    | 61.962        | 62.092        | 100.0%  | 3     |
| nova.delete_server          | 5.143     | 5.891     | 7.383     | 6.935         | 7.159         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.659     | 3.358     | 6.575     | 5.628         | 6.101         | 100.0%  | 3     |
| total                       | 134.446   | 136.709   | 138.994   | 138.533       | 138.764       | 100.0%  | 3     |
| vm.run_command              | 42.264    | 42.489    | 42.634    | 42.621        | 42.627        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.324     | 4.846     | 8.115     | 7.712         | 7.913         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.306     | 10.18     | 12.916    | 12.396        | 12.656        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 139.105728149
Full duration: 183.268572807

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 270f59e0-f62f-43d5-815b-ea65acbc668c --out output.html

* To get raw JSON output of task results, run:
	rally task results 270f59e0-f62f-43d5-815b-ea65acbc668c

Using task: 270f59e0-f62f-43d5-815b-ea65acbc668c
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileCkKATB -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4388},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filemUjYlW -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4306},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file1xuWy3 -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4286}]
================================================================================

====> {"write s 256k": [4326, 76]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:23:06 15160 >>>> Start rally with opts 'task start /tmp/filekONTRW --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file6WqEnN
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f1171918-e8dd-416b-9c06-6f71e9212cf4: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:24:55 15357 >>>> Start io test
12:24:55 15357 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
12:24:57 15355 >>>> Start io test
12:24:57 15355 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
12:24:59 15356 >>>> Start io test
12:24:59 15356 >>>> Ready and waiting on barrier. Will wait at most 186 seconds
12:25:42 15356 >>>> Test finished
12:25:42 15357 >>>> Test finished
12:25:42 15355 >>>> Test finished
2015-02-08 12:26:12.964 15160 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: fb73ed6a-1c9a-42d5-a0d6-719c94324008.

--------------------------------------------------------------------------------
Task f1171918-e8dd-416b-9c06-6f71e9212cf4: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file6WqEnN',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.41      | 1.463     | 1.543     | 1.522         | 1.532         | 100.0%  | 3     |
| nova.boot_server            | 63.241    | 63.577    | 64.236    | 64.04         | 64.138        | 100.0%  | 3     |
| nova.delete_server          | 5.117     | 5.201     | 5.301     | 5.278         | 5.29          | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.641     | 5.079     | 6.801     | 6.8           | 6.8           | 100.0%  | 3     |
| total                       | 141.191   | 144.198   | 145.884   | 145.811       | 145.848       | 100.0%  | 3     |
| vm.run_command              | 43.006    | 43.245    | 43.536    | 43.467        | 43.501        | 100.0%  | 3     |
| vm.wait_for_ping            | 2.091     | 5.44      | 8.112     | 7.713         | 7.913         | 100.0%  | 3     |
| vm.wait_for_ssh             | 11.639    | 13.279    | 15.23     | 14.777        | 15.004        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 145.933766127
Full duration: 184.22948122

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f1171918-e8dd-416b-9c06-6f71e9212cf4 --out output.html

* To get raw JSON output of task results, run:
	rally task results f1171918-e8dd-416b-9c06-6f71e9212cf4

Using task: f1171918-e8dd-416b-9c06-6f71e9212cf4
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filetbgRHW -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4263},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file2zZfJI -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4144},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file1c2j1G -i 0 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4223}]
================================================================================

====> {"write s 256k": [4210, 85]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 256k == \1\k ]]
+ [[ 256k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:26:17 15658 >>>> Start rally with opts 'task start /tmp/fileuwVmcF --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file6jUTaO
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  e2fedc07-7bfa-4dca-81f1-a58a7e4d3eeb: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:27:43 15852 >>>> Start io test
12:27:43 15852 >>>> Ready and waiting on barrier. Will wait at most 213 seconds
12:31:17 15852 >>>> Barrier timeouted
12:31:59 15852 >>>> Test finished
2015-02-08 12:33:10.567 15658 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 8a841930-c49c-4eaa-8b61-cb9d70e7ea7a.

--------------------------------------------------------------------------------
Task e2fedc07-7bfa-4dca-81f1-a58a7e4d3eeb: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file6jUTaO',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.34      | 1.34      | 1.34      | 1.34          | 1.34          | 33.3%   | 3     |
| nova.boot_server            | 41.314    | 41.314    | 41.314    | 41.314        | 41.314        | 33.3%   | 3     |
| nova.delete_server          | 9.857     | 9.857     | 9.857     | 9.857         | 9.857         | 33.3%   | 3     |
| nova.dissociate_floating_ip | 7.372     | 7.372     | 7.372     | 7.372         | 7.372         | 33.3%   | 3     |
| total                       | 344.113   | 344.113   | 344.113   | 344.113       | 344.113       | 33.3%   | 3     |
| vm.run_command              | 41.904    | 41.904    | 41.904    | 41.904        | 41.904        | 33.3%   | 3     |
| vm.wait_for_ping            | 6.11      | 6.11      | 6.11      | 6.11          | 6.11          | 33.3%   | 3     |
| vm.wait_for_ssh             | 18.716    | 18.716    | 18.716    | 18.716        | 18.716        | 33.3%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 344.222681046
Full duration: 412.737450838

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report e2fedc07-7bfa-4dca-81f1-a58a7e4d3eeb --out output.html

* To get raw JSON output of task results, run:
	rally task results e2fedc07-7bfa-4dca-81f1-a58a7e4d3eeb

Using task: e2fedc07-7bfa-4dca-81f1-a58a7e4d3eeb
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileBEdJb8 -i 0 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 64624}]
================================================================================

====> {"write a 256k": [64624, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 256k == \1\k ]]
+ [[ 256k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:33:16 16214 >>>> Start rally with opts 'task start /tmp/fileUCMzFI --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileO67Kn8
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  8c0098db-05ed-4cb9-ab56-4a0c162d4c09: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:35:03 16438 >>>> Start io test
12:35:03 16438 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
12:35:09 16436 >>>> Start io test
12:35:09 16436 >>>> Ready and waiting on barrier. Will wait at most 186 seconds
12:35:10 16437 >>>> Start io test
12:35:10 16437 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
12:36:44 16436 >>>> Test finished
12:36:46 16438 >>>> Test finished
12:36:47 16437 >>>> Test finished
2015-02-08 12:37:20.648 16214 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 353e1896-dc09-4f71-b4ea-3fa6aef2b752.

--------------------------------------------------------------------------------
Task 8c0098db-05ed-4cb9-ab56-4a0c162d4c09: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileO67Kn8',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.609     | 1.888     | 2.398     | 2.25          | 2.324         | 100.0%  | 3     |
| nova.boot_server            | 58.398    | 58.995    | 59.629    | 59.495        | 59.562        | 100.0%  | 3     |
| nova.delete_server          | 5.188     | 6.946     | 9.889     | 9.064         | 9.476         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.723     | 3.457     | 6.747     | 5.777         | 6.262         | 100.0%  | 3     |
| total                       | 191.801   | 193.272   | 194.732   | 194.442       | 194.587       | 100.0%  | 3     |
| vm.run_command              | 94.119    | 95.412    | 96.358    | 96.238        | 96.298        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.076     | 4.564     | 8.117     | 7.594         | 7.855         | 100.0%  | 3     |
| vm.wait_for_ssh             | 5.748     | 8.068     | 11.734    | 10.731        | 11.233        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 194.805016041
Full duration: 238.737823009

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 8c0098db-05ed-4cb9-ab56-4a0c162d4c09 --out output.html

* To get raw JSON output of task results, run:
	rally task results 8c0098db-05ed-4cb9-ab56-4a0c162d4c09

Using task: 8c0098db-05ed-4cb9-ab56-4a0c162d4c09
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileb4kv7m -i 0 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 26169},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filesaWYSE -i 0 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 25860},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileB1Po0e -i 0 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24369}]
================================================================================

====> {"write a 256k": [25466, 1361]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 256k == \1\k ]]
+ [[ 256k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 256k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 256k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:37:25 16796 >>>> Start rally with opts 'task start /tmp/file4flKkC --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileYXNDei
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  40b51d80-ed84-40f6-af85-8c16c4b029d8: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:39:22 17000 >>>> Start io test
12:39:22 17000 >>>> Ready and waiting on barrier. Will wait at most 182 seconds
12:39:24 16999 >>>> Start io test
12:39:24 16999 >>>> Ready and waiting on barrier. Will wait at most 181 seconds
12:39:30 16998 >>>> Start io test
12:39:30 16998 >>>> Ready and waiting on barrier. Will wait at most 174 seconds
12:41:05 17000 >>>> Test finished
12:41:06 16998 >>>> Test finished
12:41:06 16999 >>>> Test finished
2015-02-08 12:41:51.857 16796 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: a60e361b-7181-4299-aac3-97eeee6401d9.

--------------------------------------------------------------------------------
Task 40b51d80-ed84-40f6-af85-8c16c4b029d8: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileYXNDei',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.617     | 1.695     | 1.764     | 1.752         | 1.758         | 100.0%  | 3     |
| nova.boot_server            | 58.992    | 60.217    | 61.048    | 60.961        | 61.004        | 100.0%  | 3     |
| nova.delete_server          | 5.188     | 8.109     | 12.52     | 11.34         | 11.93         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.767     | 5.225     | 6.967     | 6.962         | 6.965         | 100.0%  | 3     |
| total                       | 205.563   | 209.291   | 212.276   | 211.828       | 212.052       | 100.0%  | 3     |
| vm.run_command              | 95.356    | 95.828    | 96.112    | 96.093        | 96.102        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.079     | 3.428     | 6.112     | 5.708         | 5.91          | 100.0%  | 3     |
| vm.wait_for_ssh             | 15.296    | 17.775    | 20.074    | 19.65         | 19.862        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 212.371304989
Full duration: 261.27235508

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 40b51d80-ed84-40f6-af85-8c16c4b029d8 --out output.html

* To get raw JSON output of task results, run:
	rally task results 40b51d80-ed84-40f6-af85-8c16c4b029d8

Using task: 40b51d80-ed84-40f6-af85-8c16c4b029d8
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileJuR5S4 -i 0 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 25335},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file9I2MkK -i 0 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 22708},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileUZbVoE -i 0 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 23225}]
================================================================================

====> {"write a 256k": [23756, 1968]}

================================================================================
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:41:56 17326 >>>> Start rally with opts 'task start /tmp/file8KWPdy --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileQ6U6PH
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  a98094fa-f315-45ab-a94f-68be82dced3c: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:43:45 17565 >>>> Start io test
12:43:45 17565 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
12:43:46 17566 >>>> Start io test
12:43:46 17566 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
12:43:51 17564 >>>> Start io test
12:43:51 17564 >>>> Ready and waiting on barrier. Will wait at most 184 seconds
12:44:40 17565 >>>> Test finished
12:44:41 17566 >>>> Test finished
12:44:42 17564 >>>> Test finished
2015-02-08 12:45:17.360 17326 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 6d358791-0ab4-4153-9c0d-564046c4a66f.

--------------------------------------------------------------------------------
Task a98094fa-f315-45ab-a94f-68be82dced3c: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileQ6U6PH',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.348     | 4.837     | 6.642     | 6.618         | 6.63          | 100.0%  | 3     |
| nova.boot_server            | 64.126    | 65.663    | 67.496    | 67.071        | 67.284        | 100.0%  | 3     |
| nova.delete_server          | 5.112     | 5.166     | 5.242     | 5.222         | 5.232         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.659     | 3.377     | 6.674     | 5.699         | 6.187         | 100.0%  | 3     |
| total                       | 155.364   | 156.664   | 157.337   | 157.328       | 157.332       | 100.0%  | 3     |
| vm.run_command              | 48.727    | 49.962    | 50.735    | 50.673        | 50.704        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.201     | 2.952     | 6.53      | 5.649         | 6.089         | 100.0%  | 3     |
| vm.wait_for_ssh             | 12.168    | 12.282    | 12.463    | 12.413        | 12.438        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 157.431988955
Full duration: 198.366993904

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report a98094fa-f315-45ab-a94f-68be82dced3c --out output.html

* To get raw JSON output of task results, run:
	rally task results a98094fa-f315-45ab-a94f-68be82dced3c

Using task: a98094fa-f315-45ab-a94f-68be82dced3c
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileQMzXu9 -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3499},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileL7vepn -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3310},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filemV4ThD -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3277}]
================================================================================

====> {"randwrite s 256k": [3362, 169]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:45:21 17868 >>>> Start rally with opts 'task start /tmp/file5j1P9J --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filevDbECG
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  e980be95-6fe0-49ab-85c6-37b27aba036f: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:46:47 18072 >>>> Start io test
12:46:47 18072 >>>> Ready and waiting on barrier. Will wait at most 214 seconds
12:46:50 18073 >>>> Start io test
12:46:50 18073 >>>> Ready and waiting on barrier. Will wait at most 211 seconds
12:50:21 18073 >>>> Barrier timeouted
12:50:21 18072 >>>> Barrier timeouted
12:51:00 18072 >>>> Test finished
12:51:00 18073 >>>> Test finished
2015-02-08 12:52:00.372 17868 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 11ba14d6-2318-4da9-a735-eea3a52ecc1b.

--------------------------------------------------------------------------------
Task e980be95-6fe0-49ab-85c6-37b27aba036f: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filevDbECG',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.36      | 2.136     | 2.912     | 2.756         | 2.834         | 66.7%   | 3     |
| nova.boot_server            | 50.686    | 50.987    | 51.287    | 51.227        | 51.257        | 66.7%   | 3     |
| nova.delete_server          | 5.723     | 8.021     | 10.32     | 9.86          | 10.09         | 66.7%   | 3     |
| nova.dissociate_floating_ip | 7.721     | 7.738     | 7.754     | 7.751         | 7.753         | 66.7%   | 3     |
| total                       | 342.089   | 344.387   | 346.685   | 346.225       | 346.455       | 66.7%   | 3     |
| vm.run_command              | 38.54     | 38.544    | 38.548    | 38.548        | 38.548        | 66.7%   | 3     |
| vm.wait_for_ping            | 4.701     | 4.821     | 4.941     | 4.917         | 4.929         | 66.7%   | 3     |
| vm.wait_for_ssh             | 7.623     | 9.284     | 10.946    | 10.613        | 10.78         | 66.7%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 346.821579933
Full duration: 396.39201808

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report e980be95-6fe0-49ab-85c6-37b27aba036f --out output.html

* To get raw JSON output of task results, run:
	rally task results e980be95-6fe0-49ab-85c6-37b27aba036f

Using task: e980be95-6fe0-49ab-85c6-37b27aba036f
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filezlepII -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4465},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filek6Jr6f -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 4524}]
================================================================================

====> {"randwrite s 256k": [4494, 41]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:52:04 18405 >>>> Start rally with opts 'task start /tmp/fileOVKvAh --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filehRnGo4
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  49a1fd70-546f-4465-9422-4ec97b8e253c: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:53:50 18639 >>>> Start io test
12:53:50 18639 >>>> Ready and waiting on barrier. Will wait at most 194 seconds
12:53:53 18637 >>>> Start io test
12:53:53 18637 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
12:53:59 18640 >>>> Start io test
12:53:59 18640 >>>> Ready and waiting on barrier. Will wait at most 184 seconds
12:54:49 18640 >>>> Test finished
12:54:49 18639 >>>> Test finished
12:54:49 18637 >>>> Test finished
2015-02-08 12:55:19.211 18405 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: eccba0ec-bb95-483c-8858-31e0532ef903.

--------------------------------------------------------------------------------
Task 49a1fd70-546f-4465-9422-4ec97b8e253c: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filehRnGo4',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.384     | 1.517     | 1.618     | 1.604         | 1.611         | 100.0%  | 3     |
| nova.boot_server            | 61.619    | 63.693    | 67.494    | 66.389        | 66.942        | 100.0%  | 3     |
| nova.delete_server          | 5.137     | 6.722     | 9.854     | 8.918         | 9.386         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.521     | 3.271     | 6.495     | 5.555         | 6.025         | 100.0%  | 3     |
| total                       | 151.301   | 151.444   | 151.525   | 151.521       | 151.523       | 100.0%  | 3     |
| vm.run_command              | 49.217    | 49.482    | 49.632    | 49.626        | 49.629        | 100.0%  | 3     |
| vm.wait_for_ping            | 2.08      | 3.562     | 6.526     | 5.637         | 6.082         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.606     | 9.782     | 11.555    | 11.48         | 11.518        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 151.625242949
Full duration: 191.843375921

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 49a1fd70-546f-4465-9422-4ec97b8e253c --out output.html

* To get raw JSON output of task results, run:
	rally task results 49a1fd70-546f-4465-9422-4ec97b8e253c

Using task: 49a1fd70-546f-4465-9422-4ec97b8e253c
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file2GjAAY -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3329},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filetIzxZh -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3287},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileoxsb7n -i 2 -s 128000 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 128000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 3337}]
================================================================================

====> {"randwrite s 256k": [3317, 37]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 256k == \1\k ]]
+ [[ 256k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
12:55:23 18946 >>>> Start rally with opts 'task start /tmp/fileEcr464 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileckef5S
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  47f9b6e3-2d19-49cd-8e98-aac1a4c43c85: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

12:56:49 19141 >>>> Start io test
12:56:49 19141 >>>> Ready and waiting on barrier. Will wait at most 213 seconds
13:00:23 19141 >>>> Barrier timeouted
13:01:25 19141 >>>> Test finished
2015-02-08 13:02:29.344 18946 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 2c4de3bc-92bf-4c76-9c0c-565985c34e3e.

--------------------------------------------------------------------------------
Task 47f9b6e3-2d19-49cd-8e98-aac1a4c43c85: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileckef5S',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.54      | 1.54      | 1.54      | 1.54          | 1.54          | 33.3%   | 3     |
| nova.boot_server            | 39.222    | 39.222    | 39.222    | 39.222        | 39.222        | 33.3%   | 3     |
| nova.delete_server          | 9.854     | 9.854     | 9.854     | 9.854         | 9.854         | 33.3%   | 3     |
| nova.dissociate_floating_ip | 7.401     | 7.401     | 7.401     | 7.401         | 7.401         | 33.3%   | 3     |
| total                       | 354.537   | 354.537   | 354.537   | 354.537       | 354.537       | 33.3%   | 3     |
| vm.run_command              | 62.286    | 62.286    | 62.286    | 62.286        | 62.286        | 33.3%   | 3     |
| vm.wait_for_ping            | 6.103     | 6.103     | 6.103     | 6.103         | 6.103         | 33.3%   | 3     |
| vm.wait_for_ssh             | 11.892    | 11.892    | 11.892    | 11.892        | 11.892        | 33.3%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 354.647315025
Full duration: 423.483731031

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 47f9b6e3-2d19-49cd-8e98-aac1a4c43c85 --out output.html

* To get raw JSON output of task results, run:
	rally task results 47f9b6e3-2d19-49cd-8e98-aac1a4c43c85

Using task: 47f9b6e3-2d19-49cd-8e98-aac1a4c43c85
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filevEQZLZ -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 40128}]
================================================================================

====> {"randwrite a 256k": [40128, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 256k == \1\k ]]
+ [[ 256k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:02:33 19494 >>>> Start rally with opts 'task start /tmp/filexJ0YJx --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filep7jkPe
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  64ff171c-eacd-4b51-9eb5-7ee555382bbb: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:04:20 19690 >>>> Start io test
13:04:20 19690 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
13:04:26 19688 >>>> Start io test
13:04:26 19688 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
13:04:27 19689 >>>> Start io test
13:04:27 19689 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
13:06:30 19688 >>>> Test finished
13:06:39 19689 >>>> Test finished
13:06:40 19690 >>>> Test finished
2015-02-08 13:07:26.108 19494 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: a4a7e524-40cd-4adb-a2d5-461e79c9804c.

--------------------------------------------------------------------------------
Task 64ff171c-eacd-4b51-9eb5-7ee555382bbb: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filep7jkPe',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.465     | 1.536     | 1.652     | 1.62          | 1.636         | 100.0%  | 3     |
| nova.boot_server            | 64.811    | 64.832    | 64.861    | 64.853        | 64.857        | 100.0%  | 3     |
| nova.delete_server          | 5.287     | 10.503    | 16.201    | 14.965        | 15.583        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.713     | 6.725     | 6.732     | 6.732         | 6.732         | 100.0%  | 3     |
| total                       | 233.231   | 239.227   | 244.408   | 243.535       | 243.972       | 100.0%  | 3     |
| vm.run_command              | 122.42    | 129.051   | 133.081   | 132.796       | 132.939       | 100.0%  | 3     |
| vm.wait_for_ping            | 5.958     | 6.051     | 6.105     | 6.102         | 6.103         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.815     | 10.713    | 13.287    | 13.037        | 13.162        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 244.520251989
Full duration: 290.760340929

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 64ff171c-eacd-4b51-9eb5-7ee555382bbb --out output.html

* To get raw JSON output of task results, run:
	rally task results 64ff171c-eacd-4b51-9eb5-7ee555382bbb

Using task: 64ff171c-eacd-4b51-9eb5-7ee555382bbb
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileXBgoBH -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 20006},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileonEuQp -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 16735},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileoHVgtJ -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 17444}]
================================================================================

====> {"randwrite a 256k": [18061, 2433]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 256k == \1\k ]]
+ [[ 256k == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 256k --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:07:31 20036 >>>> Start rally with opts 'task start /tmp/fileOBsnP7 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileelsrCm
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  17732aa2-a66a-4e3d-8fb2-c9419ae85ffd: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:09:11 20230 >>>> Start io test
13:09:11 20230 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
13:09:17 20232 >>>> Start io test
13:09:17 20232 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
13:09:21 20231 >>>> Start io test
13:09:21 20231 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
13:11:28 20231 >>>> Test finished
13:11:36 20230 >>>> Test finished
13:11:41 20232 >>>> Test finished
2015-02-08 13:12:28.505 20036 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: f9d09186-1a0d-4a89-b6b2-bb5220ecb460.

--------------------------------------------------------------------------------
Task 17732aa2-a66a-4e3d-8fb2-c9419ae85ffd: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileelsrCm',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.425     | 1.498     | 1.61      | 1.58          | 1.595         | 100.0%  | 3     |
| nova.boot_server            | 62.379    | 62.907    | 63.864    | 63.587        | 63.726        | 100.0%  | 3     |
| nova.delete_server          | 5.081     | 12.007    | 16.629    | 16.165        | 16.397        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.51      | 1.731     | 2.044     | 1.963         | 2.003         | 100.0%  | 3     |
| total                       | 238.857   | 242.222   | 244.439   | 244.226       | 244.333       | 100.0%  | 3     |
| vm.run_command              | 126.737   | 133.773   | 139.833   | 138.816       | 139.324       | 100.0%  | 3     |
| vm.wait_for_ping            | 6.097     | 6.101     | 6.107     | 6.105         | 6.106         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.664     | 12.596    | 17.968    | 16.806        | 17.387        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 244.525714159
Full duration: 294.872792959

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 17732aa2-a66a-4e3d-8fb2-c9419ae85ffd --out output.html

* To get raw JSON output of task results, run:
	rally task results 17732aa2-a66a-4e3d-8fb2-c9419ae85ffd

Using task: 17732aa2-a66a-4e3d-8fb2-c9419ae85ffd
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filez8lESM -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 17154},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileYhM0cD -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 15553},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 256,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileGUALBQ -i 2 -s 1003592 -r 256 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 14469}]
================================================================================

====> {"randwrite a 256k": [15725, 1910]}

================================================================================
+ for bsize in '$bsizes'
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:12:32 20594 >>>> Start rally with opts 'task start /tmp/fileo9tlkK --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filewOyIDo
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f94db26e-a2a2-4c6b-956c-673319b863b3: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:14:15 20788 >>>> Start io test
13:14:15 20788 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
13:14:16 20790 >>>> Start io test
13:14:16 20790 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
13:14:21 20789 >>>> Start io test
13:14:21 20789 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
13:15:54 20789 >>>> Test finished
13:15:57 20790 >>>> Test finished
13:15:57 20788 >>>> Test finished
2015-02-08 13:16:22.569 20594 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 5a6372c5-8a64-48fe-a991-a7612e4ff450.

--------------------------------------------------------------------------------
Task f94db26e-a2a2-4c6b-956c-673319b863b3: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filewOyIDo',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.465     | 1.472     | 1.479     | 1.478         | 1.478         | 100.0%  | 3     |
| nova.boot_server            | 59.937    | 63.214    | 67.362    | 66.358        | 66.86         | 100.0%  | 3     |
| nova.delete_server          | 5.096     | 5.931     | 7.409     | 6.984         | 7.197         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.558     | 3.262     | 6.56      | 5.582         | 6.071         | 100.0%  | 3     |
| total                       | 188.918   | 189.971   | 191.827   | 191.295       | 191.561       | 100.0%  | 3     |
| vm.run_command              | 92.472    | 94.542    | 95.698    | 95.65         | 95.674        | 100.0%  | 3     |
| vm.wait_for_ping            | 6.087     | 6.096     | 6.101     | 6.101         | 6.101         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.545     | 6.928     | 7.585     | 7.399         | 7.492         | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 191.894325018
Full duration: 227.597376823

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f94db26e-a2a2-4c6b-956c-673319b863b3 --out output.html

* To get raw JSON output of task results, run:
	rally task results f94db26e-a2a2-4c6b-956c-673319b863b3

Using task: f94db26e-a2a2-4c6b-956c-673319b863b3
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filewjAozL -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7981},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filePSIQ0u -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7596},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file4MqgNg -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7586}]
================================================================================

====> {"write s 1024k": [7721, 318]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:16:26 21108 >>>> Start rally with opts 'task start /tmp/fileYZs6Ca --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/file8basnA
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  f647cad5-456c-4a12-b553-7eb7c340316c: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:18:09 21310 >>>> Start io test
13:18:09 21310 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
13:18:16 21308 >>>> Start io test
13:18:16 21308 >>>> Ready and waiting on barrier. Will wait at most 190 seconds
13:18:19 21309 >>>> Start io test
13:18:19 21309 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
13:19:48 21308 >>>> Test finished
13:19:49 21309 >>>> Test finished
13:19:50 21310 >>>> Test finished
2015-02-08 13:20:27.275 21108 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: ef1e6ae7-5107-4cf5-8880-0d33ce5bc8a3.

--------------------------------------------------------------------------------
Task f647cad5-456c-4a12-b553-7eb7c340316c: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/file8basnA',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.319     | 1.424     | 1.589     | 1.544         | 1.566         | 100.0%  | 3     |
| nova.boot_server            | 60.946    | 63.111    | 66.024    | 65.292        | 65.658        | 100.0%  | 3     |
| nova.delete_server          | 5.162     | 5.265     | 5.462     | 5.404         | 5.433         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 2.026     | 5.332     | 7.146     | 7.082         | 7.114         | 100.0%  | 3     |
| total                       | 186.365   | 188.248   | 189.602   | 189.437       | 189.52        | 100.0%  | 3     |
| vm.run_command              | 89.225    | 90.387    | 91.904    | 91.53         | 91.717        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.39      | 2.985     | 6.48      | 5.601         | 6.041         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.596     | 8.246     | 11.333    | 10.428        | 10.881        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 189.716176033
Full duration: 237.949904919

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report f647cad5-456c-4a12-b553-7eb7c340316c --out output.html

* To get raw JSON output of task results, run:
	rally task results f647cad5-456c-4a12-b553-7eb7c340316c

Using task: f647cad5-456c-4a12-b553-7eb7c340316c
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filePf7rkj -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8471},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileOcDdnw -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8401},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileVPR9vF -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8148}]
================================================================================

====> {"write s 1024k": [8340, 240]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:20:31 21644 >>>> Start rally with opts 'task start /tmp/filefJUHW3 --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileJAo4YS
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  417bc2b0-b0a3-4938-8764-5315f3c95792: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:22:15 21851 >>>> Start io test
13:22:15 21851 >>>> Ready and waiting on barrier. Will wait at most 195 seconds
13:22:22 21852 >>>> Start io test
13:22:22 21852 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
13:22:24 21850 >>>> Start io test
13:22:24 21850 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
13:23:55 21851 >>>> Test finished
13:23:55 21850 >>>> Test finished
13:23:56 21852 >>>> Test finished
2015-02-08 13:24:28.903 21644 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 1463d330-5e98-4fd8-bf9d-e27927c73096.

--------------------------------------------------------------------------------
Task 417bc2b0-b0a3-4938-8764-5315f3c95792: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileJAo4YS',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.374     | 1.421     | 1.462     | 1.456         | 1.459         | 100.0%  | 3     |
| nova.boot_server            | 61.949    | 64.861    | 66.763    | 66.585        | 66.674        | 100.0%  | 3     |
| nova.delete_server          | 5.263     | 6.762     | 7.511     | 7.511         | 7.511         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.576     | 3.36      | 6.891     | 5.835         | 6.363         | 100.0%  | 3     |
| total                       | 192.922   | 193.638   | 194.211   | 194.125       | 194.168       | 100.0%  | 3     |
| vm.run_command              | 90.819    | 91.457    | 92.057    | 91.944        | 92.0          | 100.0%  | 3     |
| vm.wait_for_ping            | 6.097     | 6.538     | 6.972     | 6.887         | 6.929         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.679     | 8.626     | 11.566    | 10.78         | 11.173        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 194.32030797
Full duration: 234.857270002

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 417bc2b0-b0a3-4938-8764-5315f3c95792 --out output.html

* To get raw JSON output of task results, run:
	rally task results 417bc2b0-b0a3-4938-8764-5315f3c95792

Using task: 417bc2b0-b0a3-4938-8764-5315f3c95792
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileEjuFtr -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8357},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileICMErw -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8238},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileZJxXDT -i 0 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8186}]
================================================================================

====> {"write s 1024k": [8260, 123]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1m == \1\k ]]
+ [[ 1m == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:24:32 22180 >>>> Start rally with opts 'task start /tmp/file2xRbst --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileO6dXDO
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  99c69e58-8366-4f7e-8695-17e94bc978b4: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:26:12 22374 >>>> Start io test
13:26:12 22374 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
13:26:14 22375 >>>> Start io test
13:26:14 22375 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
13:26:15 22376 >>>> Start io test
13:26:15 22376 >>>> Ready and waiting on barrier. Will wait at most 197 seconds
13:27:51 22375 >>>> Test finished
13:27:54 22374 >>>> Test finished
13:27:54 22376 >>>> Test finished
2015-02-08 13:28:36.755 22180 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: bdc23908-9adb-4d56-aea7-20725d49b389.

--------------------------------------------------------------------------------
Task 99c69e58-8366-4f7e-8695-17e94bc978b4: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileO6dXDO',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.318     | 1.377     | 1.439     | 1.426         | 1.432         | 100.0%  | 3     |
| nova.boot_server            | 60.52     | 61.055    | 61.876    | 61.655        | 61.766        | 100.0%  | 3     |
| nova.delete_server          | 7.414     | 9.03      | 12.178    | 11.242        | 11.71         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.596     | 3.351     | 6.815     | 5.781         | 6.298         | 100.0%  | 3     |
| total                       | 196.523   | 198.475   | 200.629   | 200.158       | 200.393       | 100.0%  | 3     |
| vm.run_command              | 95.615    | 97.676    | 98.97     | 98.865        | 98.917        | 100.0%  | 3     |
| vm.wait_for_ping            | 0.421     | 4.419     | 6.728     | 6.604         | 6.666         | 100.0%  | 3     |
| vm.wait_for_ssh             | 12.301    | 14.176    | 15.118    | 15.116        | 15.117        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 200.739916086
Full duration: 241.454625845

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 99c69e58-8366-4f7e-8695-17e94bc978b4 --out output.html

* To get raw JSON output of task results, run:
	rally task results 99c69e58-8366-4f7e-8695-17e94bc978b4

Using task: 99c69e58-8366-4f7e-8695-17e94bc978b4
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileHp4jX8 -i 0 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24832},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file7vsdBz -i 0 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24162},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileGpcQSn -i 0 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24111}]
================================================================================

====> {"write a 1024k": [24368, 569]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1m == \1\k ]]
+ [[ 1m == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:28:40 22706 >>>> Start rally with opts 'task start /tmp/file2WWxTg --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileccWD1T
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  1d2b1b70-aa93-4ccb-a934-f3ecef2f749a: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:30:20 22902 >>>> Start io test
13:30:20 22902 >>>> Ready and waiting on barrier. Will wait at most 200 seconds
13:30:21 22901 >>>> Start io test
13:30:21 22901 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
13:30:21 22900 >>>> Start io test
13:30:21 22900 >>>> Ready and waiting on barrier. Will wait at most 199 seconds
13:31:56 22902 >>>> Test finished
13:31:57 22900 >>>> Test finished
13:31:57 22901 >>>> Test finished
2015-02-08 13:32:39.146 22706 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 3741cc9a-ff64-45e7-8b4d-77defe8bf695.

--------------------------------------------------------------------------------
Task 1d2b1b70-aa93-4ccb-a934-f3ecef2f749a: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileccWD1T',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.557     | 1.598     | 1.625     | 1.622         | 1.624         | 100.0%  | 3     |
| nova.boot_server            | 64.612    | 64.739    | 64.805    | 64.804        | 64.805        | 100.0%  | 3     |
| nova.delete_server          | 7.442     | 10.49     | 12.018    | 12.016        | 12.017        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.48      | 4.877     | 6.648     | 6.619         | 6.634         | 100.0%  | 3     |
| total                       | 195.459   | 198.848   | 200.564   | 200.556       | 200.56        | 100.0%  | 3     |
| vm.run_command              | 95.058    | 95.3      | 95.44     | 95.433        | 95.437        | 100.0%  | 3     |
| vm.wait_for_ping            | 4.91      | 5.735     | 6.181     | 6.168         | 6.174         | 100.0%  | 3     |
| vm.wait_for_ssh             | 8.728     | 9.412     | 9.862     | 9.818         | 9.84          | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 200.636078835
Full duration: 235.925531864

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 1d2b1b70-aa93-4ccb-a934-f3ecef2f749a --out output.html

* To get raw JSON output of task results, run:
	rally task results 1d2b1b70-aa93-4ccb-a934-f3ecef2f749a

Using task: 1d2b1b70-aa93-4ccb-a934-f3ecef2f749a
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file71wXFI -i 0 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24108},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filenHkyvG -i 0 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24245},
 {u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileOh4plt -i 0 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 23715}]
================================================================================

====> {"write a 1024k": [24022, 389]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1m == \1\k ]]
+ [[ 1m == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a write --iodepth 16 --blocksize 1m --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a write --iodepth 16 --blocksize 1m --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:32:43 23219 >>>> Start rally with opts 'task start /tmp/fileJbr3wP --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileuKlFnW
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  ae5580ee-669a-4999-b7cf-8056262f3fe4: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:34:00 23416 >>>> Start io test
13:34:00 23416 >>>> Ready and waiting on barrier. Will wait at most 222 seconds
13:37:43 23416 >>>> Barrier timeouted
13:38:26 23416 >>>> Test finished
2015-02-08 13:39:26.794 23219 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: e3c54941-16f0-49cf-adb7-d097b211f95e.

--------------------------------------------------------------------------------
Task ae5580ee-669a-4999-b7cf-8056262f3fe4: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileuKlFnW',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.6       | 1.6       | 1.6       | 1.6           | 1.6           | 33.3%   | 3     |
| nova.boot_server            | 39.755    | 39.755    | 39.755    | 39.755        | 39.755        | 33.3%   | 3     |
| nova.delete_server          | 5.094     | 5.094     | 5.094     | 5.094         | 5.094         | 33.3%   | 3     |
| nova.dissociate_floating_ip | 7.515     | 7.515     | 7.515     | 7.515         | 7.515         | 33.3%   | 3     |
| total                       | 340.681   | 340.681   | 340.681   | 340.681       | 340.681       | 33.3%   | 3     |
| vm.run_command              | 42.708    | 42.708    | 42.708    | 42.708        | 42.708        | 33.3%   | 3     |
| vm.wait_for_ping            | 6.115     | 6.115     | 6.115     | 6.115         | 6.115         | 33.3%   | 3     |
| vm.wait_for_ssh             | 6.732     | 6.732     | 6.732     | 6.732         | 6.732         | 33.3%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 340.735139847
Full duration: 400.982530117

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report ae5580ee-669a-4999-b7cf-8056262f3fe4 --out output.html

* To get raw JSON output of task results, run:
	rally task results ae5580ee-669a-4999-b7cf-8056262f3fe4

Using task: ae5580ee-669a-4999-b7cf-8056262f3fe4
================================================================================
[{u'__meta__': {u'action': u'write',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filer4In3z -i 0 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 59414}]
================================================================================

====> {"write a 1024k": [59414, 0]}

================================================================================
+ for op in '$ops'
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:39:31 23729 >>>> Start rally with opts 'task start /tmp/fileSsy9rX --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filenywCgK
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  328b3c9f-dee9-444a-9b09-303a750f05f1: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:41:19 23923 >>>> Start io test
13:41:19 23923 >>>> Ready and waiting on barrier. Will wait at most 191 seconds
13:41:21 23924 >>>> Start io test
13:41:21 23924 >>>> Ready and waiting on barrier. Will wait at most 189 seconds
13:41:29 23925 >>>> Start io test
13:41:29 23925 >>>> Ready and waiting on barrier. Will wait at most 181 seconds
13:43:07 23924 >>>> Test finished
13:43:08 23925 >>>> Test finished
13:43:09 23923 >>>> Test finished
2015-02-08 13:43:58.404 23729 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 5ff7f9e6-a5f5-490a-adfc-46c87648203b.

--------------------------------------------------------------------------------
Task 328b3c9f-dee9-444a-9b09-303a750f05f1: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filenywCgK',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.498     | 1.513     | 1.526     | 1.524         | 1.525         | 100.0%  | 3     |
| nova.boot_server            | 58.825    | 62.519    | 65.834    | 65.246        | 65.54         | 100.0%  | 3     |
| nova.delete_server          | 5.12      | 6.734     | 9.672     | 8.82          | 9.246         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.583     | 3.304     | 6.588     | 5.618         | 6.103         | 100.0%  | 3     |
| total                       | 202.516   | 207.082   | 213.356   | 211.76        | 212.558       | 100.0%  | 3     |
| vm.run_command              | 97.813    | 99.163    | 100.461   | 100.212       | 100.337       | 100.0%  | 3     |
| vm.wait_for_ping            | 2.082     | 3.421     | 6.093     | 5.292         | 5.693         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.035     | 12.233    | 17.704    | 16.755        | 17.229        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 213.47081089
Full duration: 264.943139076

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 328b3c9f-dee9-444a-9b09-303a750f05f1 --out output.html

* To get raw JSON output of task results, run:
	rally task results 328b3c9f-dee9-444a-9b09-303a750f05f1

Using task: 328b3c9f-dee9-444a-9b09-303a750f05f1
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filepyA7BH -i 2 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7821},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileeo9qIT -i 2 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7708},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filebEei2L -i 2 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7620}]
================================================================================

====> {"randwrite s 1024k": [7716, 142]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:44:02 24275 >>>> Start rally with opts 'task start /tmp/filek8OwpC --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileRRKcIR
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  1379d7ed-4fb8-4855-b2f7-1437a649a4a8: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:45:46 24470 >>>> Start io test
13:45:46 24470 >>>> Ready and waiting on barrier. Will wait at most 196 seconds
13:45:50 24469 >>>> Start io test
13:45:50 24469 >>>> Ready and waiting on barrier. Will wait at most 192 seconds
13:45:54 24471 >>>> Start io test
13:45:54 24471 >>>> Ready and waiting on barrier. Will wait at most 188 seconds
13:47:29 24470 >>>> Test finished
13:47:33 24469 >>>> Test finished
13:47:35 24471 >>>> Test finished
2015-02-08 13:48:12.704 24275 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: f9813d5f-c59f-4169-9fd9-4ff66edcc98d.

--------------------------------------------------------------------------------
Task 1379d7ed-4fb8-4855-b2f7-1437a649a4a8: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileRRKcIR',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.449     | 1.489     | 1.515     | 1.513         | 1.514         | 100.0%  | 3     |
| nova.boot_server            | 61.357    | 61.792    | 62.024    | 62.018        | 62.021        | 100.0%  | 3     |
| nova.delete_server          | 5.199     | 9.06      | 12.162    | 11.693        | 11.928        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.656     | 1.701     | 1.742     | 1.735         | 1.738         | 100.0%  | 3     |
| total                       | 194.48    | 197.59    | 200.757   | 200.112       | 200.435       | 100.0%  | 3     |
| vm.run_command              | 95.575    | 98.77     | 101.116   | 100.817       | 100.966       | 100.0%  | 3     |
| vm.wait_for_ping            | 4.42      | 5.703     | 6.595     | 6.495         | 6.545         | 100.0%  | 3     |
| vm.wait_for_ssh             | 7.351     | 9.994     | 12.818    | 12.217        | 12.517        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 200.84328413
Full duration: 247.447429895

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 1379d7ed-4fb8-4855-b2f7-1437a649a4a8 --out output.html

* To get raw JSON output of task results, run:
	rally task results 1379d7ed-4fb8-4855-b2f7-1437a649a4a8

Using task: 1379d7ed-4fb8-4855-b2f7-1437a649a4a8
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/fileRAjPV1 -i 2 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 8295},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filej500CE -i 2 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7836},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/file4ENoUX -i 2 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 7612}]
================================================================================

====> {"randwrite s 1024k": [7914, 492]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ s == \s ]]
+ ssync=-s
+ factor=x500
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize x500 -s'
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize x500 -s' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:48:16 24817 >>>> Start rally with opts 'task start /tmp/fileeUK0kL --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filef7BNL4
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  087cc419-13e8-4286-8b9b-826a42e25b99: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:49:40 25014 >>>> Start io test
13:49:40 25014 >>>> Ready and waiting on barrier. Will wait at most 216 seconds
13:53:16 25014 >>>> Barrier timeouted
13:54:13 25014 >>>> Test finished
2015-02-08 13:55:12.311 24817 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 003450e9-f893-4435-92f9-ba4a9e0633f6.

--------------------------------------------------------------------------------
Task 087cc419-13e8-4286-8b9b-826a42e25b99: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filef7BNL4',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 2.366     | 2.366     | 2.366     | 2.366         | 2.366         | 33.3%   | 3     |
| nova.boot_server            | 40.069    | 40.069    | 40.069    | 40.069        | 40.069        | 33.3%   | 3     |
| nova.delete_server          | 9.812     | 9.812     | 9.812     | 9.812         | 9.812         | 33.3%   | 3     |
| nova.dissociate_floating_ip | 7.087     | 7.087     | 7.087     | 7.087         | 7.087         | 33.3%   | 3     |
| total                       | 358.149   | 358.149   | 358.149   | 358.149       | 358.149       | 33.3%   | 3     |
| vm.run_command              | 56.353    | 56.353    | 56.353    | 56.353        | 56.353        | 33.3%   | 3     |
| vm.wait_for_ping            | 6.106     | 6.106     | 6.106     | 6.106         | 6.106         | 33.3%   | 3     |
| vm.wait_for_ssh             | 11.186    | 11.186    | 11.186    | 11.186        | 11.186        | 33.3%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 358.275934935
Full duration: 413.230271101

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 087cc419-13e8-4286-8b9b-826a42e25b99 --out output.html

* To get raw JSON output of task results, run:
	rally task results 087cc419-13e8-4286-8b9b-826a42e25b99

Using task: 087cc419-13e8-4286-8b9b-826a42e25b99
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -o -f /tmp/filepFLxsY -i 2 -s 512000 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 512000,
                u'sync': True,
                u'use_hight_io_priority': True},
  u'bw_mean': 13768}]
================================================================================

====> {"randwrite s 1024k": [13768, 0]}

================================================================================
+ for sync in '$osync'
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1m == \1\k ]]
+ [[ 1m == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
13:55:17 25333 >>>> Start rally with opts 'task start /tmp/fileQYkmLZ --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/fileHugc3x
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  c3c10149-d120-4a37-bbb3-400d8b2f5890: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

13:57:03 25530 >>>> Start io test
13:57:03 25530 >>>> Ready and waiting on barrier. Will wait at most 193 seconds
14:00:17 25530 >>>> Barrier timeouted
14:01:06 25530 >>>> Test finished
2015-02-08 14:02:09.756 25333 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: a229f4c7-a4ee-4487-9832-ba98ec3ccde0.

--------------------------------------------------------------------------------
Task c3c10149-d120-4a37-bbb3-400d8b2f5890: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/fileHugc3x',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.555     | 1.555     | 1.555     | 1.555         | 1.555         | 33.3%   | 3     |
| nova.boot_server            | 41.668    | 41.668    | 41.668    | 41.668        | 41.668        | 33.3%   | 3     |
| nova.delete_server          | 10.251    | 10.251    | 10.251    | 10.251        | 10.251        | 33.3%   | 3     |
| nova.dissociate_floating_ip | 7.399     | 7.399     | 7.399     | 7.399         | 7.399         | 33.3%   | 3     |
| total                       | 337.675   | 337.675   | 337.675   | 337.675       | 337.675       | 33.3%   | 3     |
| vm.run_command              | 49.83     | 49.83     | 49.83     | 49.83         | 49.83         | 33.3%   | 3     |
| vm.wait_for_ping            | 6.104     | 6.104     | 6.104     | 6.104         | 6.104         | 33.3%   | 3     |
| vm.wait_for_ssh             | 19.592    | 19.592    | 19.592    | 19.592        | 19.592        | 33.3%   | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 337.831172943
Full duration: 410.664282084

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report c3c10149-d120-4a37-bbb3-400d8b2f5890 --out output.html

* To get raw JSON output of task results, run:
	rally task results c3c10149-d120-4a37-bbb3-400d8b2f5890

Using task: c3c10149-d120-4a37-bbb3-400d8b2f5890
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filenVGcsq -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 61558}]
================================================================================

====> {"randwrite a 1024k": [61558, 0]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1m == \1\k ]]
+ [[ 1m == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
14:02:14 25883 >>>> Start rally with opts 'task start /tmp/fileK9qF6L --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filerj2WuF
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  a762060f-298c-4634-9080-97ca7e42eeba: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

14:04:08 26080 >>>> Start io test
14:04:08 26080 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
14:04:13 26078 >>>> Start io test
14:04:13 26078 >>>> Ready and waiting on barrier. Will wait at most 180 seconds
14:04:14 26079 >>>> Start io test
14:04:14 26079 >>>> Ready and waiting on barrier. Will wait at most 180 seconds
14:06:01 26080 >>>> Test finished
14:06:02 26078 >>>> Test finished
14:06:05 26079 >>>> Test finished
2015-02-08 14:06:47.085 25883 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 3308cd4f-1cf1-482d-a0d9-d2ebe2b06fd7.

--------------------------------------------------------------------------------
Task a762060f-298c-4634-9080-97ca7e42eeba: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filerj2WuF',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.457     | 3.171     | 6.47      | 5.493         | 5.982         | 100.0%  | 3     |
| nova.boot_server            | 61.421    | 61.986    | 62.383    | 62.337        | 62.36         | 100.0%  | 3     |
| nova.delete_server          | 5.46      | 7.985     | 10.683    | 10.109        | 10.396        | 100.0%  | 3     |
| nova.dissociate_floating_ip | 6.594     | 7.072     | 7.916     | 7.674         | 7.795         | 100.0%  | 3     |
| total                       | 208.004   | 211.184   | 215.091   | 214.164       | 214.628       | 100.0%  | 3     |
| vm.run_command              | 107.263   | 109.086   | 111.682   | 111.008       | 111.345       | 100.0%  | 3     |
| vm.wait_for_ping            | 0.54      | 4.242     | 6.096     | 6.095         | 6.095         | 100.0%  | 3     |
| vm.wait_for_ssh             | 6.877     | 10.548    | 13.018    | 12.765        | 12.891        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 215.176527977
Full duration: 270.004892111

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report a762060f-298c-4634-9080-97ca7e42eeba --out output.html

* To get raw JSON output of task results, run:
	rally task results a762060f-298c-4634-9080-97ca7e42eeba

Using task: a762060f-298c-4634-9080-97ca7e42eeba
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filegHEeBc -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 26258},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file2zUnNt -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24007},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/filepCCZ3t -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 22822}]
================================================================================

====> {"randwrite a 1024k": [24362, 2468]}

================================================================================
+ for xxx in '$three_times'
+ [[ write randwrite == \w\r\i\t\e ]]
+ [[ a == \s ]]
+ [[ 1m == \1\k ]]
+ [[ 1m == \4\k ]]
+ ssync=
+ factor=r2
+ io_opts='--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize r2 '
+ python run_rally_test.py -l -o '--type iozone -a randwrite --iodepth 16 --blocksize 1m --iosize r2 ' -t io-scenario iozone '--rally-extra-opts=--deployment perf-1'
14:06:51 26377 >>>> Start rally with opts 'task start /tmp/fileGpwlRo --deployment perf-1'
--------------------------------------------------------------------------------
 Preparing input task
--------------------------------------------------------------------------------

Input task is:
VMTasks.boot_runcommand_delete:
- args:
    flavor: {name: ceph.512}
    floating_network: net04_ext
    force_delete: false
    image: {name: ubuntu}
    interpreter: /usr/bin/env python2
    script: /tmp/filer82qIz
    username: ubuntu
  context:
    network: {}
    users: {tenants: 1, users_per_tenant: 1}
  runner: {concurrency: 3, times: 3, type: constant}

--------------------------------------------------------------------------------
 Task  7ae72640-de47-4e90-a0cb-f0ea45578756: started
--------------------------------------------------------------------------------

Benchmarking... This can take a while...

To track task status use:

	rally task status
	or
	rally task detailed

14:08:43 26609 >>>> Start io test
14:08:43 26609 >>>> Ready and waiting on barrier. Will wait at most 187 seconds
14:08:45 26607 >>>> Start io test
14:08:45 26607 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
14:08:45 26608 >>>> Start io test
14:08:45 26608 >>>> Ready and waiting on barrier. Will wait at most 185 seconds
14:10:37 26608 >>>> Test finished
14:10:38 26609 >>>> Test finished
14:10:38 26607 >>>> Test finished
2015-02-08 14:11:20.893 26377 WARNING rally.benchmark.context.secgroup [-] Unable to delete secgroup: 4cf37d38-0800-4651-aeea-895b2b128311.

--------------------------------------------------------------------------------
Task 7ae72640-de47-4e90-a0cb-f0ea45578756: finished
--------------------------------------------------------------------------------

test scenario VMTasks.boot_runcommand_delete
args position 0
args values:
{u'args': {u'flavor': {u'name': u'ceph.512'},
           u'floating_network': u'net04_ext',
           u'force_delete': False,
           u'image': {u'name': u'ubuntu'},
           u'interpreter': u'/usr/bin/env python2',
           u'script': u'/tmp/filer82qIz',
           u'username': u'ubuntu'},
 u'context': {u'network': {u'networks_per_tenant': 1,
                           u'start_cidr': u'10.2.0.0/24'},
              u'users': {u'project_domain': u'default',
                         u'resource_management_workers': 30,
                         u'tenants': 1,
                         u'user_domain': u'default',
                         u'users_per_tenant': 1}},
 u'runner': {u'concurrency': 3, u'times': 3, u'type': u'constant'}}
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| action                      | min (sec) | avg (sec) | max (sec) | 90 percentile | 95 percentile | success | count |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
| nova.associate_floating_ip  | 1.391     | 1.482     | 1.628     | 1.588         | 1.608         | 100.0%  | 3     |
| nova.boot_server            | 61.855    | 64.088    | 66.003    | 65.683        | 65.843        | 100.0%  | 3     |
| nova.delete_server          | 5.148     | 6.208     | 7.38      | 7.123         | 7.251         | 100.0%  | 3     |
| nova.dissociate_floating_ip | 1.676     | 3.369     | 6.745     | 5.733         | 6.239         | 100.0%  | 3     |
| total                       | 207.972   | 210.159   | 213.783   | 212.77        | 213.276       | 100.0%  | 3     |
| vm.run_command              | 111.505   | 112.445   | 112.966   | 112.946       | 112.956       | 100.0%  | 3     |
| vm.wait_for_ping            | 6.092     | 6.179     | 6.349     | 6.298         | 6.323         | 100.0%  | 3     |
| vm.wait_for_ssh             | 10.856    | 11.972    | 13.748    | 13.261        | 13.504        | 100.0%  | 3     |
+-----------------------------+-----------+-----------+-----------+---------------+---------------+---------+-------+
Load duration: 213.869872093
Full duration: 264.982720852

Scenario Specific Results

+-------+-----+-----+-----+--------------+--------------+
| key   | max | avg | min | 90 pecentile | 95 pecentile |
+-------+-----+-----+-----+--------------+--------------+
| rally | 0.0 | 0.0 | 0.0 | 0.0          | 0.0          |
+-------+-----+-----+-----+--------------+--------------+

HINTS:
* To plot HTML graphics with this data, run:
	rally task report 7ae72640-de47-4e90-a0cb-f0ea45578756 --out output.html

* To get raw JSON output of task results, run:
	rally task results 7ae72640-de47-4e90-a0cb-f0ea45578756

Using task: 7ae72640-de47-4e90-a0cb-f0ea45578756
================================================================================
[{u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileXBug9S -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 24653},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/fileSa60x3 -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 21818},
 {u'__meta__': {u'action': u'randwrite',
                u'blocksize': 1024,
                u'cmdline': u'/tmp/io_tool -V 109 -f /tmp/file6rx8tk -i 2 -s 1003592 -r 1024 -+n',
                u'concurence': 1,
                u'direct_io': False,
                u'iodepth': 16,
                u'size': 1003592,
                u'sync': False,
                u'use_hight_io_priority': True},
  u'bw_mean': 21885}]
================================================================================

====> {"randwrite a 1024k": [22785, 2287]}

================================================================================
