diff --git a/README.md b/README.md index 65be02833..3a2259f80 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,27 @@ Table of Contents ================= -- [Browbeat](#) -- [Before running browbeat](#) -- [How to run Browbeat?](#) -- [What is necessary?](#) -- [Detailed Install, Check and Run](#) - - [Install Browbeat from your local machine](#) - - [From your local machine](#) - - [(Optional) Install collectd](#) - - [(Optional) Install collectd->graphite dashboards](#) - - [(Optional) Install connmon](#) - - [Run Overcloud checks](#) - - [Run performance stress tests through browbeat on the undercloud](#) - - [Install Browbeat directly on undercloud](#) - - [From your undercloud](#) - - [(Optional) Install collectd](#) - - [(Optional) Install collectd->graphite dashboards](#) - - [(Optional) Install connmon](#) - - [Run Overcloud checks](#) - - [Run performance stress tests through browbeat](#) -- [Running PerfKitBenchmarker](#) -- [Contributing](#) +- [Browbeat](#browbeat) +- [Before running browbeat](#before-running-browbeat) +- [How to run Browbeat?](#how-to-run-browbeat) +- [What is necessary?](#what-is-necessary) +- [Detailed Install, Check and Run](#detailed-install-check-and-run) + - [Install Browbeat from your local machine](#install-browbeat-from-your-local-machine) + - [From your local machine](#from-your-local-machine) + - [(Optional) Install collectd](#optional-install-collectd) + - [(Optional) Install collectd->graphite dashboards](#optional-install-collectd-graphite-dashboards) + - [(Optional) Install connmon](#optional-install-connmon) + - [Run Overcloud checks](#run-overcloud-checks) + - [Run performance stress tests through browbeat on the undercloud](#run-performance-stress-tests-through-browbeat-on-the-undercloud) + - [Install Browbeat directly on undercloud](#install-browbeat-directly-on-undercloud) + - [From your undercloud](#from-your-undercloud) + - [(Optional) Install collectd](#optional-install-collectd) + - [(Optional) Install collectd->graphite dashboards](#optional-install-collectd-graphite-dashboards) + - [(Optional) Install connmon](#optional-install-connmon) + - [Run Overcloud checks](#run-overcloud-checks) + - [Run performance stress tests through browbeat](#run-performance-stress-tests-through-browbeat) +- [Running PerfKitBenchmarker](#running-perfkitbenchmarker) +- [Contributing](#contributing) # Browbeat This started as a project to help determine the number of database connections a given OpenStack deployment uses via stress tests. It has since grown into a set of Ansible playbooks to help check deployments for known issues, install tools and change parameters of the overcloud. @@ -34,7 +34,8 @@ This started as a project to help determine the number of database connections a # How to run Browbeat? On the Red Hat OpenStack Director host, as the Stack user jump into the browbeat venv and you simply run: - ./browbeat.py --help + (browbeat-venv)[stack@ospd browbeat]$ ./browbeat.py --help + # What is necessary? * Red Hat OpenStack Director @@ -59,7 +60,7 @@ $ cd browbeat/ansible $ ./gen_hostfile.sh ~/.ssh/config $ vi install/group_vars/all # Make sure to edit the dns_server to the correct ip address $ ansible-playbook -i hosts install/browbeat.yml -$ vi install/group_vars/all # Edit browbeat subnet/start/end/gw settings +$ vi install/group_vars/all # Edit browbeat network settings $ ansible-playbook -i hosts install/browbeat_network.yml $ ansible-playbook -i hosts install/shaker_build.yml ``` @@ -109,7 +110,7 @@ $ ssh undercloud-root [stack@ospd ansible]$ sudo pip install ansible [stack@ospd ansible]$ vi install/group_vars/all # Make sure to edit the dns_server to the correct ip address [stack@ospd ansible]$ ansible-playbook -i hosts install/browbeat.yml -[stack@ospd ansible]$ vi install/group_vars/all # Edit browbeat public/private subnet/start/end/gw settings +[stack@ospd ansible]$ vi install/group_vars/all # Edit browbeat network settings [stack@ospd ansible]$ ansible-playbook -i hosts install/browbeat_network.yml [stack@ospd ansible]$ ansible-playbook -i hosts install/shaker_build.yml ``` diff --git a/ansible/README.cfme-allinone.md b/ansible/README.cfme-allinone.md index 4bbaed6d9..9a26d5792 100644 --- a/ansible/README.cfme-allinone.md +++ b/ansible/README.cfme-allinone.md @@ -3,43 +3,50 @@ 1. Deploy ManageIQ/CFME appliance 2. Add additional disk to host Graphite's whisper database, mount disk at /var/lib/carbon 3. Clone browbeat -``` -[root@manageiq ~]# git clone https://github.com/jtaleric/browbeat.git -[root@manageiq ~]# cd browbeat/ansible -``` + + ``` + [root@manageiq ~]# git clone https://github.com/jtaleric/browbeat.git + [root@manageiq ~]# cd browbeat/ansible + ``` 4. Create ansible inventory file -``` -[graphite] -localhost ansible_connection=local -[grafana] -localhost ansible_connection=local + ``` + [graphite] + localhost ansible_connection=local -[cfme-all-in-one] -localhost ansible_connection=local -``` + [grafana] + localhost ansible_connection=local + + [cfme-all-in-one] + localhost ansible_connection=local + ``` 5. Install ansible -``` -[root@manageiq ansible]# easy_install pip -[root@manageiq ansible]# yum install -y python-devel gcc-c++ -[root@manageiq ansible]# pip install ansible -``` + + ``` + [root@manageiq ansible]# easy_install pip + [root@manageiq ansible]# yum install -y python-devel gcc-c++ + [root@manageiq ansible]# pip install ansible + ``` 6. Setup installation variables at install/group_vars/all by modifying following variables -``` -graphite_host: localhost -graphite_port: 9000 -graphite_prefix: manageiq -grafana_host: localhost -grafana_port: 9001 -``` + + ``` + graphite_host: localhost + graphite_port: 9000 + graphite_prefix: manageiq + grafana_host: localhost + grafana_port: 9001 + ``` 7. Run playbooks for collectd/graphite/grafana install -``` -[root@manageiq ansible]# ansible-playbook -i hosts install/graphite.yml -[root@manageiq ansible]# ansible-playbook -i hosts install/grafana.yml -[root@manageiq ansible]# ansible-playbook -i hosts install/collectd-generic.yml --tags="cfme-all-in-one" -``` + + ``` + [root@manageiq ansible]# ansible-playbook -i hosts install/graphite.yml + [root@manageiq ansible]# ansible-playbook -i hosts install/grafana.yml + [root@manageiq ansible]# ansible-playbook -i hosts install/collectd-generic.yml --tags="cfme-all-in-one" + ``` 8. Upload dashboards via ansible -``` -[root@manageiq ansible]# ansible-playbook -i hosts install/dashboards-generic.yml -``` -9. Enjoy your now performance monitored CFME/ManageIQ appliance, view grafana dashboards at http://:9001/ + + ``` + [root@manageiq ansible]# ansible-playbook -i hosts install/dashboards-generic.yml + ``` + +9. Enjoy your now performance monitored CFME/ManageIQ appliance, view grafana dashboards at http://(manageiq-ip-address):9001/ diff --git a/ansible/README.collectd-generic.md b/ansible/README.collectd-generic.md index 77cc8d01a..6e5bb9aba 100644 --- a/ansible/README.collectd-generic.md +++ b/ansible/README.collectd-generic.md @@ -4,7 +4,10 @@ Collectd configurations are built for these types of machines: * baremetal * guest * cfme +* cfme-vmdb +* cfme-all-in-one * graphite/grafana +* ose * satellite6 To install collectd agent and configure collectd to send metrics to your Graphite server, simply add the host to your ansible inventory file under the correct group. @@ -35,6 +38,12 @@ x.x.x.x # An ip adddress or fqdn or specificed vm in ~/.ssh/config [cfme] x.x.x.x # An ip address of a Red Hat Cloud Forms appliance or ManageIQ appliance +[cfme-vmdb] +x.x.x.x # An ip address of a Red Hat Cloud Forms appliance with vmdb + +[cfme-all-in-one] +x.x.x.x # An ip address of a Red Hat Cloud Forms appliance or ManageIQ appliance with Graphite and Grafana + [graphite] x.x.x.x # An ip address of a Graphite/Grafana Server @@ -45,7 +54,7 @@ x.x.x.x # An ip address of a Red Hat Openshift Enterprise Node x.x.x.x # An ip address of a Red Hat Satellite 6 Server ``` -Example run the collectd-generic playbook on the above specified cfme machine: +Example running the collectd-generic playbook on the above specified cfme machine: ``` # ansible-playbook -i hosts install/collectd-generic.yml --tags "cfme" ``` diff --git a/ansible/README.md b/ansible/README.md index f42d9427d..188c81fea 100644 --- a/ansible/README.md +++ b/ansible/README.md @@ -1,12 +1,12 @@ Table of Contents ================= -- [Ansible for Browbeat](#) - - [To use](#) - - [Ansible Installers](#) - - [Performance Check](#) - - [Performance Tune](#) - - [Adjust your overcloud](#) +- [Ansible for Browbeat](#ansible-for-browbeat) + - [Getting Started](#getting-started) + - [Ansible Installers](#ansible-installers) + - [Performance Check](#performance-check) + - [Performance Tune](#performance-tune) + - [Adjust your overcloud](#adjust-your-overcloud) # Ansible for Browbeat @@ -23,7 +23,7 @@ Playbooks for: * Adjust nova greenlet_pool_size / max_overflow -## To use +## Getting Started Install your public key into stack's authorized_keys ``` @@ -47,8 +47,7 @@ Image upload requires Ansible 2.0 ``` ##### Install Collectd Agent (Requires a Graphite Server) -Prior to installing the agent, please review the install/group_vars/all to ensure the -correct parameters are passed +Prior to installing the agent, please review install/group_vars/all file to ensure the correct parameters are passed. ``` # ansible-playbook -i hosts install/collectd-openstack.yml ``` @@ -66,7 +65,7 @@ Requires Ansible 2.0 ``` ##### Install grafana service -Default user is admin/admin and the graphite data source will need to be defined. +Prior to installing grafana, please review install/group_vars/all file and your ansible inventory file ``` # ansible-playbook -i hosts install/grafana.yml ``` @@ -74,7 +73,7 @@ Default user is admin/admin and the graphite data source will need to be defined ##### Install Grafana Dashboards (Requires a Grafana Server) Review install/group_vars/all before deploying the grafana dashboards ``` -# ansible-playbook -i hosts install/dashboards.yml +# ansible-playbook -i hosts install/dashboards-openstack.yml ``` ## Performance Check @@ -97,7 +96,7 @@ To modify the number of workers each service is running: ``` # ansible-playbook -i hosts browbeat/adjustment-workers.yml -e "workers=8" ``` -Nova and Keystone will be running 8 workers per service. +Openstack services will be running 8 workers per service. To modify number of workers each service is running and ensure Keystone is deployed in eventlet: ``` @@ -111,10 +110,10 @@ To run Keystone in httpd, change keystone_deployment to httpd: To switch to fernet tokens: ``` -# ansible-playbook -i hosts browbeat/keystone_token_type.yml -e "token_provider=fernet" +# ansible-playbook -i hosts browbeat/adjustment-keystone-token.yml -e "token_provider=fernet" ``` To switch to UUID tokens: ``` -# ansible-playbook -i hosts browbeat/keystone_token_type.yml -e "token_provider=uuid" +# ansible-playbook -i hosts browbeat/adjustment-keystone-token.yml -e "token_provider=uuid" ```