Jump to: navigation, search

Difference between revisions of "Rally/HowTo"

(Prepare your config file)
m (Prepare your config file)
Line 22: Line 22:
  
 
==== Prepare your config file ====
 
==== Prepare your config file ====
Requires two configurations to describe a deployment and a benchmarking task. That allows to register an installation and then perform tasks of benchmarking.
+
Requires two configuration files to describe a deployment and a benchmarking task. That allows to register an installation and then perform tasks of benchmarking.
  
 
===== Deployment =====
 
===== Deployment =====
In our case we already have got an installation of OpenStack. Follow to sample '''doc/samples/deployments/dummy.json''' and fill all appropriate parameters. The configuration stored in a separate file '''dummy.json''':  
+
In our case we already have got an installation of OpenStack. Follow to sample '''doc/samples/deployments/dummy.json''' and fill all appropriate parameters. The configuration file stored in a separate file '''dummy.json''':  
 
<pre>
 
<pre>
 
{
 
{

Revision as of 10:16, 12 December 2013

Run It!

The easiest way to learn how Rally works is to use already existing OpenStack deployed by DevStack. So let assume that we have 2 VMs:

 Vm1 - 192.168.1.2 (with Rally)
 Vm2 - 192.168.1.3 (with OpenStack deployed by DevStack)

Preparing

1) Installing Rally on Vm1 To install Rally on Vm1 use this instruction

2) Installing OpenStack using DevStack on Vm2

 ssh root@192.168.1.3
 git clone https://github.com/openstack-dev/devstack.git
 cd devstack && ./stack.sh

Action!

Prepare your config file

Requires two configuration files to describe a deployment and a benchmarking task. That allows to register an installation and then perform tasks of benchmarking.

Deployment

In our case we already have got an installation of OpenStack. Follow to sample doc/samples/deployments/dummy.json and fill all appropriate parameters. The configuration file stored in a separate file dummy.json:

{
  "name": "DummyEngine",
  "cloud_config": {
    "identity": {
      "url": "http://192.168.1.3/",
      "uri": "http://192.168.1.3:5000/v2.0/",
      "admin_username": "admin",
      "admin_password": "admin_pass",
      "admin_tenant_name": "demo"
    }
  }
}

DevStack deploys all OpenStack component on Vm2, actually in

  • "identity" section you should specify IP address of Server where Keystone is run
  • "compute" you should specify information about Server where works one of Nova Computes
Benchmarking

A sample of a task configuration also a good point to start. Take copy of doc/samples/tasks/boot-and-delete.json, specify a proper image_id and store to a separate file boot-and-delete.json:

{
  "verify": [],
  "benchmark": {
    "NovaServers.boot_and_delete_server": [
      {"args": {"flavor_id": 2, "image_id": "0d7cfe07-f684-4afa-813d-ca2611373c59"},
       "config": {"times": 2, "active_users": 1}},
      {"args": {"flavor_id": 2, "image_id": "0d7cfe07-f684-4afa-813d-ca2611373c59"},
       "config": {"times": 6, "active_users": 2}}
    ]
  }
}

Run Rally!

If you didn't create Rally DB you should run this command:

  openstack-rally-manage db recreate


Ok now we should run our rally with benchmark configuration:

 openstack-rally --verbose task start --task base_task.json

Now using another ssh connection to Rally VM. Run this command:

 oepnstack-rally task list 
 +--------------------------------------+----------------------------+-------------------------+--------+
 |                 uuid                 |         created_at         |          status         | failed |
 +--------------------------------------+----------------------------+-------------------------+--------+
 | 83d9e08c-4f2b-4c1d-9c83-f36bcc6b5a68 | 2013-09-16 05:28:57.241456 | test_tool->benchmarking | False  |
 +--------------------------------------+----------------------------+-------------------------+--------+

To get detailed results by task with uuid: 83d9e08c-4f2b-4c1d-9c83-f36bcc6b5a68 you should run:

 openstack-rally task detailed  8532319f-d093-47de-b9f3-2909c03c7e30
 ================================================================================
 Task 83d9e08c-4f2b-4c1d-9c83-f36bcc6b5a68 is finished.
 --------------------------------------------------------------------------------
 test scenario NovaServers.boot_and_delete_server
 args position 0
 args values:
{u'args': {u'flavor_id': 2,
         u'image_id': u'0d7cfe07-f684-4afa-813d-ca2611373c59'},
 u'concurrent': 1,
 u'times': 2}
 +---------------+---------------+---------------+-------+
 |      max      |      avg      |      min      | ratio |
 +---------------+---------------+---------------+-------+
 | 13.4224121571 | 13.2850991488 | 13.1477861404 |  1.0  |
 +---------------+---------------+---------------+-------+
 --------------------------------------------------------------------------------
 test scenario NovaServers.boot_and_delete_server
 args position 1
 args values:
 {u'args': {u'flavor_id': 2,
          u'image_id': u'0d7cfe07-f684-4afa-813d-ca2611373c59'},
  u'concurrent': 2,
  u'times': 6}
 +--------------+---------------+---------------+-------+
 |     max      |      avg      |      min      | ratio |
 +--------------+---------------+---------------+-------+
 | 19.802423954 | 16.9980401595 | 16.3908159733 |  1.0  |
 +--------------+---------------+---------------+-------+


Available Rally facilities

List of available Deploy engines (including their description and usage examples): Deploy engines

List of available Server providers (including their description and usage examples): Server providers

List of available Benchmark scenarios (including their description and usage examples): Benchmark scenarios