Configuration Options

Configuration Options

oslo.messaging uses oslo.config to define and manage configuration options to allow the deployer to control how an application uses the underlying messaging system.

DEFAULT

rpc_conn_pool_size
Type:integer
Default:30
Minimum Value:1

Size of RPC connection pool.

Deprecated Variations
Group Name
DEFAULT rpc_conn_pool_size
conn_pool_min_size
Type:integer
Default:2

The pool size limit for connections expiration policy

conn_pool_ttl
Type:integer
Default:1200

The time-to-live in sec of idle connections in the pool

executor_thread_pool_size
Type:integer
Default:64

Size of executor thread pool when executor is threading or eventlet.

Deprecated Variations
Group Name
DEFAULT rpc_thread_pool_size
rpc_response_timeout
Type:integer
Default:60

Seconds to wait for a response from a call.

transport_url
Type:string
Default:rabbit://

The network address and optional user credentials for connecting to the messaging backend, in URL format. The expected format is:

driver://[user:pass@]host:port[,[userN:passN@]hostN:portN]/virtual_host?query

Example: rabbit://rabbitmq:password@127.0.0.1:5672//

For full details on the fields in the URL see the documentation of oslo_messaging.TransportURL at https://docs.openstack.org/oslo.messaging/latest/reference/transport.html

control_exchange
Type:string
Default:openstack

The default exchange under which topics are scoped. May be overridden by an exchange name specified in the transport_url option.

oslo_messaging_amqp

container_name
Type:string
Default:<None>

Name for the AMQP container. must be globally unique. Defaults to a generated UUID

Deprecated Variations
Group Name
amqp1 container_name
idle_timeout
Type:integer
Default:0

Timeout for inactive connections (in seconds)

Deprecated Variations
Group Name
amqp1 idle_timeout
trace
Type:boolean
Default:false

Debug: dump AMQP frames to stdout

Deprecated Variations
Group Name
amqp1 trace
ssl
Type:boolean
Default:false

Attempt to connect via SSL. If no other ssl-related parameters are given, it will use the system’s CA-bundle to verify the server’s certificate.

ssl_ca_file
Type:string
Default:u''

CA certificate PEM file used to verify the server’s certificate

Deprecated Variations
Group Name
amqp1 ssl_ca_file
ssl_cert_file
Type:string
Default:u''

Self-identifying certificate PEM file for client authentication

Deprecated Variations
Group Name
amqp1 ssl_cert_file
ssl_key_file
Type:string
Default:u''

Private key PEM file used to sign ssl_cert_file certificate (optional)

Deprecated Variations
Group Name
amqp1 ssl_key_file
ssl_key_password
Type:string
Default:<None>

Password for decrypting ssl_key_file (if encrypted)

Deprecated Variations
Group Name
amqp1 ssl_key_password
ssl_verify_vhost
Type:boolean
Default:false

By default SSL checks that the name in the server’s certificate matches the hostname in the transport_url. In some configurations it may be preferable to use the virtual hostname instead, for example if the server uses the Server Name Indication TLS extension (rfc6066) to provide a certificate per virtual host. Set ssl_verify_vhost to True if the server’s SSL certificate uses the virtual host name instead of the DNS name.

sasl_mechanisms
Type:string
Default:u''

Space separated list of acceptable SASL mechanisms

Deprecated Variations
Group Name
amqp1 sasl_mechanisms
sasl_config_dir
Type:string
Default:u''

Path to directory that contains the SASL configuration

Deprecated Variations
Group Name
amqp1 sasl_config_dir
sasl_config_name
Type:string
Default:u''

Name of configuration file (without .conf suffix)

Deprecated Variations
Group Name
amqp1 sasl_config_name
sasl_default_realm
Type:string
Default:u''

SASL realm to use if no realm present in username

connection_retry_interval
Type:integer
Default:1
Minimum Value:1

Seconds to pause before attempting to re-connect.

connection_retry_backoff
Type:integer
Default:2
Minimum Value:0

Increase the connection_retry_interval by this many seconds after each unsuccessful failover attempt.

