Skip to content

rabbitmq-server job from cf-rabbitmq/413.0.0

Github source: d81c8e78 or master branch

Properties

rabbitmq-server

administrators

broker
password

RabbitMQ admin password for broker

username

RabbitMQ admin username for broker

management
password

RabbitMQ admin password for operator

username

RabbitMQ admin username for operator

check_queue_sync

If true, waits for quorum and mirror queues to sync before stopping the node

Default
false

cluster_name

The cluster_name is used by plugins such as rabbitmq_prometheus and rabbitmq_federation. Warning: do not change the cluster_name across BOSH deployments when federation is already set up.

Default
""

cluster_partition_handling

Cluster partition recover mode property. Valid values are: pause_minority, autoheal

Default
pause_minority

config

DEPRECATED. Use rabbitmq-server.override_advanced_config.

Default
W10u

cookie

Erlang cookie used by RabbitMQ nodes and rabbitmqctl. You should set this to a secure password

create_swap_delete

If true, configure rabbitmq-server to use vm_strategy create-swap-delete (i.e. use RabbitMQ long node names, FQDNs for Rabbit nodes names, and no hosts in erl_inetrc).

Default
false

disk_alarm_threshold

The threshold in bytes of free disk space at which rabbitmq will raise an alarm

Default
'{mem_relative,0.4}'

erlang_major_version

Major version of Erlang to use on RabbitMQ instances in this deployment

Default
24

fd_limit

The file descriptor limit for the RabbitMQ process

Default
300000

force_cluster_shutdown_on_version_change

Force a cluster shutdown in the event of a Erlang major version upgrade, to ensure cluster consistency. This will lead to app downtime.

Default
false

load_definitions

Definitions to be loaded by RabbitMQ at startup.

management_tls

cacert

RabbitMQ management CA certificate

cert

RabbitMQ management certificate

enabled

Use HTTPS listeners on management. Will not accept HTTP connections

Default
false
key

RabbitMQ management private key

oauth

enabled

Enables RabbitMQ OAuth plugin.

Default
false
resource_server_id

Prefix used for scopes in UAA to avoid scope collisions

Default
""
signing_key

The public key (verification key) of the RSA key pair used by UAA to sign the JWT token.

signing_key_id

The ID of the JWT signing key to be used when signing tokens.

uaa_client_id

The UAA client which presents a valid access_token acquired from UAA as the password in order to authenticate with RabbitMQ.

uaa_location

