Documentation ¶
Overview ¶
The `rabbitmq-broker` plugin for SHIELD implements backup + restore functionality for Pivotal's cf-rabbitmq-release RabbitMQ Service Broker BOSH release. It is specific to Pivotal's implementation, which can be found at https://github.com/pivotal-cf/cf-rabbitmq-release
However, since this plugin utilizes the RabbitMQ Management API directly, it may be compatible with other RabbitMQ deployments.
PLUGIN FEATURES ¶
This plugin implements functionality suitable for use with the following SHIELD Job components:
Target: yes Store: no
PLUGIN CONFIGURATION ¶
The endpoint configuration passed to this plugin is used to identify what rabbitmq cluster to back up, and how to connect to it. Your endpoint JSON should look something like this:
{ "rmq_url":"url-to-rabbitmq-management-domain", "rmq_username":"basic-auth-user-for-above-domain", "rmq_password":"basic-auth-passwd-for-above-domain", "skip_ssl_validation":false }
Default Configuration
{ "skip_ssl_validation": false }
BACKUP DETAILS ¶
The `rabbitmq-broker` plugin connects to the RabbitMQ management API to perform a dump of the current configuration of the RabbitMQ cluster. This backs up vhosts, queues, users, passwords, roles, but may not necessarily back up the data inside the queue. It uses the `GET /api/definitions` URL from the RabbitMQ cluster. Details on what that does can be found here: https://cdn.rawgit.com/rabbitmq/rabbitmq-management/rabbitmq_v3_6_0/priv/www/api/index.html
RESTORE DETAILS ¶
The `rabbitmq-broker` plugin connects to the RabbitMQ management API and restores the configuration dump into RabbitMQ, using the `PUT /api/definitions` URL. Any existing data is not replaced, but merged with the new configurations, making this a safe plugin to restore without service interruption.
DEPENDENCIES ¶
This plugin relies on the `rabbitmq_management`. Please make sure it is deployed to your RabbbitMQ cluster.