Add support for Ceilometer custom polling.yaml
By default, Ceilometer uses polling.yaml as cfg_file [1][2] that defines the limit default numbers of metrics polled. Users may want to define their own polled metrics. [1] https://github.com/openstack/ceilometer/blob/master/ceilometer/polling/manager.py#L54 [2] https://github.com/openstack/ceilometer/blob/master/etc/ceilometer/polling.yaml Change-Id: Iadd627ca3c767453e71c8a0c2044f00f30055f16
This commit is contained in:
parent
5155cd1f93
commit
d2f4055ce0
@ -7,6 +7,7 @@
|
|||||||
ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
|
polling_overwriting: "{{ ceilometer_polling_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
ceilometer_notification_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_notification_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
panko_conf: "{{ panko_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
panko_conf: "{{ panko_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
kolla_docker:
|
kolla_docker:
|
||||||
@ -35,6 +36,7 @@
|
|||||||
ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
|
polling_overwriting: "{{ ceilometer_polling_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
ceilometer_central_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_central_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
kolla_docker:
|
kolla_docker:
|
||||||
action: "recreate_or_restart_container"
|
action: "recreate_or_restart_container"
|
||||||
@ -60,6 +62,7 @@
|
|||||||
ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_conf: "{{ ceilometer_confs.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_pipeline: "{{ ceilometer_pipelines.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
policy_overwriting: "{{ ceilometer_policy_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
|
polling_overwriting: "{{ ceilometer_polling_overwriting.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
ceilometer_compute_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
ceilometer_compute_container: "{{ check_ceilometer_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
|
||||||
kolla_docker:
|
kolla_docker:
|
||||||
action: "recreate_or_restart_container"
|
action: "recreate_or_restart_container"
|
||||||
|
@ -12,6 +12,32 @@
|
|||||||
- item.value.enabled | bool
|
- item.value.enabled | bool
|
||||||
with_dict: "{{ ceilometer_services }}"
|
with_dict: "{{ ceilometer_services }}"
|
||||||
|
|
||||||
|
- name: Check custom polling.yaml exists
|
||||||
|
local_action: stat path="{{ node_custom_config }}/ceilometer/polling.yaml"
|
||||||
|
register: ceilometer_polling_file
|
||||||
|
|
||||||
|
- name: Copying over polling.yaml
|
||||||
|
copy:
|
||||||
|
src: "{{ node_custom_config }}/ceilometer/polling.yaml"
|
||||||
|
dest: "{{ node_config_directory }}/{{ item.key }}/polling.yaml"
|
||||||
|
force: True
|
||||||
|
mode: "0600"
|
||||||
|
become: true
|
||||||
|
register: ceilometer_polling_overwriting
|
||||||
|
when:
|
||||||
|
- ceilometer_polling_file.stat.exists
|
||||||
|
- inventory_hostname in groups[item.value.group]
|
||||||
|
- item.value.enabled | bool
|
||||||
|
with_dict: "{{ ceilometer_services }}"
|
||||||
|
notify:
|
||||||
|
- "Restart {{ item.key }} container"
|
||||||
|
|
||||||
|
- name: Set ceilometer polling file's path
|
||||||
|
set_fact:
|
||||||
|
ceilometer_polling_file_path: "{{ ceilometer_polling_file.stat.path }}"
|
||||||
|
when:
|
||||||
|
- ceilometer_polling_file.stat.exists
|
||||||
|
|
||||||
- name: Check if policies shall be overwritten
|
- name: Check if policies shall be overwritten
|
||||||
local_action: stat path="{{ item }}"
|
local_action: stat path="{{ item }}"
|
||||||
run_once: True
|
run_once: True
|
||||||
|
@ -6,7 +6,13 @@
|
|||||||
"dest": "/etc/ceilometer/ceilometer.conf",
|
"dest": "/etc/ceilometer/ceilometer.conf",
|
||||||
"owner": "ceilometer",
|
"owner": "ceilometer",
|
||||||
"perm": "0600"
|
"perm": "0600"
|
||||||
}{% if ceilometer_policy_file is defined %},
|
}{% if ceilometer_polling_file_path is defined %},
|
||||||
|
{
|
||||||
|
"source": "{{ container_config_directory }}/polling.yaml",
|
||||||
|
"dest": "/etc/ceilometer/polling.yaml",
|
||||||
|
"owner": "ceilometer",
|
||||||
|
"perm": "0600"
|
||||||
|
}{% endif %}{% if ceilometer_policy_file is defined %},
|
||||||
{
|
{
|
||||||
"source": "{{ container_config_directory }}/{{ ceilometer_policy_file }}",
|
"source": "{{ container_config_directory }}/{{ ceilometer_policy_file }}",
|
||||||
"dest": "/etc/ceilometer/{{ ceilometer_policy_file }}",
|
"dest": "/etc/ceilometer/{{ ceilometer_policy_file }}",
|
||||||
|
@ -6,7 +6,13 @@
|
|||||||
"dest": "/etc/ceilometer/ceilometer.conf",
|
"dest": "/etc/ceilometer/ceilometer.conf",
|
||||||
"owner": "ceilometer",
|
"owner": "ceilometer",
|
||||||
"perm": "0600"
|
"perm": "0600"
|
||||||
}{% if ceilometer_policy_file is defined %},
|
}{% if ceilometer_polling_file_path is defined %},
|
||||||
|
{
|
||||||
|
"source": "{{ container_config_directory }}/polling.yaml",
|
||||||
|
"dest": "/etc/ceilometer/polling.yaml",
|
||||||
|
"owner": "ceilometer",
|
||||||
|
"perm": "0600"
|
||||||
|
}{% endif %}{% if ceilometer_policy_file is defined %},
|
||||||
{
|
{
|
||||||
"source": "{{ container_config_directory }}/{{ ceilometer_policy_file }}",
|
"source": "{{ container_config_directory }}/{{ ceilometer_policy_file }}",
|
||||||
"dest": "/etc/ceilometer/{{ ceilometer_policy_file }}",
|
"dest": "/etc/ceilometer/{{ ceilometer_policy_file }}",
|
||||||
|
@ -24,7 +24,13 @@
|
|||||||
"dest": "/etc/ceilometer/pipeline.yaml",
|
"dest": "/etc/ceilometer/pipeline.yaml",
|
||||||
"owner": "ceilometer",
|
"owner": "ceilometer",
|
||||||
"perm": "0600"
|
"perm": "0600"
|
||||||
}{% if ceilometer_policy_file is defined %},
|
}{% if ceilometer_polling_file_path is defined %},
|
||||||
|
{
|
||||||
|
"source": "{{ container_config_directory }}/polling.yaml",
|
||||||
|
"dest": "/etc/ceilometer/polling.yaml",
|
||||||
|
"owner": "ceilometer",
|
||||||
|
"perm": "0600"
|
||||||
|
}{% endif %}{% if ceilometer_policy_file is defined %},
|
||||||
{
|
{
|
||||||
"source": "{{ container_config_directory }}/{{ ceilometer_policy_file }}",
|
"source": "{{ container_config_directory }}/{{ ceilometer_policy_file }}",
|
||||||
"dest": "/etc/ceilometer/{{ ceilometer_policy_file }}",
|
"dest": "/etc/ceilometer/{{ ceilometer_policy_file }}",
|
||||||
|
Loading…
Reference in New Issue
Block a user