
This commit adds a try-except block when populating parameters for creating the heat stack. For example, if a user forgets to create an external network, we throw an exception in shaker.openstack.clients.neutron.choose_external_net, however we continue even though connection to openstack would fail in server.py to accomodate for scenarios that do not need OpenStack connection. We need to fail and exit before creating heat stack if one of the required parameters is missing. Change-Id: Ic5a10a83f51dc7f0c17d31eeca5a94ade8ee1409
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
andport
- host and port of machine where Shaker is deployedscenario
- 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
andport
- host and port on machine where Shaker is deployedartifacts-dir
- where to store report and raw resultscenario
- the scenario to execute, e.g. openstack/perf_l2 ( catalog)os-XXX
- OpenStack cloud credentials
Links
- PyPi - https://pypi.org/project/pyshaker/
- Docker - https://hub.docker.com/r/shakhat/shaker/
- Docs - http://pyshaker.readthedocs.io/
- Bugtracker - https://launchpad.net/shaker/
Description
Languages
Python
91%
HTML
8%
Shell
0.8%
Dockerfile
0.2%