Skip to content
Yulya Portnova edited this page Jun 16, 2016 · 6 revisions

Testing oslo.messaging

Preparation

Clone this repo

git clone https://github.com/Mirantis/disk_perf_test_tool.git
git checkout omg

install requirements from requirements.txt

Config file Create config file Use configs-examples/omg.yaml as template. Add your fuel credentials, openstack env name and tests you want to run.

Run wally

python -m wally test test configs-examples/omg.yaml

Test will be run on all nodes with roles put in discover section of config.

On first run wally will run preparation on each node: create virtualenv for tests install needed packages, download and install oslo.messaging

Testing

Script starts <num_servers> rpc-servers simulator processes and one rpc-client process with <num_clients> client threads.

Simulator client threads send defined number of messages (/<num_messages/> in config) Client receives list of targets to use (<topic>.<server>) Targets are product of topics and all servers that we use for testing. So min number of clients should be num_topics * num_nodes.

After tests finished we collect statistics from client log and servers logs. Aggregate results and print it to console.

NOTE: there is a bug with simulator rpc-server hanging. Workaround is here: https://review.openstack.org/#/c/318504/. You will need to add this patch to prepare.sh until this problem is not fixed in master

Test specific patch

If you need to test some particular patch you need to add git checkout/pull/other command to prepare.sh. Notice that it will check if virtualenv exists so you will need to delete virtualenv first.

Bugs and limitations:

  1. rpc-servers for creating target are taken from /etc/hosts. Controller's hostnames are removed from output (grep -v <node-name>)
  2. Setting node_limit will not affect targets used (we will try to send messages for non-existed targets).
  3. Works only with in openstack env. Will not work with explicit nodes because /etc/hosts file used

Clone this wiki locally