Installing and Configuring RabbitMQ for PCF as an On-Demand Service
This topic provides instructions to PCF operators about how to install, configure, and deploy the RabbitMQ for PCF tile to provide on-demand service.
Note: For instructions on how to install, configure, and deploy the RabbitMQ for PCF tile as a pre-provisioned service, see the documentation for pre-provisioned RabbitMQ for PCF.
Download the product file from Pivotal Network.
Navigate to the Ops Manager Installation Dashboard and click Import a Product to upload the product file.
Under the Import a Product button, click + next to the version number of RabbitMQ for PCF. This adds the tile to your staging area.
Click the newly added RabbitMQ for PCF tile.
Marketplace name: the service name that will appear in the Cloud Foundry (CF) Marketplace.
Service instance quotamin: 0, max: 50 set the total number of dedicated service instances which can be deployed.
- Allow outbound internet access (IaaS-dependent, refer to Ops Manager documentation for more details, log forwarding and backups may require internet access).
Configuration options for plans
The following options are available for the RabbitMQ on demand broker:
Enable this plan: check this to enable dedicated RabbitMQ instances on CF marketplace.
Service instance quota: The maximum number of services that can be created by the on demand broker.
Plan name: the service name that will appear in the CF marketplace.
Plan description: the plan description that will appear in the CF marketplace.
Plan features: the features associated with this plan that will appear in the CF marketplace.
RabbitMQ VM Type: the type of VM that the RabbitMQ node will be created on.
Persistent disk type: The type of persistent disk that the RabbitMQ node will be created on.
AZ placement: the AZ(s) that the service instance will be deployed into.
Enabling the on demand service broker
In order to enable the ODB you need to check the
Enable this plan checkbox in the Settings > Dedicated Instance: Single Node Plan section in the RabbitMQ tile.
Note: if the ODB feature is not enabled, the ODB will be deployed alongside with RabbitMQ installation. Nevertheless, it is not going to be available in the marketplace.
Explanation of resource types and requirements
It is possible to configure the VM type for RabbitMQ and HAProxy instances by using the fields
RabbitMQ VM Type and
HAProxy VM Type respectively. It is also possible to chose the size of the persistent disk that is going to be attached the RabbitMQ instances. It is also necessary to chose the Availability Zone (AZ) the service instance is going to live in.
Detail of the solo plan
Solo plan there will be only one single node in the cluster. There is still have an
HAProxy associated with the cluster.
Follow the steps below to configure the RabbitMQ for PCF tile for on-demand service instances. This procedure only addresses how to configure RabbitMQ for PCF as an on-demand service. Currently there is only one type of plan available for the on-demand service. Its default name is Solo.
Click Assign AZs and Networks.
IMPORTANT: You cannot change the regions or networks after you have clicked Apply Changes in the final step below.
Configure the fields on the Assign AZs and Networks as follows:
Field Instructions Place singleton jobs in Select the region that you want for singleton VMs. PCF creates the RabbitMQ broker in this availability zone (AZ). Balance other jobs in Select additional region. This selection does not affect the on-demand RabbitMQ for PCF service. Network Select a subnet for the RabbitMQ broker.
This network is represented by the Default Network in this picture. Typically, you select the subnet used for the Pivotal Elastic Runtime components. Q: Who sets up this subnet? Should I use the same subnet as for my ERT components? Do we need to specify that it cannot be an IPsec subnet? https://docs.pivotal.io/rabbitmq-cf/1-7/.
Service Network This is the subnet that the on-demand service instances are on. A typical practice is to put all on-demand services on a single subnet. (?) This network is represented by the Services Network in this picture. If you are not using on-demand services but only pre-provisioned services, you need to specify a subnet but which subnet you specify does not matter.
Enter RabbitMQ admin user credentials.
These credentials are not used by the on-demand RabbitMQ for PCF service but the fields cannot be blank. You do not need to make any other edits to this page.
(Optional) Enter a value for the Metrics polling interval. The default is 30 seconds.
If you want to set up monitoring, click Syslog, complete the fields, and save.
For more information, see Monitoring RabbitMQ for PCF.
Click Dedicated Instance: Single Node Plan.
Configure the fields on the Dedicated Instance: Single Node Plan as follows:
Field Instructions Enable this plan Select the checkbox. Service instance quota Enter the maximum number of dedicated service instances that can be available at one time. Plan name Accept the default or enter a name. This is the name that appears in the Marketplace. Plan description Accept the default or enter a description. Plan features Accept the default or enter information about the plan to help your app developers. RabbitMQ VM Type Select a large VM type.
The plan will create a service instance of this size.
Persistent disk type This is where RabbitMQ will page messages to disk. See Disk Size Concerns for more details. AZ placement Select one AZ for the single node.
The plan will create all the on-demand service instance VMs in this AZ.
Return to the Ops Manager Installation Dashboard and click Apply Changes.
RabbitMQ raises alarms when disk space drops below the configured limit. Incorrect disk sizes could cause the deployed instance not to start (RabbitMQ decline to start if there is not enough space available according to the threshold).
Dedicated instances are configured with a threshold set to the 40% of the memory (RAM) of the virtual machine. Operators can take the following table as an example when selecting the size of the persistent disk.
The following table show an example of possible RAM values, absolute minimal value below which RabbitMQ will decline to start and the disk size suggested for an average use case.
|RAM||Free disk alarm threshold (0.4xRAM)||Suggested disk size (2xRAM)|
|10 GB||4 GB||20 GB|
|16 GB||6.4 GB||32 GB|
|32 GB||12.8 GB||64 GB|
The smoke tests perform the following for each available service plan:
- Targets the org
systemand creates a space to run the tests.
- Deploys an instance of the CF RabbitMQ Example App to this space
- Creates a RabbitMQ service instance and binds it to the CF RabbitMQ Example App
- Checks that the CF RabbitMQ Example App can write to and read from the RabbitMQ service instance
- Cleans up all deployed application and all its service bindings. Finally, the cf space is deleted.