Change some default values for Rabbit driver
It was observed that for the rabbitmq-server version 3.8.2 default
values during failover of one of the rabbit nodes cause rapid connection
recreation. In some cases it leads to the creation of broken exchanges
and hangs of OpenStack operations. Changing rabbit_retry_interval to 5,
rabbit_retry_backoff to 10 and kombu_reconnect_delay to 5.0 fix an
issue.
This change is Pike-only, Queens is implemented in oslo-templates
formula.
Related-Issue: PROD-34332
Change-Id: I2b89df10bc8bc28237081136929919ef642de9a3
diff --git a/keystone/files/pike/keystone.conf.Debian b/keystone/files/pike/keystone.conf.Debian
index c44c569..f991e9b 100644
--- a/keystone/files/pike/keystone.conf.Debian
+++ b/keystone/files/pike/keystone.conf.Debian
@@ -2023,10 +2023,15 @@
# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs
#kombu_ssl_ca_certs =
+# NOTE(pas-ha) default values of below option is problematic with RMQ 3.8,
+# see PROD-34322
+# recreating queues on a secondary broker immediately after primary broker
+# has gone down leads to these queues being non-functional.
# How long to wait before reconnecting in response to an AMQP consumer cancel
# notification. (floating point value)
# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay
#kombu_reconnect_delay = 1.0
+kombu_reconnect_delay = 5.0
# EXPERIMENTAL: Possible values are: gzip, bz2. If not set compression will not
# be used. This option may not be available in future versions. (string value)
@@ -2098,13 +2103,23 @@
# Reason: Replaced by [DEFAULT]/transport_url
#rabbit_virtual_host = /
+# NOTE(pas-ha) default values of below option is problematic with RMQ 3.8,
+# see PROD-34322
+# recreating queues on a secondary broker immediately after primary broker
+# has gone down leads to these queues being non-functional.
# How frequently to retry connecting with RabbitMQ. (integer value)
#rabbit_retry_interval = 1
+rabbit_retry_interval = 5
+# NOTE(pas-ha) default values of below option is problematic with RMQ 3.8,
+# see PROD-34322
+# recreating queues on a secondary broker immediately after primary broker
+# has gone down leads to these queues being non-functional.
# How long to backoff for between retries when connecting to RabbitMQ. (integer
# value)
# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff
#rabbit_retry_backoff = 2
+rabbit_retry_backoff = 10
# Maximum interval of RabbitMQ connection retries. Default is 30 seconds.
# (integer value)