connection_retry_interval_max
Type:integer
Default:30
Minimum Value:1

Maximum limit for connection_retry_interval + connection_retry_backoff

Type:integer
Default:10
Minimum Value:1

Time to pause between re-connecting an AMQP 1.0 link that failed due to a recoverable error.

default_reply_retry
Type:integer
Default:0
Minimum Value:-1

The maximum number of attempts to re-send a reply message which failed due to a recoverable error.

default_reply_timeout
Type:integer
Default:30
Minimum Value:5

The deadline for an rpc reply message delivery.

default_send_timeout
Type:integer
Default:30
Minimum Value:5

The deadline for an rpc cast or call message delivery. Only used when caller does not provide a timeout expiry.

default_notify_timeout
Type:integer
Default:30
Minimum Value:5

The deadline for a sent notification message delivery. Only used when caller does not provide a timeout expiry.

Type:integer
Default:600
Minimum Value:1

The duration to schedule a purge of idle sender links. Detach link after expiry.

addressing_mode
Type:string
Default:dynamic

Indicates the addressing mode used by the driver. Permitted values: ‘legacy’ - use legacy non-routable addressing ‘routable’ - use routable addresses ‘dynamic’ - use legacy addresses if the message bus does not support routing otherwise use routable addressing

pseudo_vhost
Type:boolean
Default:true

Enable virtual host support for those message buses that do not natively support virtual hosting (such as qpidd). When set to true the virtual host name will be added to all message bus addresses, effectively creating a private ‘subnet’ per virtual host. Set to False if the message bus supports virtual hosting using the ‘hostname’ field in the AMQP 1.0 Open performative as the name of the virtual host.

server_request_prefix
Type:string
Default:exclusive

address prefix used when sending to a specific server

Deprecated Variations
Group Name
amqp1 server_request_prefix
broadcast_prefix
Type:string
Default:broadcast

address prefix used when broadcasting to all servers

Deprecated Variations
Group Name
amqp1 broadcast_prefix
group_request_prefix
Type:string
Default:unicast

address prefix when sending to any server in group

Deprecated Variations
Group Name
amqp1 group_request_prefix
rpc_address_prefix
Type:string
Default:openstack.org/om/rpc

Address prefix for all generated RPC addresses

notify_address_prefix
Type:string
Default:openstack.org/om/notify

Address prefix for all generated Notification addresses

multicast_address
Type:string
Default:multicast

Appended to the address prefix when sending a fanout message. Used by the message bus to identify fanout messages.

unicast_address
Type:string
Default:unicast

Appended to the address prefix when sending to a particular RPC/Notification server. Used by the message bus to identify messages sent to a single destination.

anycast_address
Type:string
Default:anycast

Appended to the address prefix when sending to a group of consumers. Used by the message bus to identify messages that should be delivered in a round-robin fashion across consumers.

default_notification_exchange
Type:string
Default:<None>

Exchange name used in notification addresses. Exchange name resolution precedence: Target.exchange if set else default_notification_exchange if set else control_exchange if set else ‘notify’

default_rpc_exchange
Type:string
Default:<None>

Exchange name used in RPC addresses. Exchange name resolution precedence: Target.exchange if set else default_rpc_exchange if set else control_exchange if set else ‘rpc’

Type:integer
Default:200
Minimum Value:1

Window size for incoming RPC Reply messages.

rpc_server_credit
Type:integer
Default:100
Minimum Value:1

Window size for incoming RPC Request messages

notify_server_credit
Type:integer
Default:100
Minimum Value:1

Window size for incoming Notification messages

pre_settled
Type:multi-valued
Default:rpc-cast
Default:rpc-reply

Send messages of this type pre-settled. Pre-settled messages will not receive acknowledgement from the peer. Note well: pre-settled messages may be silently discarded if the delivery fails. Permitted values: ‘rpc-call’ - send RPC Calls pre-settled ‘rpc-reply’- send RPC Replies pre-settled ‘rpc-cast’ - Send RPC Casts pre-settled ‘notify’ - Send Notifications pre-settled

