Skip to content

Distributed data-plane performance testing tool

License

Notifications You must be signed in to change notification settings

kakawxy/shaker

 
 

Repository files navigation

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 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

Links

About

Distributed data-plane performance testing tool

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 90.0%
  • HTML 9.6%
  • Shell 0.4%