Skip to content

rabbitmq-server job from cf-rabbitmq/551.0.0

Github source: 2a0f2736 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}'

ensure_log_cache_compatibility

Ensures the prom_scraper source_id is compatible with log cache

Default
false

erlang_major_version

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

Default
25

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

client_id

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

client_secret

The OAuth client secret

enabled

Enables RabbitMQ OAuth plugin.

Default
false
jwks_url

URL for dynamically retreiving JWK Set

Default
""
provider_url

URL of the OAuth2 provider (e.g. http://localhost:8080/uaa)

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

Deprecated. Do not use this property. Use rabbitmq-server.oauth.client_id instead.

uaa_location

Deprecated. Do not use this property. Use rabbitmq-server.oauth.provider_url instead.

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_detailed_endpoint_query

Query parameters to append to the prom_scraper target endpoint for /metrics/detailed, including the leading ?. See https://github.com/rabbitmq/rabbitmq-server/blob/master/deps/rabbitmq_prometheus/README.md#selective-querying-of-per-object-metrics

Default
""

prom_scraper_labels

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

Default
{}

prom_scraper_scrape_interval

The scrape interval for scraping the metrics endpoint

Default
30s

prom_scraper_source_id

The source ID to set on scraped metrics. Must be 48 characters or less to be compatible with log-cache. Warning: Changing this on a live deployment will cause discontinuity in metrics from that deployment.

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.12"

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)
  • config/prom_scraper_detailed_config.yml (from prom_scraper_detailed_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.