The Monasca Agent collects metrics and in this change is deployed across the control plane. These metrics are collected into an OpenStack project. It supports configuring a small number of plugins, which can be extended in later commits. It also makes the Monasca Agent credentials available to other roles, such as the common role to allow forwarding logs to Monasca. Partially-Implements: blueprint monasca-roles Change-Id: I76b34fc5e1c76407a45fcf272268d5798b473ca2
240 lines
10 KiB
YAML
240 lines
10 KiB
YAML
---
|
|
- name: Restart monasca-api container
|
|
vars:
|
|
service_name: "monasca-api"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_api_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_api_confs.changed | bool
|
|
or monasca_api_wsgi_confs.changed | bool
|
|
or monasca_api_container.changed | bool
|
|
|
|
- name: Restart monasca-log-api container
|
|
vars:
|
|
service_name: "monasca-log-api"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_log_api_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
become: true
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_log_api_confs.changed | bool
|
|
or monasca_log_api_wsgi_confs.changed | bool
|
|
or monasca_log_api_container.changed | bool
|
|
|
|
- name: Restart monasca-log-transformer container
|
|
vars:
|
|
service_name: "monasca-log-transformer"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_log_transformer_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_log_transformer_confs.changed | bool
|
|
or monasca_log_transformer_container.changed | bool
|
|
|
|
- name: Restart monasca-log-persister container
|
|
vars:
|
|
service_name: "monasca-log-persister"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_log_persister_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_log_persister_confs.changed | bool
|
|
or monasca_log_persister_elasticsearch_template.changed | bool
|
|
or monasca_log_persister_container.changed | bool
|
|
|
|
- name: Restart monasca-log-metrics container
|
|
vars:
|
|
service_name: "monasca-log-metrics"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_log_metrics_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_log_metrics_confs.changed | bool
|
|
or monasca_log_metrics_container.changed | bool
|
|
|
|
- name: Restart monasca-thresh container
|
|
vars:
|
|
service_name: "monasca-thresh"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_thresh_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_thresh_confs.changed | bool
|
|
or monasca_thresh_storm_conf.changed | bool
|
|
or monasca_thresh_container.changed | bool
|
|
|
|
- name: Restart monasca-notification container
|
|
vars:
|
|
service_name: "monasca-notification"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_notification_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_notification_confs.changed | bool
|
|
or monasca_notification_container.changed | bool
|
|
|
|
- name: Restart monasca-persister container
|
|
vars:
|
|
service_name: "monasca-persister"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_persister_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_persister_confs.changed | bool
|
|
or monasca_persister_container.changed | bool
|
|
|
|
- name: Restart monasca-agent-collector container
|
|
vars:
|
|
service_name: "monasca-agent-collector"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_agent_collector_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
pid_mode: "{{ service.pid_mode }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_agent_collector_confs.changed | bool
|
|
or monasca_agent_collector_plugin_confs.changed | bool
|
|
or monasca_agent_collector_container.changed | bool
|
|
|
|
- name: Restart monasca-agent-forwarder container
|
|
vars:
|
|
service_name: "monasca-agent-forwarder"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_agent_forwarder_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_agent_forwarder_confs.changed | bool
|
|
or monasca_agent_forwarder_container.changed | bool
|
|
|
|
- name: Restart monasca-agent-statsd container
|
|
vars:
|
|
service_name: "monasca-agent-statsd"
|
|
service: "{{ monasca_services[service_name] }}"
|
|
config_json: "{{ monasca_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
monasca_agent_statsd_container: "{{ check_monasca_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
|
kolla_docker:
|
|
action: "recreate_or_restart_container"
|
|
common_options: "{{ docker_common_options }}"
|
|
name: "{{ service.container_name }}"
|
|
image: "{{ service.image }}"
|
|
volumes: "{{ service.volumes }}"
|
|
dimensions: "{{ service.dimensions }}"
|
|
when:
|
|
- kolla_action != "config"
|
|
- inventory_hostname in groups[service.group]
|
|
- service.enabled | bool
|
|
- config_json.changed | bool
|
|
or monasca_agent_statsd_confs.changed | bool
|
|
or monasca_agent_statsd_container.changed | bool
|