Commit Graph

28 Commits

Author SHA1 Message Date
rajeshP524 5d8bf36396 fixed issues with browbeat installation on osp13
Change-Id: I01fbfa382308f12bdf79f3da160db0059037b8df
2022-02-10 17:31:15 +05:30
Sanjay Chari a0d555812b Multiple worksheets for Rally json Google Sheets
This patch introduces multiple worksheets within one Google sheet
for multiple atomic actions

Change-Id: Ia6542cd7646a87c53cd633bde070939729a7ef9b
2022-01-28 13:17:24 +05:30
Sanjay Chari b0a101bdc1 Rally json google sheets
This patch introduces a script that takes the
Rally json report as input and creates a Google sheet
with duration data for an atomic action.

Change-Id: Ia3a116da0a39f2e3754f79970d997d1bf87eb167
2022-01-07 12:07:33 +05:30
Sanjay Chari 99b54bbf16 Change in ElasticSearch version
This patch changes ElasticSearch version to 7.13.

Co-authored-by: Masco Kaliyamoorthy <mkaliyam@redhat.com>
Change-Id: Ibb8e1bb9c17313f5ca0a72eebfd91b30c45a761a
2021-10-07 17:29:50 +05:30
Masco Kaliyamoorthy fda773c682 fix osp-13 issues
1.switch to get-pip.py script to install pip on undercloud
2.pip the python-openstackclient at 3.11.0 for python2
3.make the tripleo based hostfile script as default choice

Change-Id: Idc90832ee9372954e4e05ce36a0a00886a427bce
2021-06-04 17:20:05 +05:30
Asma Syed Hameed 088e34f99e The cryptography package now requires pip 19+ which is
not available by default when using the distribution packages
pyca/cryptography#5753

To resolve this, we upgrade pip in the virtualenv if it
is not new enough. We maintain the pin on <20 to ensure
that it is usable in both python2 and python3 environments
and that it doesn't bring any new setuptools requirements
into the mix.

Change-Id: I1adb92ee823558bd4e6b70ca961669ccf3e0434b
2021-02-16 10:55:23 +05:30
Asma Syed Hameed 2928e1951f Pin pyrsistent as a new release(0.17.0) breaks python2.7 support
Change-Id: Iffc995656a43224ae9c018c3c141b13e4d0216e5
2020-10-21 14:24:55 +05:30
agopi 03be425102 Add numpy to extras
Move numpy out of requirements into extras, as it's not required
for running browbeat, but only used for insights like compare
results.

So to install with insights, pip install .[insights], to perform
the CLI operations such as compare.

Added a tox test to ensure no dep conflict arises.

Change-Id: Id8aafcd479003ae79ab8c2d0f1fa378ea38d60d2
Closes-Bug: #1799690
2018-11-12 15:41:24 +00:00
Sorin Sbarnea 1c04131583 Switch to ranges for dependencies to avoid conflicts in consumers
tripleo-quickstart lists browbeat as a dependency and too strict
requirements can cause conflicts. Avoid case where ansible version
used by tripleo was downgraded to a buggy old version mentioned
by browbeat.

To be clear: if needed, it would be expected to add version capping
here. If we know that ansible 2.9 will break the code it would be
wise to add "<2.9" to it. Adding testing with newer versions would
be subject of another change.

If you add a capping please always add a link to the bug that made
it necessary, it helps a lot later.

Change-Id: I163a7088d687dbaf0a04f4b9c2f706652a92c7c4
2018-10-26 15:01:54 +01:00
Joe Talerico 55d4aa5a9f Adding elastic methods to query results
Right now we depend on Kibana to do our comparisons. This will give the
user a CLI mechansim to compare two different browbeat runs.

+ Small fix to browbeat metadata comparsion to not query _all

+ Changing how the metadata comparsion is displayed

Change-Id: I3881486100c91dcf3cc4eeeb4ddfa532ff01a7f1
2018-07-19 09:56:50 -04:00
Charles Short f7a653af3c Update ansible to 2.4.1
Update ansible version to 2.4.1, so we can take advantage of new
modules such as archive.

