diff --git a/performa/scenarios/mq/omsimulator-ha-notify.rst b/performa/scenarios/mq/omsimulator-ha-notify.rst new file mode 100644 index 0000000..83bac69 --- /dev/null +++ b/performa/scenarios/mq/omsimulator-ha-notify.rst @@ -0,0 +1,94 @@ +Oslo.messaging simulator HA report +---------------------------------- + +This report is result of `message_queue_performance`_ execution +with `Oslo.messaging Simulator`_ + + +NOTIFY fail-over throughput test +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +**Summary** + +{{''' + title: Execution summary + fields: + a1: Client sent, msg + b1: Server received, msg + b2: Loss, msg + c1: Avg. latency, ms + c2: Max latency, ms + collection: records + pipeline: + - $match: { task: omsimulator, mode: notify } + - $project: + a1: "$client.count" + b1: "$server.count" + b2: { $subtract: ["$client.count", "$server.count" ] } + c1: { $multiply: ["$server.latency", 1000] } + c2: { $multiply: ["$server.max_latency", 1000] } +''' | info +}} + +**Message flow** + +{{''' + title: NOTIFY message flow + axes: + x: time + y1: sent, msg + y2: received, msg + y3: latency, ms + chart: line + collection: series + pipelines: + - + - $match: { task: omsimulator, mode: notify, name: client_0 } + - $project: + x: "$timestamp" + y1: "$count" + - + - $match: { task: omsimulator, mode: notify, name: server } + - $project: + x: "$timestamp" + y2: "$count" + y3: { $multiply: ["$latency", 1000] } +''' | chart +}} + + +**Messages sent by the client** + +{{''' + title: NOTIFY sent messages + axes: + x: time + y: sent, msg + chart: line + collection: series + pipeline: + - $match: { task: omsimulator, mode: notify, name: client_0 } + - $project: + x: "$seq" + y: "$count" +''' | chart_and_table +}} + +**Messages received by the server** + +{{''' + title: NOTIFY received messages + axes: + x: time + y: round-trip, msg + y2: latency, ms + chart: line + collection: series + pipeline: + - $match: { task: omsimulator, mode: notify, name: server } + - $project: + x: "$seq" + y: "$count" + y2: { $multiply: ["$latency", 1000] } +''' | chart_and_table +}} diff --git a/performa/scenarios/mq/omsimulator-ha-notify.yaml b/performa/scenarios/mq/omsimulator-ha-notify.yaml new file mode 100644 index 0000000..9d2ee54 --- /dev/null +++ b/performa/scenarios/mq/omsimulator-ha-notify.yaml @@ -0,0 +1,45 @@ +title: OMSimulator HA test + +description: + This scenario uses oslo.messaging simulator tool to execute MQ test plan. + +parameters: + tester_hosts: List of hosts were omsimulator will be executed + rabbit_url: RabbitMQ address + +setup: + - + hosts: {{ tester_hosts }} + tasks: + - apt: name=git + become: yes + - apt: name=daemon + become: yes + - name: installing omsimulator + git: repo=git://git.openstack.org/openstack/oslo.messaging + dest=/tmp/performa/oslo.messaging + - apt: name=python-dev + become: yes + - apt: name=python-pip + become: yes + - pip: name=virtualenv + become: yes + - pip: requirements=/tmp/performa/oslo.messaging/requirements.txt virtualenv=/tmp/performa/oslo.messaging/.venv + - pip: name=eventlet virtualenv=/tmp/performa/oslo.messaging/.venv + - command: /tmp/performa/oslo.messaging/.venv/bin/python setup.py install + args: + chdir: /tmp/performa/oslo.messaging + +execution: + - + hosts: {{ tester_hosts }} + tasks: + - omsimulator: + mode: notify + duration: 50 + threads: 1 + host_count: 1 + url: {{ rabbit_url }} + +report: + template: omsimulator-ha-notify.rst