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
This patch changes ElasticSearch version to 7.13.
Co-authored-by: Masco Kaliyamoorthy <mkaliyam@redhat.com>
Change-Id: Ibb8e1bb9c17313f5ca0a72eebfd91b30c45a761a
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
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
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
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
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
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>
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
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
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
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
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
+ 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
+ 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
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