Ansible 2.4.1 was selected because that is the version that is
used by tripleo-quickstart.

Change-Id: Iab66dacd6fef2617a6ef82e91d2f48b2fd507aa6
Signed-off-by: Charles Short <zulcss@gmail.com>
2018-06-09 21:03:29 -04:00
akrzos a2d0ba0856 Latest version of pykwalify has issues with strings in Python
Pin the version of 1.6.0 for now.

See original issue:

https://github.com/Grokzen/pykwalify/issues/124

Issue you'll see in Browbeat:

pykwalify.errors.RuleError: <RuleError: error code 4: Item: 'rhel' in
enum is not of correct class type: '<type 'str'>': Path:
'/mapping/perfkit/mapping/default/mapping/os_type'>

Change-Id: I3bde52beea19e0fce7d432e6a7cb411cbc1852fd
2018-03-15 11:47:02 -04:00
akrzos c34543f909 Transition to GrafYaml for Dashboard Storage
Reasons to move from json, json.j2 to yaml/yaml.j2 + GrafYaml:
* Yaml is less lines
* Yaml allows comments
* Yaml means less curly braces and quotes
* GrafYaml manages panel ids and target refIds
* GrafYaml defaults reduce number of lines stored
* GrafYaml allows more easily cut/paste management of Dashboards

Identified Downsides:
* GrafYaml will be behind the Grafana Dashboard Model (Until code is updated)
* Json will always allow full feature set
* Installing Dashboards now requires GrafYaml

New Dashboards/Features:
* Templated Dashboards (Reduce line count in "static" dashboards)
* Cloud Specific networks - all dashboard
* Three Node Performance Food groups Enhanced
* Networker Node added for Cloud Specific Dashboards and Total Memory

Change-Id: I55ce9f9f6c28497c8b4ed7a19d42657a8eb14170
2018-02-27 10:20:18 -05:00
akrzos 2f0096fde5 Initial refactor
Refactor module names
Logger match module names
Add abstract method for run_workloads to WorkloadBase

Change-Id: I20b22787046bab98efb0a099bd32a08df8918628
2017-09-14 13:11:50 -06:00
jkilpatr b21cd3cebc Add YODA for undercloud and overcloud workloads
Yoda is a Browbeat workload for Ironic and TripleO

It can perform and monitor the following

 * Introspection bulk or batch
 * Cloud deployment with varying node types and numbers
 * Baremetal node import timing (actually done during introspection tests)

Metrics that are gathered inclue

 * Time to pxe
 * Time till pingable
 * Success/Failure rate ahd times
 * Overcloud Metadata after each deploy

Potential issues

Change-Id: I89809cc35db2cfaa39f8ede49ec853572c0e468e
2017-06-15 15:25:31 +00:00
akrzos 9b333bd72c Install Browbeat on a VM
Initial attempt at getting ansible to work with installing Browbeat in each of these situations:
* Install on Undercloud from Local Machine
* Install on Undercloud from Undercloud
* Install on Non-Undercloud from Local Machine
* Install on Non-Undercloud from Non-Undercloud

Improvements/Cleanup:
* Install instructions from Browbeat VM
* Separate Browbeat machine from Undercloud
* Flavor/Image upload via python-OpenStackClient from browbeat-venv
* Separate install components into separate roles for easier debugging
* Separate Flavors/Images Upload from browbeat install into separate role
* Change order of vars for easier understanding
* Support CentOS iptables setup with another var
* Download and then convert qcow2 into raw image for upload

Change-Id: I99365ef933c57a9ec0faedefcdc2d7c0f92f0ec4
2017-05-31 14:14:46 -04:00
jkilpatr 64188302b1 Update Ansible requirement
Using ansible 2.1.0.0 is starting to cause some builds to fail
because of incompatiblity with the systemd module that's been
updated upstream. So we need to update the pin.

