[oslo] Problem when use library "oslo.messaging" for HA Openstack
Dear all, I have a problem when use 'notification listener' oslo-message for HA Openstack. It raise 'oslo_messaging.exceptions.MessageDeliveryFailure: Unable to connect to AMQP server on 172.16.4.125:5672 after inf tries: Exchange.declare: (406) PRECONDITION_FAILED - inequivalent arg 'durable' for exchange 'nova' in vhost '/': received 'false' but current is 'true''. How can i fix this?. I think settings default in my program set 'durable' is False so it can't listen RabbitMQ Openstack? This is my nova.conf
And section [oslo_messaging_rabbit] [oslo_messaging_rabbit]
rabbit_ha_queues = true rabbit_retry_interval = 1 rabbit_retry_backoff = 2 amqp_durable_queues= true
*Nguyễn Bá Thành* *Mobile*: 0128 748 0391 *Email*: bathanhtlu@gmail.com
On 12/27/18 8:22 PM, Thành Nguyễn Bá wrote:
Dear all,
I have a problem when use 'notification listener' oslo-message for HA Openstack.
It raise 'oslo_messaging.exceptions.MessageDeliveryFailure: Unable to connect to AMQP server on 172.16.4.125:5672 <http://172.16.4.125:5672/> after inf tries: Exchange.declare: (406) PRECONDITION_FAILED - inequivalent arg 'durable' for exchange 'nova' in vhost '/': received 'false' but current is 'true''.
How can i fix this?. I think settings default in my program set 'durable' is False so it can't listen RabbitMQ Openstack?
It probably depends on which rabbit client library you're using to listen for notifications. Presumably there should be some way to configure it to set durable to True. I guess the other option is to disable durable queues in the Nova config, but then you lose the contents of any queues when Rabbit gets restarted. It would be better to figure out how to make the consuming application configure durable queues instead.
This is my nova.conf
http://paste.openstack.org/show/738813/
And section [oslo_messaging_rabbit]
[oslo_messaging_rabbit] rabbit_ha_queues = true rabbit_retry_interval = 1 rabbit_retry_backoff = 2 amqp_durable_queues= true
*Nguyễn Bá Thành*
*Mobile*: 0128 748 0391
*Email*: bathanhtlu@gmail.com <mailto:bathanhtlu@gmail.com>
Ben Nemec <openstack@nemebean.com> writes:
On 12/27/18 8:22 PM, Thành Nguyễn Bá wrote:
Dear all,
I have a problem when use 'notification listener' oslo-message for HA Openstack.
It raise 'oslo_messaging.exceptions.MessageDeliveryFailure: Unable to connect to AMQP server on 172.16.4.125:5672 <http://172.16.4.125:5672/> after inf tries: Exchange.declare: (406) PRECONDITION_FAILED - inequivalent arg 'durable' for exchange 'nova' in vhost '/': received 'false' but current is 'true''.
How can i fix this?. I think settings default in my program set 'durable' is False so it can't listen RabbitMQ Openstack?
It probably depends on which rabbit client library you're using to listen for notifications. Presumably there should be some way to configure it to set durable to True.
IIRC, the "exchange" needs to be declared consistently among all listeners because the first client to connect causes the exchange to be created.
I guess the other option is to disable durable queues in the Nova config, but then you lose the contents of any queues when Rabbit gets restarted. It would be better to figure out how to make the consuming application configure durable queues instead.
This is my nova.conf
http://paste.openstack.org/show/738813/
And section [oslo_messaging_rabbit]
[oslo_messaging_rabbit] rabbit_ha_queues = true rabbit_retry_interval = 1 rabbit_retry_backoff = 2 amqp_durable_queues= true
You say that is your nova.conf. Is that the same configuration file your client is using when it connects?
*Nguyễn Bá Thành*
*Mobile*: 0128 748 0391
*Email*: bathanhtlu@gmail.com <mailto:bathanhtlu@gmail.com>
-- Doug
No, it isn't. It raised when i use default settings on my client base on "olso_messaging". And when i create the config file and use "oslo_config" passed to tranport (get_notification_transport), it work :D Thank for your help. *Nguyễn Bá Thành* *Mobile*: 0128 748 0391 *Email*: bathanhtlu@gmail.com Vào Th 5, 3 thg 1, 2019 vào lúc 00:30 Doug Hellmann <doug@doughellmann.com> đã viết:
Ben Nemec <openstack@nemebean.com> writes:
On 12/27/18 8:22 PM, Thành Nguyễn Bá wrote:
Dear all,
I have a problem when use 'notification listener' oslo-message for HA Openstack.
It raise 'oslo_messaging.exceptions.MessageDeliveryFailure: Unable to connect to AMQP server on 172.16.4.125:5672 <http://172.16.4.125:5672/> after inf tries: Exchange.declare: (406) PRECONDITION_FAILED - inequivalent arg 'durable' for exchange 'nova' in vhost '/': received 'false' but current is 'true''.
How can i fix this?. I think settings default in my program set 'durable' is False so it can't listen RabbitMQ Openstack?
It probably depends on which rabbit client library you're using to listen for notifications. Presumably there should be some way to configure it to set durable to True.
IIRC, the "exchange" needs to be declared consistently among all listeners because the first client to connect causes the exchange to be created.
I guess the other option is to disable durable queues in the Nova config, but then you lose the contents of any queues when Rabbit gets restarted. It would be better to figure out how to make the consuming application configure durable queues instead.
This is my nova.conf
http://paste.openstack.org/show/738813/
And section [oslo_messaging_rabbit]
[oslo_messaging_rabbit] rabbit_ha_queues = true rabbit_retry_interval = 1 rabbit_retry_backoff = 2 amqp_durable_queues= true
You say that is your nova.conf. Is that the same configuration file your client is using when it connects?
*Nguyễn Bá Thành*
*Mobile*: 0128 748 0391
*Email*: bathanhtlu@gmail.com <mailto:bathanhtlu@gmail.com>
-- Doug
Thành Nguyễn Bá <bathanhtlu@gmail.com> writes:
No, it isn't. It raised when i use default settings on my client base on "olso_messaging". And when i create the config file and use "oslo_config" passed to tranport (get_notification_transport), it work :D
Thank for your help.
I'm glad to hear that it is working! -- Doug
participants (3)
-
Ben Nemec
-
Doug Hellmann
-
Thành Nguyễn Bá