Files
openstack-ansible-os_ceilom…/templates/ceilometer.conf.j2
Dmitriy Rabotyagov 53f7e2f3d4 Add coordination support to the role
Ceilometer can leverage coordination driver.
With that we have an option to deploy and leverage zookeeper for such
deployments.

While we have already added support to some services, like
Designate and Cinder, Telemetry remained unpatched.

Related-Bug: #1629395
Change-Id: I3cf6116d0e51d885fb29f584b810959944f517bc
Signed-off-by: Dmitriy Rabotyagov <dmitriy.rabotyagov@cleura.com>
2025-11-18 15:48:46 +00:00

132 lines
7.7 KiB
Django/Jinja

#{{ ansible_managed}}
{% macro _oslomsg_url(transport, userid, password, hosts, port, vhost, use_ssl, ssl_version, ca_file) %}
{% set _url = [] %}
{% for host in hosts %}
{% set _ = _url.append(userid + ':' + password + '@' + hostvars[host]['ansible_host'] + ':' + port) %}
{% endfor %}
{% if use_ssl | bool %}
{{ transport }}://{{ _url | join(',') }}/{{ vhost }}?ssl=1&ssl_version={{ ssl_version }}&ssl_ca_file={{ ca_file }}
{% else %}
{{ transport }}://{{ _url | join(',') }}/{{ vhost }}?ssl=0
{% endif %}
{% endmacro %}
[DEFAULT]
use_journal = True
# Disable stderr logging
use_stderr = False
debug = {{ debug }}
# RPC
transport_url = {{ _oslomsg_url(ceilometer_oslomsg_rpc_transport, ceilometer_oslomsg_rpc_userid, ceilometer_oslomsg_rpc_password, groups[ceilometer_oslomsg_rpc_host_group], ceilometer_oslomsg_rpc_port, _ceilometer_oslomsg_rpc_vhost_conf, ceilometer_oslomsg_rpc_use_ssl, ceilometer_oslomsg_rpc_ssl_version, ceilometer_oslomsg_rpc_ssl_ca_file) }}
polling_namespaces = {{ _ceilometer_polling_namespaces | join(',') }}
{% if ceilometer_oslomsg_rpc_transport == 'rabbit' %}
[oslo_messaging_rabbit]
ssl = {{ ceilometer_oslomsg_rpc_use_ssl }}
rabbit_quorum_queue = {{ ceilometer_oslomsg_rabbit_quorum_queues }}
rabbit_transient_quorum_queue = {{ ceilometer_oslomsg_rabbit_transient_quorum_queues }}
rabbit_qos_prefetch_count = {{ ceilometer_oslomsg_rabbit_qos_prefetch_count }}
use_queue_manager = {{ ceilometer_oslomsg_rabbit_queue_manager }}
{% if ceilometer_oslomsg_rabbit_queue_manager %}
hostname = {{ [ansible_facts['hostname'], ceilometer_service_user_name] | join('-') }}
{% endif %}
rabbit_stream_fanout = {{ ceilometer_oslomsg_rabbit_stream_fanout }}
rabbit_quorum_delivery_limit = {{ ceilometer_oslomsg_rabbit_quorum_delivery_limit }}
rabbit_quorum_max_memory_bytes = {{ ceilometer_oslomsg_rabbit_quorum_max_memory_bytes }}
{% endif %}
{% if 'ceilometer_agent_notification' in group_names %}
[notification]
workers = {{ ceilometer_notification_workers }}
# Notification queues to listen on
# Ceilometer needs to connect to it's own notification vhost
messaging_urls = {{ _oslomsg_url(ceilometer_oslomsg_notify_transport, ceilometer_oslomsg_notify_userid, ceilometer_oslomsg_notify_password, groups[ceilometer_oslomsg_notify_host_group], ceilometer_oslomsg_notify_port, _ceilometer_oslomsg_notify_vhost_conf, ceilometer_oslomsg_notify_use_ssl, ceilometer_oslomsg_notify_ssl_version, ceilometer_oslomsg_notify_ssl_ca_file) }}
{% if cinder_ceilometer_enabled %}
# Cinder notifications
messaging_urls = {{ _oslomsg_url(cinder_oslomsg_notify_transport, cinder_oslomsg_notify_userid, cinder_oslomsg_notify_password, groups[cinder_oslomsg_notify_host_group], cinder_oslomsg_notify_port, cinder_oslomsg_notify_vhost, cinder_oslomsg_notify_use_ssl, cinder_oslomsg_notify_ssl_version, cinder_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if designate_ceilometer_enabled %}
# Designate notifications
messaging_urls = {{ _oslomsg_url(designate_oslomsg_notify_transport, designate_oslomsg_notify_userid, designate_oslomsg_notify_password, groups[designate_oslomsg_notify_host_group], designate_oslomsg_notify_port, designate_oslomsg_notify_vhost, designate_oslomsg_notify_use_ssl, designate_oslomsg_notify_ssl_version, designate_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if glance_ceilometer_enabled %}
# Glance notifications
messaging_urls = {{ _oslomsg_url(glance_oslomsg_notify_transport, glance_oslomsg_notify_userid, glance_oslomsg_notify_password, groups[glance_oslomsg_notify_host_group], glance_oslomsg_notify_port, glance_oslomsg_notify_vhost, glance_oslomsg_notify_use_ssl, glance_oslomsg_notify_ssl_version, glance_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if heat_ceilometer_enabled %}
# Heat notifications
messaging_urls = {{ _oslomsg_url(heat_oslomsg_notify_transport, heat_oslomsg_notify_userid, heat_oslomsg_notify_password, groups[heat_oslomsg_notify_host_group], heat_oslomsg_notify_port, heat_oslomsg_notify_vhost, heat_oslomsg_notify_use_ssl, heat_oslomsg_notify_ssl_version, heat_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if keystone_ceilometer_enabled %}
# Keystone notifications
messaging_urls = {{ _oslomsg_url(keystone_oslomsg_notify_transport, keystone_oslomsg_notify_userid, keystone_oslomsg_notify_password, groups[keystone_oslomsg_notify_host_group], keystone_oslomsg_notify_port, keystone_oslomsg_notify_vhost, keystone_oslomsg_notify_use_ssl, keystone_oslomsg_notify_ssl_version, keystone_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if neutron_ceilometer_enabled %}
# Neutron notifications
messaging_urls = {{ _oslomsg_url(neutron_oslomsg_notify_transport, neutron_oslomsg_notify_userid, neutron_oslomsg_notify_password, groups[neutron_oslomsg_notify_host_group], neutron_oslomsg_notify_port, neutron_oslomsg_notify_vhost, neutron_oslomsg_notify_use_ssl, neutron_oslomsg_notify_ssl_version, neutron_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if nova_ceilometer_enabled %}
# Nova notifications
messaging_urls = {{ _oslomsg_url(nova_oslomsg_notify_transport, nova_oslomsg_notify_userid, nova_oslomsg_notify_password, groups[nova_oslomsg_notify_host_group], nova_oslomsg_notify_port, nova_oslomsg_notify_vhost, nova_oslomsg_notify_use_ssl, nova_oslomsg_notify_ssl_version, nova_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if octavia_ceilometer_enabled %}
# Octavia notifications
messaging_urls = {{ _oslomsg_url(octavia_oslomsg_notify_transport, octavia_oslomsg_notify_userid, octavia_oslomsg_notify_password, groups[octavia_oslomsg_notify_host_group], octavia_oslomsg_notify_port, octavia_oslomsg_notify_vhost, octavia_oslomsg_notify_use_ssl, octavia_oslomsg_notify_ssl_version, octavia_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if swift_ceilometer_enabled %}
# Ceilometer notifications
messaging_urls = {{ _oslomsg_url(swift_oslomsg_notify_transport, swift_oslomsg_notify_userid, swift_oslomsg_notify_password, groups[swift_oslomsg_notify_host_group], swift_oslomsg_notify_port, swift_oslomsg_notify_vhost, swift_oslomsg_notify_use_ssl, swift_oslomsg_notify_ssl_version, swift_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if trove_ceilometer_enabled %}
# Trove notifications
messaging_urls = {{ _oslomsg_url(trove_oslomsg_notify_transport, trove_oslomsg_notify_userid, trove_oslomsg_notify_password, groups[trove_oslomsg_notify_host_group], trove_oslomsg_notify_port, trove_oslomsg_notify_vhost, trove_oslomsg_notify_use_ssl, trove_oslomsg_notify_ssl_version, trove_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% if magnum_ceilometer_enabled %}
# Magnum notifications
messaging_urls = {{ _oslomsg_url(magnum_oslomsg_notify_transport, magnum_oslomsg_notify_userid, magnum_oslomsg_notify_password, groups[magnum_oslomsg_notify_host_group], magnum_oslomsg_notify_port, magnum_oslomsg_notify_vhost, magnum_oslomsg_notify_use_ssl, magnum_oslomsg_notify_ssl_version, magnum_oslomsg_notify_ssl_ca_file) }}
{% endif %}
{% endif %}
{% if ceilometer_coordination_enable %}
[coordination]
backend_url = {{ ceilometer_coordination_url }}
{% endif %}
[publisher]
telemetry_secret = {{ ceilometer_telemetry_secret }}
[service_credentials]
insecure = {{ keystone_service_internaluri_insecure | bool }}
auth_url = {{ keystone_service_adminurl }}
auth_type = {{ ceilometer_keystone_auth_plugin }}
project_domain_id = {{ ceilometer_service_project_domain_id }}
user_domain_id = {{ ceilometer_service_user_domain_id }}
project_name = {{ ceilometer_service_project_name }}
username = {{ ceilometer_service_user_name }}
password = {{ ceilometer_service_password }}
region_name = {{ ceilometer_service_region }}
interface = {{ ceilometer_service_interface }}
# Cache
[cache]
enabled = true
backend = {{ ceilometer_cache_backend }}
{% if ceilometer_cache_backend in ceilometer_cache_backend_map['dogpile'] %}
memcache_servers = {{ ceilometer_cache_servers }}
{% endif %}