Designate supports running all of its components services in “active-active” HA modes.
Some services require some extra setup to ensure that they can work in active-active, and the services are listed below.
AMQP
To run multiple designate-api services, you should run the services behind a load balancer.
When behind the load balancer, you may need to set the following:
[service:api]
api_base_uri = http://<load balancer URI>/
enable_host_header = True
Or the following:
[oslo_middleware]
enable_proxy_headers_parsing = true
And then the load balancer to set appropriate headers (e.g. enable mod_proxy in apache.)
AMQP
Database
You can run as many designate-central services as needed, as long as they all have access to the AMQP server(s), work will be distributed across all of them.
AMQP
Database
DNS Servers
You can run as many designate-mdns services as needed, as long as they all have access to the AMQP server(s), work will be distributed across all of them.
AMQP
DNS Servers
You can run as many designate-worker services as needed, as long as they all have access to the AMQP server(s), work will be distributed across all of them.
AMQP
DLM
You can run as many designate-producer services as needed, as long as they all have access to the AMQP server(s), and a distributed lock manager, work will be sharded across all the services.
You will need to set a coordination backend_url. This needs to be a DLM that is supported by tooz, that supports group membership. See tooz driver list for available drivers
Warning
Failure to set a backend_url can cause unexpected consequences, and may result in some periodic tasks being ran more than once.
[coordination]
backend_url = kazoo://<zookeeper url>:<zookeeper port>
AMQP
You can run as many designate-sink services as needed, as long as they all have access to the AMQP server(s), work will be distributed across all of them.
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.