Change-Id: I91dafc3d889361b407f3b1ede349ceacca3422e1
2017-01-19 07:12:56 -05:00
akrzos 7550091734 Use Ansible 2.1.1.0
Change-Id: I731b34c164cef5c14c6fe585b79928a5e9c6bb36
2016-10-07 13:38:39 -04:00
Sindhur 06e3e3292b Adding Browbeat Infra files
Adding .gitreview file
Adding tox.ini
Adding setup.py
Adding test-requirments.txt
Fixing syntax

Change-Id: Id6d628708079440207e5f068f5f0827802f2aa14
2016-06-14 09:16:53 -04:00
Joe Talerico 13c67b4e11 Elastic search connector - Rally
+ Added function for Rally Results
+ Modified the Service filed
+ Rally.py now produces a json file and returns json
+ Grafana to return the URL list
+ Quick single workload test worked.. +1
+ Switched to a List for the config
+ Rebase
+ Remove parent/child work
+ Error check
+ Default 3 jsons in the config file
+ Rebase
+ Pep
+ Remove Grafana-API Key per Akrzos
+ Small bug
+ Removed getter/setter in Grafana.py

Change-Id: I9f1d5f27597c4c4897fc4ee821aad309fa11a04b
2016-04-27 23:40:29 -04:00
Sindhur Malleni d7bde02b0d Adding functionality to check validity of configuration file
Change-Id: Icaf5fecb6e77351c23273e6c888924de1a55d596
2016-04-11 12:12:03 -04:00
Alex Krzos cc5fee596b Remove ansible api due to 1.9.4 confusion and bugs.
+ Adjusted workloads to positional args and is flexiable to take:
  - ./browbeat.py                      ---> Runs all worklaods in order: perfkit rally shaker
  - ./browbeat.py all                  ---> Runs all workloads in order: perfkit rally shaker
  - ./browbeat.py perfkit rally        ---> Runs workloads in order: perfkit rally
  - ./browbeat.py shaker rally perfkit ---> Runs workloads in order: shaker rally perfkit
+ --debug now displays debug messages in stdout in addition to previous locations it logged
+ --setup or -s to take a config, Defaults to browbeat-config.yaml (Same as before), Examples:
  - ./browbeat.py -s browbeat-complete.yaml rally
  - ./browbeat.py -s conf/browbeat-keystone-complete.yaml --debug
+ Use __init__.py to allow cleaner importing of files under lib/
+ Remove ansible version restriction in requirements.txt
+ Separate connmon config from browbeat config for clarity.

Change-Id: Ifb74e5868be128fb378c7b052ba5a1bea46b4dff
2016-03-30 15:00:15 -04:00
Alex Krzos c47f0ad59b Install updates.
Change-Id: I73d3afad0879e6ef2b37248e326404adedc3d698
2016-02-15 16:25:10 +01:00
Joe Talerico 4f662d08f4 Remove pbench from code
We have a solution that works better internally and externally. Pbench
had a set of challanges.

(akrzos) Moved pbench ansible install playbook into pbench folder
(akrzos) cleaned up other garbage
(akrzos) Fix merge conflict

Change-Id: Ie0a59d799846c3c9f5970c1a3b83ae50ebced0b8
2016-02-12 13:31:49 -05:00
Alex Krzos 2476b31fc1 Force ansible to be 1.9.4 for now for install. Also add a .gitignore
Change-Id: I83df79798d6554d44dfa9afdf0556f1092a81f19
2016-01-28 09:27:31 -05:00
Alex Krzos 1e94748243 Break out installers.
Change-Id: Ief31a62d72003a02c9291dd0125efb46cc730579
2015-12-22 15:14:48 -05:00
Alex Krzos bd6c06c205 Adding matplotlib to requirements.txt and adjusting installation instructions.
Change-Id: I7a39394623b9955f1aab30dc0881fdb6858b1c0e
2015-12-09 09:29:00 -05:00
Alex Krzos ec6620360d Adjustments to fix pbench with browbeat 2015-12-08 21:47:53 -05:00