UAA URL (e.g. http://localhost:8080/uaa)

override_advanced_config

RabbitMQ advanced configuration in Erlang format, as a base64-encoded string. Overrides any config set by the release. Does not work if rabbitmq-server.oauth.enabled.

Example
WwogIHtyYWJiaXQsIFsKICAgICAge3RjcF9saXN0ZW5lcnMsIFs1NjczXX0KICAgIF0KICB9Cl0u

override_config

RabbitMQ configuration in Cuttlefish format. Overrides any config set by the release.

Example
|+
  prometheus.return_per_object_metrics = true
  collect_statistics_interval = 10000

plugins

List of RabbitMQ plugins

ports

List of ports on which the RabbitMQ cluster accepts connections

prom_scraper_labels

Optional metric labels (see loggregator-agent’s prom_scraper job for details)

Default
{}

ssl

cacert

RabbitMQ server CA certificate(s). If there is more than one certificate, they should be concatenated

cert

RabbitMQ server certificate

ciphers

TLS ciphers to use

disable_non_ssl_listeners

Should RabbitMQ reject connections on non-TLS ports when TLS is enabled

Default
false
enabled

Use TLS listeners. Will not accept non-TLS connections

Default
false
fail_if_no_peer_cert

Should RabbitMQ server reject connection if there is no peer cert

Default
false
inter_node_enabled

Whether to use TLS for inter-node communications through the Erlang distribution, including by RabbitMQ CLIs. This uses the same certificates and key provided under rabbitmq-server.ssl.

Default
false
key

RabbitMQ server private key

verification_depth

Peer verification depth used by RabbitMQ server

Default
5
verify

Peer verification method used by RabbitMQ server

Default
false
versions

TLS protocol versions to support. Note that TLS 1.3 is incompatible with TLS 1.1 and TLS 1.0. The deployment will fail if TLS 1.3 is enabled alongside TLS 1.0 or TLS 1.1.

Default
  - tlsv1.3
  - tlsv1.2

stream

advertised_host

Hostname returned when asked for the stream topology.

Default
""
advertised_port

Port returned when asked for the stream topology.

Default
""
advertised_tls_port

Port returned when asked for the stream topology over TLS.

Default
""

timeouts

port

Server and client timeout for a specific port

version

Version of RabbitMQ to use

Default
"3.8"

Templates

Templates are rendered and placed onto corresponding instances during the deployment process. This job's templates will be placed into /var/vcap/jobs/rabbitmq-server/ directory (learn more).

  • bin/add-rabbitmqctl-to-path (from add-rabbitmqctl-to-path.bash)
  • bin/cleanup-http-logs (from cleanup-http-logs.bash)
  • bin/cluster-check (from cluster-check.bash)
  • bin/drain (from drain.bash)
  • bin/enable-feature-flags (from enable-feature-flags.bash)
  • bin/env (from env.erb)
  • bin/kill-with-fire (from kill-with-fire.bash)
  • bin/node-check (from node-check.bash.erb)
  • bin/plugins.sh (from plugins.sh.erb)
  • bin/post-deploy (from post-deploy.bash)
  • bin/post-start (from post-start.bash)
  • bin/pre-start (from pre-start.bash)
  • bin/pre-stop (from pre-stop.bash.erb)
  • bin/rabbitmq-server.init (from rabbitmq-server.init.bash)
  • bin/setup.sh (from setup.bash)
  • config/indicators.yml (from indicators.yml.erb)
  • config/prom_scraper_config.yml (from prom_scraper_config.yml.erb)
  • etc/advanced.config (from config-files/advanced.config.erb)
  • etc/cacert.pem (from cacert.pem.erb)
  • etc/cert.pem (from cert.pem.erb)
  • etc/conf.d/10-clusterDefaults.conf (from config-files/10-clusterDefaults.conf.erb)
  • etc/conf.d/11-tlsConfig.conf (from config-files/11-tlsConfig.conf.erb)
  • etc/conf.d/12-managementConfig.conf (from config-files/12-managementConfig.conf.erb)
  • etc/conf.d/13-oAuth.conf (from config-files/13-oAuth.conf.erb)
  • etc/conf.d/14-webSTOMP.conf (from config-files/14-webSTOMP.conf.erb)
  • etc/conf.d/15-webMQTT.conf (from config-files/15-webMQTT.conf.erb)
  • etc/conf.d/16-stream.conf (from config-files/16-stream.conf.erb)
  • etc/conf.d/50-overrideConfig.conf (from config-files/50-overrideConfig.conf.erb)
  • etc/config (from config.erb)
  • etc/definitions.json (from definitions.json.erb)
  • etc/inter_node_tls.config (from config-files/inter_node_tls.config.erb)
  • etc/key.pem (from key.pem.erb)
  • etc/management-cacert.pem (from management-cacert.pem.erb)
  • etc/management-cert.pem (from management-cert.pem.erb)
  • etc/management-key.pem (from management-key.pem.erb)
  • etc/oAuth-signing-key.pem (from oAuth-signing-key.pem.erb)
  • etc/users (from users.erb)
  • lib/delete_old_files.bash (from delete_old_files.bash)
  • lib/prepare-for-upgrade.bash (from prepare-for-upgrade.bash)
  • lib/rabbitmq-config-vars.bash (from rabbitmq-config-vars.bash.erb)

Packages

Packages are compiled and placed onto corresponding instances during the deployment process. Packages will be placed into /var/vcap/packages/ directory.