openstack-ansible-ops/cluster_metrics
Kevin Carter 19255fd1a8
implement minimal metric collection
This change implements metric collection system using influxdata
(influxdb and telegraf) with visulization using grafana. No
Dashboard automation is provided at this time however a template
dashboard can be used by importing the JSON files from the
dashboards directory.

Change-Id: I5445b01170054393a31afc2a20ffb3ea4eda1209
Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
2016-09-09 13:08:38 -05:00
..
etc implement minimal metric collection 2016-09-09 13:08:38 -05:00
files implement minimal metric collection 2016-09-09 13:08:38 -05:00
grafana-dashboards implement minimal metric collection 2016-09-09 13:08:38 -05:00
handlers implement minimal metric collection 2016-09-09 13:08:38 -05:00
templates implement minimal metric collection 2016-09-09 13:08:38 -05:00
ansible.cfg implement minimal metric collection 2016-09-09 13:08:38 -05:00
playbook-grafana.yml implement minimal metric collection 2016-09-09 13:08:38 -05:00
playbook-influx-db.yml implement minimal metric collection 2016-09-09 13:08:38 -05:00
playbook-influx-telegraf.yml implement minimal metric collection 2016-09-09 13:08:38 -05:00
playbook-metrics-lb.yml implement minimal metric collection 2016-09-09 13:08:38 -05:00
readme.rst implement minimal metric collection 2016-09-09 13:08:38 -05:00
vars.yml implement minimal metric collection 2016-09-09 13:08:38 -05:00

Gather and visualize cluster wide metrics

date

2016-09-01

tags

openstack, ansible

category

*openstack, *nix

About this repository

This set of playbooks will deploy InfluxDB, Telegraf, and Grafana for the purpose of collecting metrics on an OpenStack cluster.

Process

Clone the OPS repo

cd /opt
git clone https://github.com/openstack/openstack-ansible-ops

Copy the env.d files into place

cd openstack-ansible-ops/cluster_metrics
cp etc/env.d/cluster_metrics.yml /etc/openstack_deploy/env.d/

Create the containers

openstack-ansible /opt/openstack-ansible/playbooks/lxc-containers-create.yml -e container_group=cluster-metrics

Install InfluxDB

openstack-ansible playbook-influx-db.yml

Install Influx Telegraf

openstack-ansible playbook-influx-telegraf.yml --forks 100

Install grafana

If you're proxy'ing grafana you will need to provide the full root_path when you run the playbook add the following -e grafana_root_url='https://cloud.something:8443/grafana/'

openstack-ansible playbook-grafana.yml -e galera_root_user=root -e galera_address='127.0.0.1'

Once that last playbook is completed you will have a functioning InfluxDB, Telegraf, and Grafana metric collection system active and collecting metrics. Grafana will need some setup, however functional dash boards have been provided in the grafana-dashboards directory.