Skip to content
Snippets Groups Projects
Commit 867fe4c6 authored by Zuul's avatar Zuul Committed by Gerrit Code Review
Browse files

Merge "Improve registration of Monasca InfluxDB database"

parents 1afe0276 2af1d1d9
No related branches found
No related tags found
No related merge requests found
......@@ -114,6 +114,10 @@ monasca_database_address: "{{ database_address }}:{{ database_port }}"
monasca_influxdb_name: "monasca"
monasca_influxdb_address: "{{ kolla_internal_fqdn }}"
monasca_influxdb_http_port: "{{ influxdb_http_port }}"
monasca_influxdb_retention_policy:
name: 'monasca_metrics'
duration: "1w"
replication_count: 1
####################
# Monasca
......
......@@ -36,15 +36,23 @@
- include_tasks: bootstrap_service.yml
when: database.changed or use_preconfigured_databases | bool
# NOTE(dszumski): Monasca is not yet compatible with InfluxDB > 1.1.10, which means
# that the official Ansible modules for managing InfluxDB don't work [1].
# We therefore fall back to manual commands to register the database
# and set a default retention policy.
# [1] https://github.com/influxdata/influxdb-python#influxdb-pre-v110-users
- name: List influxdb databases
command: "docker exec influxdb influx -host {{ monasca_influxdb_address }} -port {{ monasca_influxdb_http_port }} -execute 'show databases'"
run_once: True
delegate_to: "{{ groups['influxdb'][0] }}"
register: monasca_influxdb_database
changed_when: False
- name: Creating monasca influxdb database
kolla_toolbox:
module_name: influxdb_database
module_args:
hostname: "{{ monasca_influxdb_address }}"
port: "{{ monasca_influxdb_http_port }}"
database_name: "{{ monasca_influxdb_name }}"
command: "docker exec influxdb influx -host {{ monasca_influxdb_address }} -port {{ monasca_influxdb_http_port }} -execute 'CREATE DATABASE {{ monasca_influxdb_name }} WITH DURATION {{ monasca_influxdb_retention_policy.duration }} REPLICATION {{ monasca_influxdb_retention_policy.replication_count }} NAME {{ monasca_influxdb_retention_policy.name }}'"
run_once: True
delegate_to: "{{ groups['monasca-api'][0] }}"
delegate_to: "{{ groups['influxdb'][0] }}"
when: monasca_influxdb_name not in monasca_influxdb_database.stdout_lines
# NOTE(dszumski): The Monasca APIs write logs and messages to Kafka. Since
# Kafka has automatic topic generation enabled by default we don't need to
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment