Merge "[designate] Add coordination backend for designate workers"

This commit is contained in:
Zuul 2019-10-03 13:15:51 +00:00 committed by Gerrit Code Review
commit 6bdd7dba75
5 changed files with 26 additions and 0 deletions

View File

@ -876,6 +876,8 @@ designate_backend: "bind9"
designate_ns_record: "sample.openstack.org"
designate_backend_external: "no"
designate_backend_external_bind9_nameservers: ""
# Valid options are [ '', redis, etcd ]
designate_coordination_backend: "{{ 'redis' if enable_redis|bool else 'etcd' if enable_etcd|bool else '' }}"
#######################
# Neutron options

View File

@ -98,3 +98,11 @@ enable_proxy_headers_parsing = True
[oslo_policy]
policy_file = {{ designate_policy_file }}
{% endif %}
[coordination]
{% if designate_coordination_backend == 'redis' %}
backend_url = {{ redis_connection_string }}
{% elif designate_coordination_backend == 'etcd' %}
# NOTE(noxoid): python-etcd3 does not support multiple endpoints
backend_url = etcd3://{{ hostvars[groups['etcd'][0]]['ansible_' + hostvars[groups['etcd'][0]]['api_interface']]['ipv4']['address'] }}:{{ etcd_client_port }}
{% endif %}

View File

@ -37,6 +37,13 @@ Configure Designate options in ``/etc/kolla/globals.yml``
dns_interface: "eth1"
designate_ns_record: "sample.openstack.org"
.. important::
If multiple nodes are assigned to be Designate workers then you must
enable a supported coordination backend, currently either 'redis' or
'etcd'. The backend choice can be overridden by the
``designate_coordination_backend`` variable.
The following additional variables are required depending on which backend you
intend to use:

View File

@ -464,6 +464,8 @@
# Valid options are [ bind9 ]
#designate_backend: "bind9"
#designate_ns_record: "sample.openstack.org"
# Valid options are [ '', redis, etcd ]
#designate_coordination_backend: "{{ 'redis' if enable_redis|bool else 'etcd' if enable_etcd|bool else '' }}"
########################
# Nova - Compute Options

View File

@ -0,0 +1,7 @@
---
features:
- |
Designate coordination backend can now be configured via the
designate_coordination_backend variable. Coordination is mandatory
when multiple workers are deployed as in a multinode environment.
Possible values are redis or etcd.