Merge "Adjust ceilometer polling interval playbook"

This commit is contained in:
Jenkins 2016-08-03 16:11:21 +00:00 committed by Gerrit Code Review
commit 924a1ff3f0
4 changed files with 147 additions and 7 deletions

View File

@ -1,17 +1,22 @@
---
#
# Playbook to change token type from uuid to fernet and back for keystone.
# Playbook to apply changes to ceilometer.
#
# Examples:
# Examples (backend):
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "ceilometer_backend=database"
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "ceilometer_backend=gnocchi"
#
# Examples (interval):
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "ceilometer_interval=60"
# ansible-playbook -i hosts browbeat/adjustment-ceilometer.yml -e "ceilometer_interval=600"
#
- hosts: controller
remote_user: heat-admin
pre_tasks:
- name: Check for variable (ceilometer_backend)
fail: msg="ceilometer_backend not defined"
when: ceilometer_backend is undefined
roles:
- ceilometer-backend
- { role: ceilometer-backend, when: ceilometer_backend is defined }
- hosts: controller,compute
remote_user: heat-admin
roles:
- { role: ceilometer-interval, when: ceilometer_interval is defined }

View File

@ -0,0 +1,24 @@
---
#
# Ceilometer Interval handlers
#
- name: pacemaker unmanage openstack-ceilometer-central
become: true
command: pcs resource unmanage openstack-ceilometer-central
when: inventory_hostname in groups['controller']
- name: restart openstack-ceilometer-central
become: true
service: name=openstack-ceilometer-central state=restarted
when: inventory_hostname in groups['controller']
- name: pacemaker manage openstack-ceilometer-central
become: true
command: pcs resource manage openstack-ceilometer-central
when: inventory_hostname in groups['controller']
- name: restart openstack-ceilometer-compute
become: true
service: name=openstack-ceilometer-compute state=restarted
when: inventory_hostname in groups['compute']

View File

@ -0,0 +1,19 @@
---
#
# Ceilometer interval tasks for Browbeat
#
- name: Deploy pipeline.yaml files
become: true
template:
src: pipeline.yaml.j2
dest: /etc/ceilometer/pipeline.yaml
owner: root
group: ceilometer
mode: 0640
backup: true
notify:
- pacemaker unmanage openstack-ceilometer-central
- restart openstack-ceilometer-central
- pacemaker manage openstack-ceilometer-central
- restart openstack-ceilometer-compute

View File

@ -0,0 +1,92 @@
---
sources:
- name: meter_source
interval: {{ceilometer_interval}}
meters:
- "*"
sinks:
- meter_sink
- name: cpu_source
interval: {{ceilometer_interval}}
meters:
- "cpu"
sinks:
- cpu_sink
- cpu_delta_sink
- name: disk_source
interval: {{ceilometer_interval}}
meters:
- "disk.read.bytes"
- "disk.read.requests"
- "disk.write.bytes"
- "disk.write.requests"
- "disk.device.read.bytes"
- "disk.device.read.requests"
- "disk.device.write.bytes"
- "disk.device.write.requests"
sinks:
- disk_sink
- name: network_source
interval: {{ceilometer_interval}}
meters:
- "network.incoming.bytes"
- "network.incoming.packets"
- "network.outgoing.bytes"
- "network.outgoing.packets"
sinks:
- network_sink
sinks:
- name: meter_sink
transformers:
publishers:
- notifier://
- name: cpu_sink
transformers:
- name: "rate_of_change"
parameters:
target:
name: "cpu_util"
unit: "%"
type: "gauge"
scale: "100.0 / (10**9 * (resource_metadata.cpu_number or 1))"
publishers:
- notifier://
- name: cpu_delta_sink
transformers:
- name: "delta"
parameters:
target:
name: "cpu.delta"
growth_only: True
publishers:
- notifier://
- name: disk_sink
transformers:
- name: "rate_of_change"
parameters:
source:
map_from:
name: "(disk\\.device|disk)\\.(read|write)\\.(bytes|requests)"
unit: "(B|request)"
target:
map_to:
name: "\\1.\\2.\\3.rate"
unit: "\\1/s"
type: "gauge"
publishers:
- notifier://
- name: network_sink
transformers:
- name: "rate_of_change"
parameters:
source:
map_from:
name: "network\\.(incoming|outgoing)\\.(bytes|packets)"
unit: "(B|packet)"
target:
map_to:
name: "network.\\1.\\2.rate"
unit: "\\1/s"
type: "gauge"
publishers:
- notifier://