Distributed data-plane performance testing tool
Go to file
Ilya Shakhat 98242c6022 Remove legacy scripts from bin/ folder
Change-Id: I1ba2f503bc295d6ddc8e0369025e7897ba897f8f
2015-03-24 17:31:43 +03:00
doc/source Generate docs for console tools 2015-03-16 00:07:59 +03:00
etc Refactor server and extract lib entry-point 2015-03-23 23:26:47 +03:00
scenarios Fix density processing 2015-03-24 15:23:02 +03:00
shaker Ignore messages from unexpected agents 2015-03-24 17:28:18 +03:00
tests Fix density processing 2015-03-24 15:23:02 +03:00
tools Generate docs for console tools 2015-03-16 00:07:59 +03:00
.gitignore Initial commit 2015-01-28 18:56:01 +03:00
.gitreview Apply bootstrap styles to the report template 2015-02-16 22:25:51 +03:00
.testr.conf Initial commit 2015-01-28 18:56:01 +03:00
config-generator.conf Fix config processing for oslo.log 2015-03-03 17:38:25 +03:00
LICENSE Initial commit 2015-01-28 18:56:01 +03:00
openstack-common.conf Use oslo.log lib instead of incunator code 2015-03-03 16:14:19 +03:00
README.rst Cleanup iperf graph reporting 2015-02-25 18:15:38 +03:00
requirements.txt Use oslo.log lib instead of incunator code 2015-03-03 16:14:19 +03:00
setup.cfg Split out report entry-point 2015-03-11 12:55:46 +03:00
setup.py Sync requirements with global list 2015-02-02 13:38:38 +03:00
test-requirements.txt Refactor agents processing and add unit tests 2015-03-10 15:53:24 +03:00
tox.ini Remove legacy scripts from bin/ folder 2015-03-24 17:31:43 +03:00

Shaker

Shake VMs with our sheer-class tests!

Installation

The tool consists of a single server running on master node and set of dynamically provisioned agents. In order to run the server needs to know OpenStack parameters (credentials, auth_url), they can be set via environment (e.g. by sourcing openrc file) or via parameters.

To install:
  1. git clone git://git.openstack.org/stackforge/shaker
  2. python setup.py install - installs the tool and all its python dependencies
  3. shaker-image-builder - builds image for agent VMs inside OpenStack

Note: image builder is able to create Nova flavor optimized for the image and this requires admin user privileges. However if the flavor is already exists then it can be provided via flavor-name config parameter and the tool executed from an ordinary user.

How to run

  1. shaker --server-endpoint <host>:<port> --scenario <scenario-file> --report <report-file>

During the run the tool deploys topology linked into scenario, spawns instances, distributes tasks among instances and generates report in HTML format.

All server parameters

  • server_endpoint = <None> - Address for server connections (host:port) (string value)
  • os_auth_url - Authentication URL, defaults to env[OS_AUTH_URL]. (string value)
  • os_tenant_name - Authentication tenant name, defaults to env[OS_TENANT_NAME]. (string value)
  • os_username - Authentication username, defaults to env[OS_USERNAME]. (string value)
  • os_password - Authentication password, defaults to env[OS_PASSWORD]. (string value)
  • os_region_name = RegionOne - Authentication region name, defaults to env[OS_REGION_NAME]. (string value)
  • external_net - Name or ID of external network. If not set the network is chosen randomly. (string value)
  • image_name = shaker-image - Name of image to use. The default is created by shaker-image-builder (string value)
  • flavor_name = shaker-flavor - Name of image flavor. The default is created by shaker-image-builder (string value)
  • scenario = <None> - Scenario file name (string value)
  • report = <None> - Report file name. If not specified print to stdout (string value)
  • report_template = shaker/engine/report.template - Report template file name (Jinja format) (string value)