Commit Graph

6 Commits

Author SHA1 Message Date
Fei Long Wang 35deeef798 Fix SSL and verbose issue of zaqar bench
Currently, Zaqar bench doesn't pass insecure or cert when build
Zaqar client which cause it doesn't work with SSL. This patch
fix it and also deprecates the 'verbose' option which is replaced
with 'debug'.

Closes-Bug: #1607124

Change-Id: I7411b9a310abb5e51f91bac0766a6fe7d684741c
2016-11-21 01:49:16 +00:00
Andreas Jaeger 7cc5aab290 Remove argparse from requirements
argparse was external in python 2.6 but not anymore, remove it from
requirements.

This should help with pip 8.0 that gets confused in this situation.
Installation of the external argparse is not needed.

Change-Id: Ib7e74912b36c1b5ccb514e31fac35efeff57378d
2016-01-20 19:27:59 +01:00
Eva Balycheva 1b8334b35a Make zaqar-bench use credentials from os_client_config
Currently zaqar-bench can't benchmark Zaqar while Zaqar is using
keystone authentication backend.

This patch makes it possible by using os_client_config library. The
library gets authentication parameters from "clouds.yaml". If keystone
authentication environment variables present, they override values from
"clouds.yaml". The aquired parameters then passed to constructors of
each python-zaqarclient's Client object used in zaqar-bench.

The patch also makes benchmark queue names reusable across all
zaqar-bench parts and by this fixes the old DRY princible bug.

To use zaqar-bench with keystone authentication the user must
explicitly set OS_AUTH_STRATEGY=keystone as environment variable
before running the tool. Otherwise the default 'noauth' auth strategy
will be used. This allows the user to run zaqar-bench as usual.

This patch also adds option "--api-version" with it's short version
"api" to zaqar-bench which defaults to Zaqar API v2.

Change-Id: I0a7aaeaeac6da1b2c9f08fbfdddd467de5747a28
Closes-Bug: 1523752
2016-01-09 14:57:54 +03:00
kgriffs 07ddeee517 Add observer role to benchmark tool
This patch introduces a new observer role, which lists messages but
does not claim them. As part of this work the config options were
updated and the defaults adjusted to provide a better "kick the
tires" experience.

The default number of procs and workers is now hard-coded rather
than being based on number of available CPUs, since the number of
workers you may want to run is more dependent on the size of your
Zaqar deployment and your network bandwidth than it is on the
number of CPUs on the load generator.

Finally, the "-pc" suffix was removed from the command name. This
was included in this patch because it didn't seem significant
enough to split out.

Change-Id: I8a8190fb2cebc3489c78da4f6e1e7c51d8b97017
2014-08-29 10:30:51 -05:00
Flavio Percoco 36e63c9a45 Rename Marconi to Zaqar
This patch renames every package, file, match of Marconi in the codebase
to Zaqar *except* for the .gitreview file, which will have to be updated
*after* I8e587af588d9be0b5ebbab4b0f729b106a2ae537 lands.

Implements blueprint: project-rename

Change-Id: I63cf2c680cead4641f3e430af379452058bce5b3
2014-08-04 10:36:50 +02:00
Sriram Madapusi Vasudevan 4c950f99e4 feat(benchmarking) : Producer-Consumer scenario
This patch adds the ability to benchmark Marconi. The benchmark tool
is a console script, and can be triggered using

$ marconi-bench-pc

The Benchmark tool fires up both a Producer Process and a Consumer
Process, while accepting CLI parameters for the number of processes,
number of workers and duration of test.

The Producer Process publishes messages to a given queue, while the
Consumer consumes the messages by claiming and deleting them.

Setup:

Benchmark dependencies need to be pip installed:

 pip install -r bench-requirements.txt

Export an environment variable called MESSAGES_PATH and set it to the
path of messages.json in marconi/bench

Note: This allows benchmarking with different set of messages rather
than those specified in messages.json

Usage:

$ marconi-bench-pc -p {No. Processes} -w {No. Workers} -t {No. Seconds}

Example:

$ marconi-bench-pc -p 2 -w 2 -t 4

Partially Implements: blueprint basic-benchmarking
Change-Id: I57ebe853554199490adba8b2a091423f399b0565
2014-07-16 10:37:12 -04:00