Adding Visualizations and Dashboard for Shaker
+ Added README to explain the dashboard + Changed panel size of markdown visualizations in the dashboard + Added Shaker visualization/dashboard directories Change-Id: I556ac51971cdc521e2cbab01a4139ed5e32d18b0
This commit is contained in:
parent
dbe0f15477
commit
1995e44ac3
18
ansible/README.shaker-viz.rst
Normal file
18
ansible/README.shaker-viz.rst
Normal file
@ -0,0 +1,18 @@
|
||||
Shaker Data Plane Performance Dashboard
|
||||
=======================================
|
||||
|
||||
The Shaker dashboard aims to present data plane performance of OpenStack VMs
|
||||
connected in different network topologies in a summarized form. Three distinct
|
||||
visulizations representing L2, L3 E-W and L3 N-S topologies along with the
|
||||
corrensponding markdown to exaplain each visualization make the "Browbeat Shaker
|
||||
Scenarios with Throughput vs Concurrency" dashboard. For each network topology,
|
||||
average throughput for TCP download and upload in Mbps is expressed vs the VM
|
||||
conccurency (number of pairs of VMs firing traffic at any given moment). For
|
||||
example, in the L2 scenario if the average throughput is 4000 Mbps at a
|
||||
concurrency of 2, it means that each pair of VMs involved average at 4000 Mbps
|
||||
for the duration of the test, bringing the total throughput to 8000 Mbps(avg
|
||||
throughput*concurrency).
|
||||
|
||||
You can filter based on browbeat_uuid and shaker_uuid to view results from a
|
||||
specific run only.
|
||||
|
@ -10,8 +10,11 @@
|
||||
# Vars for templatized Visualizations:
|
||||
- "{{browbeat_path}}/ansible/install/roles/kibana-visualization/vars/keystone_osp_version_token_visualizations.yml"
|
||||
- "{{browbeat_path}}/ansible/install/roles/kibana-visualization/vars/keystone_processes_threads_visualizations.yml"
|
||||
- "{{browbeat_path}}/ansible/install/roles/kibana-visualization/vars/shaker_scenario_throughput_concurrency_visualizations.yml"
|
||||
# Vars for templatized Dashboards:
|
||||
- "{{browbeat_path}}/ansible/install/roles/kibana-visualization/vars/keystone_osp_version_token_dashboards.yml"
|
||||
- "{{browbeat_path}}/ansible/install/roles/kibana-visualization/vars/keystone_processes_threads_dashboards.yml"
|
||||
- "{{browbeat_path}}/ansible/install/roles/kibana-visualization/vars/shaker_scenario_throughput_concurrency_dashboard.yml"
|
||||
|
||||
roles:
|
||||
- kibana-visualization
|
||||
|
@ -19,6 +19,21 @@
|
||||
- "{{keystone_osp_version_token_dashboards}}"
|
||||
- "{{keystone_processes_threads_dashboards}}"
|
||||
|
||||
- name: Generate Shaker Visualizations
|
||||
template:
|
||||
src: "{{item.template}}"
|
||||
dest: "{{browbeat_path}}/visualization/Shaker/visualization/{{item.title}}.json"
|
||||
with_flattened:
|
||||
- "{{shaker_scenario_throughput_concurrency_visualizations}}"
|
||||
|
||||
- name: Generate Shaker Dashboard
|
||||
template:
|
||||
src: dashboard.json.j2
|
||||
dest: "{{browbeat_path}}/visualization/Shaker/dashboard/{{item.file_name}}"
|
||||
with_flattened:
|
||||
- "{{shaker_scenario_throughput_concurrency_dashboard}}"
|
||||
|
||||
|
||||
- name: Remove Searches
|
||||
uri:
|
||||
url: http://{{ es_ip }}:{{ es_local_port }}/{{ es_kibana_index }}/search/{{ item | basename | regex_replace('\.json','') }}
|
||||
@ -100,3 +115,17 @@
|
||||
with_flattened:
|
||||
- "{{keystone_osp_version_token_dashboards}}"
|
||||
- "{{keystone_processes_threads_dashboards}}"
|
||||
|
||||
- name: Cleanup Shaker Visualizations
|
||||
file:
|
||||
path: "{{browbeat_path}}/visualization/Shaker/visualization/{{item.title}}.json"
|
||||
state: absent
|
||||
with_items:
|
||||
- "{{shaker_scenario_throughput_concurrency_visualizations}}"
|
||||
|
||||
- name: Cleanup Shaker Dashboards
|
||||
file:
|
||||
path: "{{browbeat_path}}/visualization/Shaker/dashboard/{{item.file_name}}"
|
||||
state: absent
|
||||
with_items:
|
||||
- "{{shaker_scenario_throughput_concurrency_dashboard}}"
|
||||
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"title": "{{item.title}}",
|
||||
"visState": "{ \"title\": \"{{item.title}}\", \"type\":\"histogram\",\"params\":{\"addLegend\":true,\"addTimeMarker\":false,\"addTooltip\":true,\"defaultYExtents\":false,\"mode\":\"grouped\",\"scale\":\"linear\",\"setYExtents\":false,\"shareYAxis\":true,\"times\":[],\"yAxis\":{}},\"aggs\":[{\"id\":\"1\",\"type\":\"avg\",\"schema\":\"metric\",\"params\":{\"field\":\"result.value\"}},{\"id\":\"2\",\"type\":\"terms\",\"schema\":\"segment\",\"params\":{\"field\":\"result.result_type\",\"size\":2,\"order\":\"desc\",\"orderBy\":\"1\"}},{\"id\":\"3\",\"type\":\"terms\",\"schema\":\"group\",\"params\":{\"field\":\"record.concurrency\",\"size\":200,\"order\":\"desc\",\"orderBy\":\"1\"}}],\"listeners\":{}}",
|
||||
"description": "",
|
||||
"version": 1,
|
||||
"kibanaSavedObjectMeta": {
|
||||
"searchSourceJSON": "{\"index\":\"[browbeat-shaker-]YYYY.MM.DD\",\"query\":{\"query_string\":{\"query\":\"{{item.query}}\",\"analyze_wildcard\":true}},\"filter\":[]}"
|
||||
}
|
||||
}
|
@ -0,0 +1,52 @@
|
||||
---
|
||||
#
|
||||
# Shaker Scenario Throughput vs Concurrency Dashboard
|
||||
#
|
||||
|
||||
shaker_scenario_throughput_concurrency_dashboard:
|
||||
- file_name: "ShakerScenarioThroughputConcurrency.json"
|
||||
title: "Browbeat Shaker Scenarios with Throughput vs Concurrency"
|
||||
darkTheme: "true"
|
||||
panels:
|
||||
- id: "Shaker-L2"
|
||||
type: "visualization"
|
||||
panelIndex: 1
|
||||
size_x: 12
|
||||
size_y: 2
|
||||
col: 1
|
||||
row: 1
|
||||
- id: "Browbeat-Shaker-L2"
|
||||
type: "visualization"
|
||||
panelIndex: 2
|
||||
size_x: 12
|
||||
size_y: 4
|
||||
col: 1
|
||||
row: 3
|
||||
- id: "Shaker-L3-ES"
|
||||
type: "visualization"
|
||||
panelIndex: 3
|
||||
size_x: 12
|
||||
size_y: 2
|
||||
col: 1
|
||||
row: 7
|
||||
- id: "Browbeat-Shaker-L3-East-West"
|
||||
type: "visualization"
|
||||
panelIndex: 4
|
||||
size_x: 12
|
||||
size_y: 4
|
||||
col: 1
|
||||
row: 9
|
||||
- id: "Shaker-L3-NS"
|
||||
type: "visualization"
|
||||
panelIndex: 5
|
||||
size_x: 12
|
||||
size_y: 2
|
||||
col: 1
|
||||
row: 13
|
||||
- id: "Browbeat-Shaker-L3-North-South"
|
||||
type: "visualization"
|
||||
panelIndex: 6
|
||||
size_x: 12
|
||||
size_y: 4
|
||||
col: 1
|
||||
row: 15
|
@ -0,0 +1,24 @@
|
||||
---
|
||||
#
|
||||
# Shaker Scenario-Throughput-Concurrency - Visualizations Variables
|
||||
#
|
||||
|
||||
shaker_scenario_throughput_concurrency_visualizations:
|
||||
- title: "Shaker-L2"
|
||||
template: "markdown.json.j2"
|
||||
markdown: "# Shaker-L2-Avg Throughput vs Concurency\\\\n[Browbeat](https://github.com/openstack/browbeat)\\\\n\\\\n[Shaker-L2](https://github.com/openstack/shaker/blob/master/doc/source/examples/full_l2.rst)"
|
||||
- title: "Browbeat-Shaker-L2"
|
||||
template: "shaker-throughput-concurrency.json.j2"
|
||||
query: "shaker_test_info.deployment.template: l2.hot"
|
||||
- title: "Shaker-L3-ES"
|
||||
template: "markdown.json.j2"
|
||||
markdown: "# Shaker-L3-East-West-Avg Throughput vs Concurency\\\\n[Browbeat](https://github.com/openstack/browbeat)\\\\n\\\\n[Shaker-L3-East-West](https://github.com/openstack/shaker/blob/master/doc/source/examples/full_l3_east_west.rst)"
|
||||
- title: "Browbeat-Shaker-L3-East-West"
|
||||
template: "shaker-throughput-concurrency.json.j2"
|
||||
query: "shaker_test_info.deployment.template: l3_east_west.hot"
|
||||
- title: "Shaker-L3-NS"
|
||||
template: "markdown.json.j2"
|
||||
markdown: "# Shaker-L3-North-South-Avg Throughput vs Concurency\\\\n[Browbeat](https://github.com/openstack/browbeat)\\\\n\\\\n[Shaker-L3-East-West](https://github.com/openstack/shaker/blob/master/doc/source/examples/full_l3_north_south.rst)"
|
||||
- title: "Browbeat-Shaker-L3-North-South"
|
||||
template: "shaker-throughput-concurrency.json.j2"
|
||||
query: "shaker_test_info.deployment.template: l3_north_south.hot"
|
4
visualization/Shaker/dashboard/.gitignore
vendored
Normal file
4
visualization/Shaker/dashboard/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
# This .gitignore is included to ensure this directory exists
|
||||
*
|
||||
# Ignores everything, except this file
|
||||
!.gitignore
|
4
visualization/Shaker/visualization/.gitignore
vendored
Normal file
4
visualization/Shaker/visualization/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
# This .gitignore is included to ensure this directory exists
|
||||
*
|
||||
# Ignores everything, except this file
|
||||
!.gitignore
|
Loading…
Reference in New Issue
Block a user