Distributed data-plane performance testing tool
Go to file
Oded Le'Sage 242992bf9a Update cleanup cfg parameter to a more appropriate name
The current cfg cleanup_on_error is a bit of a misnomer, since cleanup
is not always dependent on there being an error.

This commit updates the cleanup cfg parameter to better reflect when
cleanup actually happens - cleanup_on_exit

Change-Id: I984e4b660705be8afa50a1e8605102832fd802dd
2019-08-20 10:30:26 -05:00
doc/source Update cleanup cfg parameter to a more appropriate name 2019-08-20 10:30:26 -05:00
etc Update cleanup cfg parameter to a more appropriate name 2019-08-20 10:30:26 -05:00
shaker Update cleanup cfg parameter to a more appropriate name 2019-08-20 10:30:26 -05:00
tools Add Zuul job to build Docker image 2018-11-09 09:31:01 +01:00
.dockerignore Pack Shaker into container 2016-08-04 15:36:41 +03:00
.gitignore Enhance Shaker to support custom user options 2018-11-06 16:53:26 -06:00
.gitreview OpenDev Migration Patch 2019-04-19 19:25:34 +00:00
.stestr.conf Switch to stestr 2018-07-06 10:33:13 +07:00
.zuul.yaml Remove redundant lines in zuul config 2019-05-29 14:41:05 +00:00
Dockerfile Add Zuul job to build Docker image 2018-11-09 09:31:01 +01:00
LICENSE Initial commit 2015-01-28 18:56:01 +03:00
README.rst Add Zuul job to build Docker image 2018-11-09 09:31:01 +01:00
config-generator.conf Fix config processing for oslo.log 2015-03-03 17:38:25 +03:00
openstack-common.conf Use oslo.log lib instead of incunator code 2015-03-03 16:14:19 +03:00
readthedocs.yml Fix docs gate and rtd build 2016-12-14 12:51:10 +04:00
requirements.txt Enhance Shaker to provide the ability to define support templates 2018-11-05 11:12:14 -06:00
rtd-requirements.txt Fix docs gate and rtd build 2016-12-14 12:51:10 +04:00
setup.cfg Run tests on Python 3.7 2019-02-19 20:30:28 +00:00
setup.py Update requirements and pin pyzmq 2015-11-12 14:05:16 +03:00
test-requirements.txt Pin version of Sphinx 2019-05-29 14:36:49 +02:00
tox.ini Replace py35 job with py36 2019-03-25 09:54:08 +01:00

README.rst

Shaker

The distributed data-plane testing tool built for OpenStack.

Shaker wraps around popular system network testing tools like iperf, iperf3 and netperf (with help of flent). Shaker is able to deploy OpenStack instances and networks in different topologies. Shaker scenario specifies the deployment and list of tests to execute. Additionally tests may be tuned dynamically in command-line.

Features

  • User-defined topology via Heat templates
  • Simultaneously test execution on multiple instances
  • Interactive report with stats and charts
  • Built-in SLA verification

Deployment Requirements

  • Shaker server routable from OpenStack cloud
  • Admin-user access to OpenStack API is preferable

Run in Python Environment

$ pip install pyshaker
$ . openrc
$ shaker-image-builder
$ shaker --server-endpoint <host:port> --scenario <scenario> --report <report.html>``
where:
  • host and port - host and port of machine where Shaker is deployed
  • scenario - the scenario to execute, e.g. openstack/perf_l2 ( catalog)
  • <report.html> - file to store the final report

Full list of parameters is available in documentation.

Shaker in Container

Shaker is available as container at Docker Hub at performa/shaker

$ docker run -p <port>:<port> -v <artifacts-dir>:/artifacts performa/shaker --scenario <scenario> --server-endpoint <host:port>
  --os-auth-url <os-auth-url> --os-username <os-username> --os-password <os-password> --os-project-name <os-project-name>
where:
  • host and port - host and port on machine where Shaker is deployed
  • artifacts-dir - where to store report and raw result
  • scenario - the scenario to execute, e.g. openstack/perf_l2 ( catalog)
  • os-XXX - OpenStack cloud credentials