oslo_messaging_kafka

kafka_max_fetch_bytes
Type:integer
Default:1048576

Max fetch bytes of Kafka consumer

kafka_consumer_timeout
Type:floating point
Default:1.0

Default timeout(s) for Kafka consumers

pool_size
Type:integer
Default:10

Pool Size for Kafka Consumers

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:Driver no longer uses connection pool.
conn_pool_min_size
Type:integer
Default:2

The pool size limit for connections expiration policy

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:Driver no longer uses connection pool.
conn_pool_ttl
Type:integer
Default:1200

The time-to-live in sec of idle connections in the pool

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:Driver no longer uses connection pool.
consumer_group
Type:string
Default:oslo_messaging_consumer

Group id for Kafka consumer. Consumers in one group will coordinate message consumption

producer_batch_timeout
Type:floating point
Default:0.0

Upper bound on the delay for KafkaProducer batching in seconds

producer_batch_size
Type:integer
Default:16384

Size of batch for the producer async send

compression_codec
Type:string
Default:none
Valid Values:none, gzip, snappy, lz4, zstd

The compression codec for all data generated by the producer. If not set, compression will not be used. Note that the allowed values of this depend on the kafka version

enable_auto_commit
Type:boolean
Default:false

Enable asynchronous consumer commits

max_poll_records
Type:integer
Default:500

The maximum number of records returned in a poll call

security_protocol
Type:string
Default:PLAINTEXT
Valid Values:PLAINTEXT, SASL_PLAINTEXT, SSL, SASL_SSL

Protocol used to communicate with brokers

sasl_mechanism
Type:string
Default:PLAIN

Mechanism when security protocol is SASL

ssl_cafile
Type:string
Default:u''

CA certificate PEM file used to verify the server certificate

oslo_messaging_notifications

driver
Type:multi-valued
Default:u''

The Drivers(s) to handle sending notifications. Possible values are messaging, messagingv2, routing, log, test, noop

Deprecated Variations
Group Name
DEFAULT notification_driver
transport_url
Type:string
Default:<None>

A URL representing the messaging driver to use for notifications. If not set, we fall back to the same configuration used for RPC.

Deprecated Variations
Group Name
DEFAULT notification_transport_url
topics
Type:list
Default:notifications

AMQP topic used for OpenStack notifications.

Deprecated Variations
Group Name
rpc_notifier2 topics
DEFAULT notification_topics
retry
Type:integer
Default:-1

The maximum number of attempts to re-send a notification message which failed to be delivered due to a recoverable error. 0 - No retry, -1 - indefinite

oslo_messaging_rabbit

amqp_durable_queues
Type:boolean
Default:false

Use durable queues in AMQP.

amqp_auto_delete
Type:boolean
Default:false

Auto-delete queues in AMQP.

Deprecated Variations
Group Name
DEFAULT amqp_auto_delete
ssl
Type:boolean
Default:false

Connect over SSL.

Deprecated Variations
Group Name
oslo_messaging_rabbit rabbit_use_ssl
ssl_version
Type:string
Default:u''

SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some distributions.

Deprecated Variations
Group Name
oslo_messaging_rabbit kombu_ssl_version
ssl_key_file
Type:string
Default:u''

SSL key file (valid only if SSL enabled).

Deprecated Variations
Group Name
oslo_messaging_rabbit kombu_ssl_keyfile
ssl_cert_file
Type:string
Default:u''

SSL cert file (valid only if SSL enabled).

Deprecated Variations
Group Name
oslo_messaging_rabbit kombu_ssl_certfile
ssl_ca_file
Type:string
Default:u''

SSL certification authority file (valid only if SSL enabled).

Deprecated Variations
Group Name
oslo_messaging_rabbit kombu_ssl_ca_certs
heartbeat_in_pthread
Type:boolean
Default:false

EXPERIMENTAL: Run the health check heartbeat threadthrough a native python thread. By default if thisoption isn’t provided the health check heartbeat willinherit the execution model from the parent process. Byexample if the parent process have monkey patched thestdlib by using eventlet/greenlet then the heartbeatwill be run through a green thread.

