Files
browbeat/ansible/README.md
Kambiz Aghaiepour 12f4aca8db ansible deployment for graphite and grafana
* ensure you define [graphite] and [grafana] in your
  hosts file.

* The grafana service is lightweight and can
  live on the same host as the graphite host. However,
  it can also be separated to run on its own server if
  desired.

* Once the graphite-web services are deployed (which also sets
  up the carbon-cache service), and the grafana service is
  deployed, you will need to define the data source for your
  graphite host in the grafana instance.

* The grafana service
  runs on port 3000, and has the default user/pass of admin/admin.

* username / password for graphite is set in install/group_vars/all

* firewalld is disabled on the grafana and graphite hosts
  If firewalls are needed, iptables-service is suggested but
  left us to deployment team.

* Added gen_hostfile.sh updates for the needed hosts entries, with
  comments to the user on what needs to be in 'hosts' file.

graphite db sets up

Change-Id: I27660b6ecbf019699c124b02b4b4fd6185547a54
2016-03-08 14:07:13 -05:00

2.8 KiB

Ansible for Browbeat

Currently we only support Ansible 1.9.4.

Playbooks for:

  • Install Browbeat
  • Install collectd
  • Install connmon
  • Install graphite service
  • Install grafana service
  • Install grafana dashboards
  • Install shaker
  • Check overcloud for performance issues
  • Tune overcloud for performance (Experimental)
  • Adjust number of workers for cinder/keystone/neutron/nova
  • Deploy keystone in eventlet/httpd
  • Adjust keystone token type to UUID/Fernet
  • Adjust neutron l3 agents
  • Adjust nova greenlet_pool_size / max_overflow

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 Collectd Agent (Requires a Graphite Server) Prior to installing the agent, please review the install/group_vars/all to ensure the correct params are passed

# ansible-playbook -i hosts install/collectd

Install Connmon

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

Install graphite service

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

Install grafana service

  • Default user is admin/admin and the graphite data source will need to be defined.
# ansible-playbook -i hosts install/grafana.yml

Install Grafana Dashboards (Requires a Grafana Server)

  • Review install/group_vars/all before deploying the grafana dashboards
# ansible-playbook -i hosts install/dashboards.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

Performance Tune:

Run the tune playbook to tune your OSPd deployed cloud for performance:

# ansible-playbook -i hosts tune/tune.yml

Adjust your overcloud:

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.

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

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

To run Keystone in httpd, change keystone_deployment to httpd:

# ansible-playbook -i hosts browbeat/adjustment-workers.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"