AMQP Notification Settings
This page documents settings for configuring an AMQP service as a target for Bucket Notifications. See Publish Events to AMQP (RabbitMQ) for a tutorial on using these settings.
You can establish or modify settings by defining:
- an environment variable on the host system prior to starting or restarting the AIStor Server. Refer to your operating system’s documentation for how to define an environment variable.
- a configuration setting using
mc admin config set.
If you define both an environment variable and the similar configuration setting, MinIO AIStor uses the environment variable value.
Some settings have only an environment variable or a configuration setting, but not both.
Each configuration setting controls fundamental MinIO AIStor behavior and functionality. Test configuration changes in a lower environment, such as DEV or QA, before applying to production.
You can specify multiple AMQP service endpoints by appending a unique identifier _ID for each set of related AMQP settings to the top level key.
export MINIO_NOTIFY_AMQP_ENABLE_PRIMARY="on"
export MINIO_NOTIFY_AMQP_URL_PRIMARY="amqp://user:password@amqp-endpoint.example.net:5672"
export MINIO_NOTIFY_AMQP_ENABLE_SECONDARY="on"
export MINIO_NOTIFY_AMQP_URL_SECONDARY="amqp://user:password@amqp-endpoint.example.net:5672"You can specify multiple AMQP service endpoints by appending a unique identifier :ID to the configuration key.
mc admin config set ALIAS notify_amqp:primary \
url="amqp://user:password@amqp-endpoint.example.net:5672" [ARGUMENT=VALUE ...]
mc admin config set ALIAS notify_amqp:secondary \
url="amqp://user:password@amqp-endpoint.example.net:5672" [ARGUMENT=VALUE ...]Notice that for configuration settings, the unique identifier appends to amqp only, not to each individual argument.
Settings
Enable
Requires specifying MINIO_NOTIFY_AMQP_URL if set to on.
Requires specifying notify_amqp url if set to on.
Specify on to enable publishing bucket notifications to an AMQP endpoint.
Defaults to off.
URL
Specify the AMQP server endpoint to which MinIO AIStor publishes bucket events.
For example, amqp://myuser:mypassword@localhost:5672.
Exchange
Specify the name of the AMQP exchange to use.
Exchange type
Specify the type of the AMQP exchange.
Routing key
Specify the routing key for publishing events.
Mandatory
Specify off to ignore undelivered messages errors.
Defaults to on.
Durable
Specify on to persist the message queue across broker restarts.
Defaults to off.
No wait
Specify on to enable non-blocking message delivery.
Defaults to off.
Internal
Specify on to use the exchange only if it is bound to other exchanges.
See the RabbitMQ documentation on Exchange to Exchange Bindings for more information on AMQP exchange binding.
Auto deleted
Specify on to automatically delete the message queue if there are no consumers.
Defaults to off.
Delivery mode
Specify 1 for set the delivery mode to non-persistent queue.
Specify 2 to set the delivery mode to persistent queue.
Publisher confirms
Specify on to enable consumer acknowledgements and publisher confirms.
Use this together with queue_dir for guaranteed delivery of all events.
Defaults to off.
Queue dir
Specify the directory path to enable MinIO’s persistent event store for undelivered messages, such as /opt/minio/events.
MinIO AIStor stores undelivered events in the specified store while the AMQP service is offline and replays the stored events when connectivity resumes.
Queue limit
Specify the maximum limit for undelivered messages.
Defaults to 100000.
Comment
Specify a comment for the AMQP configuration.