170 lines
5.4 KiB
Plaintext
170 lines
5.4 KiB
Plaintext
# bobcat
|
|
[DEFAULT]
|
|
debug = {{ options.debug }}
|
|
|
|
{% include "parts/section-transport-url" %}
|
|
|
|
{% if ovsdb_subordinate and ovsdb_subordinate.ovn_configured and ovsdb_cms -%}
|
|
[api_settings]
|
|
{% if options.enable_amphora -%}
|
|
enabled_provider_drivers = amphora:The Octavia Amphora driver,ovn:Octavia OVN driver
|
|
{% else -%}
|
|
enabled_provider_drivers = ovn:Octavia OVN driver
|
|
{% endif -%}
|
|
|
|
[ovn]
|
|
ovn_nb_connection={{ ','.join(ovsdb_cms.db_nb_connection_strs) }}
|
|
ovn_nb_private_key=/etc/octavia/ovn_private_key.pem
|
|
ovn_nb_certificate=/etc/octavia/ovn_certificate.pem
|
|
ovn_nb_ca_cert=/etc/octavia/ovn_ca_cert.pem
|
|
|
|
ovn_sb_connection={{ ','.join(ovsdb_cms.db_sb_connection_strs) }}
|
|
ovn_sb_private_key=/etc/octavia/ovn_private_key.pem
|
|
ovn_sb_certificate=/etc/octavia/ovn_certificate.pem
|
|
ovn_sb_ca_cert=/etc/octavia/ovn_ca_cert.pem
|
|
|
|
[driver_agent]
|
|
enabled_provider_agents = ovn
|
|
{% endif %}
|
|
|
|
[health_manager]
|
|
{% if options.health_manager_bind_ip -%}
|
|
bind_ip = {{ options.health_manager_bind_ip }}
|
|
{% endif -%}
|
|
{% if options.controller_ip_port_list -%}
|
|
controller_ip_port_list = {{ options.controller_ip_port_list }}
|
|
{% endif -%}
|
|
heartbeat_key = {{ options.heartbeat_key }}
|
|
health_update_threads = {{ options.workers }}
|
|
stats_update_threads = {{ options.workers }}
|
|
|
|
[house_keeping]
|
|
{% if options.spare_amphora_pool_size -%}
|
|
spare_amphora_pool_size = {{ options.spare_amphora_pool_size }}
|
|
{% endif %}
|
|
|
|
[controller_worker]
|
|
{% if options.amp_ssh_key_name %}
|
|
amp_ssh_key_name = {{ options.amp_ssh_key_name }}
|
|
{% endif -%}
|
|
{% if options.amp_image_owner_id -%}
|
|
amp_image_owner_id = {{ options.amp_image_owner_id }}
|
|
{% endif -%}
|
|
{% if options.amp_secgroup_list -%}
|
|
amp_secgroup_list = {{ options.amp_secgroup_list }}
|
|
{% endif -%}
|
|
{% if options.amp_flavor_id -%}
|
|
amp_flavor_id = {{ options.amp_flavor_id }}
|
|
{% endif -%}
|
|
{% if options.amp_boot_network_list -%}
|
|
amp_boot_network_list = {{ options.amp_boot_network_list }}
|
|
{% endif -%}
|
|
{% if options.amp_image_tag -%}
|
|
amp_image_tag = {{ options.amp_image_tag }}
|
|
{% endif -%}
|
|
amp_active_retries = 180
|
|
# This certificate is installed on the ``Amphorae`` and used for validating
|
|
# the authenticity of the ``Octavia`` controller.
|
|
client_ca = {{ options.controller_cacert }}
|
|
network_driver = allowed_address_pairs_driver
|
|
compute_driver = compute_nova_driver
|
|
amphora_driver = amphora_haproxy_rest_driver
|
|
loadbalancer_topology = {{ options.loadbalancer_topology }}
|
|
|
|
[certificates]
|
|
# NOTE(fnordahl) certificates for authentication between Octavia controllers
|
|
# and its Amphorae instances are issued locally on the Octavia controller.
|
|
#
|
|
# At the time of this writing this is the only supported alternative upstream
|
|
# after the retirement of the Anchor project [0].
|
|
#
|
|
# Note that these certificates are not used for any load balancer payload data
|
|
#
|
|
# 0: https://review.opendev.org/#/c/597022/
|
|
cert_generator = local_cert_generator
|
|
# This certificate is used to issue individual certificates for each
|
|
# ``Amphora`` and to validate their authenticity when they connect to the
|
|
# ``Octavia`` controller.
|
|
ca_certificate = {{ options.issuing_cacert }}
|
|
ca_private_key = {{ options.issuing_ca_private_key }}
|
|
ca_private_key_passphrase = {{ options.issuing_ca_private_key_passphrase }}
|
|
|
|
cert_manager = barbican_cert_manager
|
|
{% if options.region -%}
|
|
region_name = {{ options.region }}
|
|
{% endif -%}
|
|
{% if options.use_internal_endpoints -%}
|
|
endpoint_type = internalURL
|
|
{%- endif %}
|
|
|
|
|
|
[haproxy_amphora]
|
|
# This certificate is used by the ``Octavia`` controller to validate the
|
|
# authenticity of the ``Amphorae`` connecting to it.
|
|
server_ca = {{ options.issuing_cacert }}
|
|
# This certificate is used by the ``Octavia`` controller when it takes on the
|
|
# role as a "client" connecting to the ``Amphorae``.
|
|
client_cert = {{ options.controller_cert }}
|
|
connection_max_retries = {{ options.connection_max_retries }}
|
|
connection_retry_interval = {{ options.connection_retry_interval }}
|
|
active_connection_max_retries = {{ options.active_connection_max_retries }}
|
|
active_connection_retry_interval = {{ options.active_connection_retry_interval }}
|
|
|
|
{% include "parts/section-database" %}
|
|
|
|
{% include "parts/section-keystone-authtoken" %}
|
|
{% if options.use_internal_endpoints -%}
|
|
endpoint_type = internalURL
|
|
{%- endif %}
|
|
|
|
[oslo_messaging]
|
|
topic = octavia
|
|
|
|
[nova]
|
|
{% if options.region -%}
|
|
region_name = {{ options.region }}
|
|
{% endif -%}
|
|
{% if options.use_internal_endpoints -%}
|
|
endpoint_type = internalURL
|
|
{%- endif %}
|
|
{%- if options.loadbalancer_topology == "SINGLE" or options.anti_affinity_policy == "disable" %}
|
|
enable_anti_affinity = False
|
|
{%- elif options.loadbalancer_topology == "ACTIVE_STANDBY" %}
|
|
{%- if options.anti_affinity_policy == "auto" %}
|
|
enable_anti_affinity = True
|
|
anti_affinity_policy = "soft-anti-affinity"
|
|
{%- elif options.anti_affinity_policy in ["anti-affinity", "soft-anti-affinity"] %}
|
|
enable_anti_affinity = True
|
|
anti_affinity_policy = {{ options.anti_affinity_policy }}
|
|
{%- endif %}
|
|
{%- endif %}
|
|
|
|
[cinder]
|
|
{% if options.region -%}
|
|
region_name = {{ options.region }}
|
|
{% endif -%}
|
|
{% if options.use_internal_endpoints -%}
|
|
endpoint_type = internalURL
|
|
{%- endif %}
|
|
|
|
[glance]
|
|
{% if options.region -%}
|
|
region_name = {{ options.region }}
|
|
{% endif -%}
|
|
{% if options.use_internal_endpoints -%}
|
|
endpoint_type = internalURL
|
|
{%- endif %}
|
|
|
|
[neutron]
|
|
{% if options.region -%}
|
|
region_name = {{ options.region }}
|
|
{% endif -%}
|
|
{% if options.use_internal_endpoints -%}
|
|
endpoint_type = internalURL
|
|
{%- endif %}
|
|
auth_section = keystone_authtoken
|
|
|
|
{% include "parts/section-oslo-messaging-rabbit" %}
|
|
|
|
{% include "parts/section-oslo-middleware" %}
|