kombu_reconnect_delay
Type:floating point
Default:1.0

How long to wait before reconnecting in response to an AMQP consumer cancel notification.

Deprecated Variations
Group Name
DEFAULT kombu_reconnect_delay
kombu_compression
Type:string
Default:<None>

EXPERIMENTAL: Possible values are: gzip, bz2. If not set compression will not be used. This option may not be available in future versions.

kombu_missing_consumer_retry_timeout
Type:integer
Default:60

How long to wait a missing client before abandoning to send it its replies. This value should not be longer than rpc_response_timeout.

Deprecated Variations
Group Name
oslo_messaging_rabbit kombu_reconnect_timeout
kombu_failover_strategy
Type:string
Default:round-robin
Valid Values:round-robin, shuffle

Determines how the next RabbitMQ node is chosen in case the one we are currently connected to becomes unavailable. Takes effect only if more than one RabbitMQ node is provided in config.

rabbit_login_method
Type:string
Default:AMQPLAIN
Valid Values:PLAIN, AMQPLAIN, RABBIT-CR-DEMO

The RabbitMQ login method.

Deprecated Variations
Group Name
DEFAULT rabbit_login_method
rabbit_retry_interval
Type:integer
Default:1

How frequently to retry connecting with RabbitMQ.

rabbit_retry_backoff
Type:integer
Default:2

How long to backoff for between retries when connecting to RabbitMQ.

Deprecated Variations
Group Name
DEFAULT rabbit_retry_backoff
rabbit_interval_max
Type:integer
Default:30

Maximum interval of RabbitMQ connection retries. Default is 30 seconds.

rabbit_ha_queues
Type:boolean
Default:false

Try to use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you must wipe the RabbitMQ database. In RabbitMQ 3.0, queue mirroring is no longer controlled by the x-ha-policy argument when declaring a queue. If you just want to make sure that all queues (except those with auto-generated names) are mirrored across all nodes, run: “rabbitmqctl set_policy HA ‘^(?!amq.).*’ ‘{“ha-mode”: “all”}’ “

Deprecated Variations
Group Name
DEFAULT rabbit_ha_queues
rabbit_transient_queues_ttl
Type:integer
Default:1800
Minimum Value:1

Positive integer representing duration in seconds for queue TTL (x-expires). Queues which are unused for the duration of the TTL are automatically deleted. The parameter affects only reply and fanout queues.

rabbit_qos_prefetch_count
Type:integer
Default:0

Specifies the number of messages to prefetch. Setting to zero allows unlimited messages.

heartbeat_timeout_threshold
Type:integer
Default:60

Number of seconds after which the Rabbit broker is considered down if heartbeat’s keep-alive fails (0 disables heartbeat).

heartbeat_rate
Type:integer
Default:2

How often times during the heartbeat_timeout_threshold we check the heartbeat.

direct_mandatory_flag
Type:boolean
Default:true

(DEPRECATED) Enable/Disable the RabbitMQ mandatory flag for direct send. The direct send is used as reply, so the MessageUndeliverable exception is raised in case the client queue does not exist.MessageUndeliverable exception will be used to loop for a timeout to lets a chance to sender to recover.This flag is deprecated and it will not be possible to deactivate this functionality anymore

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:Mandatory flag no longer deactivable.
enable_cancel_on_failover
Type:boolean
Default:false

Enable x-cancel-on-ha-failover flag so that rabbitmq server will cancel and notify consumerswhen queue is down

API

oslo_messaging.opts.list_opts()

Return a list of oslo.config options available in the library.

The returned list includes all oslo.config options which may be registered at runtime by the library.

Each element of the list is a tuple. The first element is the name of the group under which the list of elements in the second element will be registered. A group name of None corresponds to the [DEFAULT] group in config files.

This function is also discoverable via the ‘oslo_messaging’ entry point under the ‘oslo.config.opts’ namespace.

The purpose of this is to allow tools like the Oslo sample config file generator to discover the options exposed to users by this library.

Returns:a list of (group_name, opts) tuples
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.