openstack-ansible-os_ceilom.../templates/ceilometer.conf.j2

107 lines
3.9 KiB
Django/Jinja

#{{ ansible_managed}}
{% set _workers = ansible_processor_vcpus|default(2) // 2 %}
{% set workers = _workers if _workers > 0 else 1 %}
[DEFAULT]
debug = {{ debug }}
auth_strategy = keystone
notification_topics = notifications
rpc_backend = rabbit
[oslo_policy]
policy_file = /etc/ceilometer/policy.json
[oslo_messaging_rabbit]
rpc_backend = rabbit
rabbit_port = {{ rabbitmq_port }}
rabbit_userid = {{ ceilometer_rabbitmq_userid }}
rabbit_password = {{ ceilometer_rabbitmq_password }}
rabbit_virtual_host = {{ ceilometer_rabbitmq_vhost }}
rabbit_hosts = {{ rabbitmq_servers }}
rabbit_use_ssl = {{ rabbitmq_use_ssl }}
[api]
workers = {{ ceilometer_api_workers | default(workers) }}
port = 8777
[collector]
workers = {{ ceilometer_collector_workers | default(workers) }}
[notification]
workers = {{ ceilometer_notification_workers | default(workers) }}
store_events = True
# Configuring the notification queue listeners
# Ceilometer needs to connect to it's own rabbitmq vhost
{% for host in groups['rabbitmq_all'] %}
messaging_urls = rabbit://{{ ceilometer_rabbitmq_userid }}:{{ ceilometer_rabbitmq_password }}@{{ hostvars[host]['ansible_ssh_host'] }}:{{ rabbitmq_port }}/{{ ceilometer_rabbitmq_vhost }}
{% endfor %}
{% if glance_ceilometer_enabled %}
# Glance
{% for host in groups['rabbitmq_all'] %}
messaging_urls = rabbit://{{ glance_rabbitmq_userid }}:{{ glance_rabbitmq_password }}@{{ hostvars[host]['ansible_ssh_host'] }}:{{ rabbitmq_port }}/{{ glance_rabbitmq_vhost }}
{% endfor %}
{% endif %}
{% if nova_ceilometer_enabled %}
# Nova
{% for host in groups['rabbitmq_all'] %}
messaging_urls = rabbit://{{ nova_rabbitmq_userid }}:{{ nova_rabbitmq_password }}@{{ hostvars[host]['ansible_ssh_host'] }}:{{ rabbitmq_port }}/{{ nova_rabbitmq_vhost }}
{% endfor %}
{% endif %}
{% if cinder_ceilometer_enabled %}
# Cinder
{% for host in groups['rabbitmq_all'] %}
messaging_urls = rabbit://{{ cinder_rabbitmq_userid }}:{{ cinder_rabbitmq_password }}@{{ hostvars[host]['ansible_ssh_host'] }}:{{ rabbitmq_port }}/{{ cinder_rabbitmq_vhost }}
{% endfor %}
{% endif %}
{% if neutron_ceilometer_enabled %}
# Neutron
{% for host in groups['rabbitmq_all'] %}
messaging_urls = rabbit://{{ neutron_rabbitmq_userid }}:{{ neutron_rabbitmq_password }}@{{ hostvars[host]['ansible_ssh_host'] }}:{{ rabbitmq_port }}/{{ neutron_rabbitmq_vhost }}
{% endfor %}
{% endif %}
{% if heat_ceilometer_enabled %}
# Heat
{% for host in groups['rabbitmq_all'] %}
messaging_urls = rabbit://{{ heat_rabbitmq_userid }}:{{ heat_rabbitmq_password }}@{{ hostvars[host]['ansible_ssh_host'] }}:{{ rabbitmq_port }}/{{ heat_rabbitmq_vhost }}
{% endfor %}
{% endif %}
# TODO: Keystone
# TODO: Swift
[database]
metering_connection = {{ ceilometer_connection_string }}
event_connection = {{ ceilometer_connection_string }}
alarm_connection = {{ aodh_connection_string }}
[keystone_authtoken]
insecure = {{ keystone_service_internaluri_insecure | bool }}
signing_dir = /var/cache/ceilometer
identity_uri = {{ keystone_service_adminuri }}
auth_uri = {{ keystone_service_internaluri }}
auth_url = {{ keystone_service_adminuri }}
auth_plugin = {{ 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 }}
memcached_servers = {{ memcached_servers }}
token_cache_time = 300
revocation_cache_time = 60
memcache_security_strategy = ENCRYPT
memcache_secret_key = {{ memcached_encryption_key }}
[publisher]
telemetry_secret = {{ ceilometer_telemetry_secret }}
[service_credentials]
#TODO: Keystone v2 API is being used until https://review.openstack.org/#/c/237537/ merges.
os_auth_url = {{ keystone_service_internaluri }}/v2.0
os_username = {{ ceilometer_service_user_name }}
os_tenant_name = {{ ceilometer_service_tenant_name }}
os_password = {{ ceilometer_service_password }}