browbeat/ansible
Joe Talerico 8a542ef8ec Migrate browbeat.sh to Python
Learning the Ansible API for this migration. Very simple script
that will use the browbeat checks

+ Added Pbench start/stop 01/11/16
+ Moved ansible to config 01/11/16
+ Adding ansible hosts option 01/11/16
+ Connmon added (start/stop) still nothing with results 01/12/16
+ New Rally YAML format... (nova example) 01/12/16
+ Create results directory 01/12/16
+ Created lib with classes 01/13/16
+ Updated Scenarios 01/14/16
+ Updated other workloads to new format 01/15/16
+ Switched to dict get method 01/15/16
+ Removed pyc files and updated 01/15/16
+ updated genhost file 01/15/16
+ Update Ansible for connmon finished pbench work 01/15/16
+ Catch if user tries to run without Ansible or Ansible2 01/26/16
+ Minor changes 01/26/16
+ Bug fix... 01/27/16
+ (akrzos) added keystone yamls and browbeat-complete.yaml
+ Moved BrowbeatRally to Rally and broke connmon out of Tools
+ (akrzos) Implemented per Rally test scenario task args.
+ Updated Docs, removed old browbeat.sh
+ (akrzos) Cleaned up lib/Rally.py and added cinder scenarios to browbeat configs.
+ Fix Connmon install issue
+ (akrzos) Added parameters to neutron task yamls
+ (akrzos) Changed connmon to stop logging immediately after rally task completes.
Change-Id: I338c3463e25f38c2ec7667c7dfc8b5424acba8c2
2016-01-29 21:24:34 +01:00
..
browbeat Change to ansible become 2016-01-26 16:40:17 -05:00
check Neutron rootwrap daemon check 2016-01-28 14:26:15 -05:00
install Migrate browbeat.sh to Python 2016-01-29 21:24:34 +01:00
ansible.cfg Add connmon support for cinder. 2016-01-08 09:02:17 -05:00
gen_hostfile.sh Migrate browbeat.sh to Python 2016-01-29 21:24:34 +01:00
README.md Ansible 1.9.4 Support 2016-01-28 19:25:25 -05:00

Ansible for Browbeat

Currently we only support Ansible 1.9.4.

Playbooks for:

  • Install Browbeat
  • Install connmon
  • Install pbench
  • Install shaker
  • Check overcloud for performance issues
  • Adjust number of workers for nova/keystone
  • Deploy keystone in eventlet/httpd
  • Switch keystone token type to UUID/Fernet

To use

Install your public key into stack's authorized_keys

# ssh-copy-id stack@<undercloud-ip>

Then run gen_hosts.sh script to generate your overcloud's hosts file for ansible and generate a "jumpbox" ssh config:

# ./gen_hostfile.sh <undercloud-ip> ~/.ssh/config

**Review the hosts file the script generates.

Ansible Installers:

Install Browbeat

# ansible-playbook -i hosts install/browbeat.yml

Install Connmon

# ansible-playbook -i hosts install/connmon.yml

Install Pbench (Requires some knowledge of setting up pbench to have this functionality work completely)

# ansible-playbook -i hosts install/pbench.yml

Install Shaker

# ansible-playbook -i hosts install/shaker.yml

Performance Checks:

Run the check playbook to identify common performance issues:

# ansible-playbook -i hosts check/site.yml

Adjust your overcloud:

To modify the number of workers each service is running:

# ansible-playbook -i hosts browbeat/adjustment.yml -e "workers=8"

Nova and Keystone will be running 8 workers per service.

To modify number of workers each service is running and ensure Keystone is deployed in eventlet:

# ansible-playbook -i hosts browbeat/adjustment.yml -e "workers=8 keystone_deployment=eventlet"

To run Keystone in httpd, change keystone_deployment to httpd:

# ansible-playbook -i hosts browbeat/adjustment.yml -e "workers=8 keystone_deployment=httpd"

To switch to fernet tokens:

# ansible-playbook -i hosts browbeat/keystone_token_type.yml -e "token_provider=fernet"

To switch to UUID tokens:

# ansible-playbook -i hosts browbeat/keystone_token_type.yml -e "token_provider=uuid"