Distributed data-plane performance testing tool
Go to file
Ilya Shakhat 1f9c4d0a21 Pack Shaker into container
Now Shaker can be run in Docker container! The container
does the whole work: it creates image, runs the scenario
and cleans everything up.

Change-Id: I9cbcb7e79d08f9526cf1ee8f3ccafab34d3935c2
2016-08-04 15:36:41 +03:00
doc/source Pack Shaker into container 2016-08-04 15:36:41 +03:00
etc Pack Shaker into container 2016-08-04 15:36:41 +03:00
shaker Pack Shaker into container 2016-08-04 15:36:41 +03:00
tools Move scenarios from networking/ to openstack/ 2016-04-18 11:57:14 +03:00
.dockerignore Pack Shaker into container 2016-08-04 15:36:41 +03:00
.gitignore Initial commit 2015-01-28 18:56:01 +03:00
.gitreview Update .gitreview for new namespace 2015-10-17 22:38:47 +00:00
.testr.conf Include tests into the package 2015-07-09 11:12:29 +03:00
config-generator.conf Fix config processing for oslo.log 2015-03-03 17:38:25 +03:00
Dockerfile Pack Shaker into container 2016-08-04 15:36:41 +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 Pack Shaker into container 2016-08-04 15:36:41 +03:00
requirements-agent.txt Update requirements and pin pyzmq 2015-11-12 14:05:16 +03:00
requirements.txt Work with OpenStack python client in a modern manner 2016-04-26 10:12:24 +03:00
setup-agent.cfg Add separate setup config for building pyshaker-agent 2015-04-28 13:05:42 +03:00
setup.cfg Pack Shaker into container 2016-08-04 15:36:41 +03:00
setup.py Update requirements and pin pyzmq 2015-11-12 14:05:16 +03:00
test-requirements.txt Work with OpenStack python client in a modern manner 2016-04-26 10:12:24 +03:00
tox.ini Switch from py34 to py35 2016-08-04 13:20:15 +03:00

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 a container at Docker Hub at shakhat/shaker

$ docker run -p <port>:<port> -v <artifacts-dir>:/artifacts shakhat/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