So far, we have been manually configuring our RabbitMQ instances. However, it's common for many production systems to use automatic provisioning and management of the configuration of components, including the message broker. There are a number of ways in which we can deploy and manage a RabbitMQ broker instance:
Installing and configuring the broker manually in a virtual machine that is used to distribute it
Automatically provisioning in a virtual container hosted directly on the operating system using a tool such as Docker, which provides integration with RabbitMQ
Deploying or using managed RabbitMQ instances in the cloud; many platform-as-a-service cloud providers enable the use of such instances in the form of messaging-as-a-service or RabbitMQ-as-a-service (such as the Google Cloud and CloudAMQP platforms)
Automatically provisioning a target operating system using a recipe written in a domain-specific language with a provisioning tool such as Puppet or Chef ...