[DEFAULT] debug = {{ ironic_logging_debug }} log_dir = /var/log/kolla/ironic admin_user = {{ openstack_auth.username }} admin_password = {{ keystone_admin_password }} enabled_drivers = pxe_ipmitool transport_url = rabbit://{% for host in groups['rabbitmq'] %}{{ rabbitmq_user }}:{{ rabbitmq_password }}@{% if orchestration_engine == 'KUBERNETES' %}rabbitmq{% else %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}{% endif %}:{{ rabbitmq_port }}{% if not loop.last %},{% endif %}{% endfor %} {% if service_name == 'ironic-api' %} [api] {% if orchestration_engine != 'KUBERNETES' %} host_ip = {{ hostvars[inventory_hostname]['ansible_' + api_interface]['ipv4']['address'] }} {% else %} host_ip = 0.0.0.0 {% endif %} api_workers = {{ openstack_service_workers }} {% endif %} {% if service_name == 'ironic-conductor' %} [conductor] {% if orchestration_engine != 'KUBERNETES' %} api_url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ ironic_api_port }} {% else %} api_url = {{ internal_protocol }}://ironic-api:{{ ironic_api_port }} {% endif %} automated_clean=false {% endif %} [database] connection = mysql+pymysql://{{ ironic_database_user }}:{{ ironic_database_password }}@{{ ironic_database_address }}/{{ ironic_database_name }} max_retries = -1 [keystone_authtoken] {% if orchestration_engine == 'KUBERNETES' %} auth_uri = {{ keystone_internal_url }} auth_url = {{ keystone_admin_url }} {% else %} auth_uri = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }} auth_url = {{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_admin_port }} {% endif %} auth_type = password project_domain_id = default user_domain_id = default project_name = service username = {{ ironic_keystone_user }} password = {{ ironic_keystone_password }} memcache_security_strategy = ENCRYPT memcache_secret_key = {{ memcache_secret_key }} {% if orchestration_engine == 'KUBERNETES' %} memcache_servers = {{ memcached_servers }} {% else %} memcached_servers = {% for host in groups['memcached'] %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}:{{ memcached_port }}{% if not loop.last %},{% endif %}{% endfor %} {%- endif %} [glance] glance_host = {% for host in groups['glance-api'] %}{{ internal_protocol }}://{% if orchestration_engine == 'KUBERNETES' %}glance-api{% else %}{{ hostvars[host]['ansible_' + hostvars[host]['api_interface']]['ipv4']['address'] }}{% endif %}:{{ glance_api_port }}{% if not loop.last %},{% endif %}{% endfor %} [neutron] {% if orchestration_engine == 'KUBERNETES' %} url = {{ internal_protocol }}://neutron-server:{{ neutron_server_port }} {% else %} url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ neutron_server_port }} {% endif %} cleaning_network = {{ ironic_cleaning_network }} [inspector] enabled = true [agent] deploy_logs_local_path = /var/log/kolla/ironic deploy_logs_storage_backend = local deploy_logs_collect = always