rally-openstack/samples/tasks
Chris St. Pierre 76f743d130 Add Nova scenario to boot multiple servers in one request
The performance profile of, e.g., creating 10 VMs in a single request
is often very, very different from creating 10 VMs in 10 requests, and
the difference only grows with the number of VMs. This adds a scenario
to boot an arbitrary number of servers with a single request, which
can be compared to boot_and_delete_server, which boots them one server
per request.

Change-Id: I8cb5d6a4f27cce228b83d6a869ed75c505dd6626
2015-06-03 13:22:54 -05:00
..
contexts Moving rally/doc/samples to rally/samples 2015-01-16 05:54:09 -08:00
runners Update stackforge to openstack 2015-04-20 14:02:43 +05:30
scenarios Add Nova scenario to boot multiple servers in one request 2015-06-03 13:22:54 -05:00
sla Add streaming algorithms and SLA to check for outliers 2015-04-29 14:23:35 +03:00
support Moving rally/doc/samples to rally/samples 2015-01-16 05:54:09 -08:00
README.rst Update stackforge to openstack 2015-04-20 14:02:43 +05:30

Tasks Configuration Samples

To specify your tasks, use configuration files in json or yaml format.

JSON schema of input task format:

:

{
    "type": "object",
    "$schema": "http://json-schema.org/draft-04/schema",
    "patternProperties": {
        ".*": {
            "type": "array",
            "items": {
                "type": "object",
                "properties": {
                    "args": {
                        "type": "object"
                    },
                    "runner": {
                        "type": "object",
                        "properties": {
                            "type": {"type": "string"}
                        },
                        "required": ["type"]
                    },
                    "context": {
                        "type": "object"
                    },
                    "sla": {
                        "type": "object"
                    },
                },
                "additionalProperties": False
            }
        }
    }
}

For humans:

::
{
"ScenarioClass.scenario_method": [
{
"args": {

...

}, "runner": { ... }, "context": { ... }, "sla": { ... }

}

]

}

ScanarioClass should be a subclass of the base Scenario class and scenario_method specifies what benchmark task should be run. Section "args" is also related to scenario. To learn more about scenarios configuration, see samples in samples/tasks/scenarios.

Section "runners" specifies the way, how task should be run. To learn more about runners configurations, see samples in samples/tasks/runners.

Section "context" defines different types of environments in which task can be launched. Look at samples/tasks/contexts for samples.

Section "sla" defines details for determining compliance with contracted values such as maximum error rate or minimum response time. Look at samples/tasks/sla for samples.

See a detailed description of benchmark scenarios, contexts & runners.