salt.states.rabbitmq_upstream

Manage RabbitMQ Upstreams

Example:

rabbit_upstream:
  rabbitmq_upstream.present:
  - name: upstream_1
  - uri: amqp://my_user:my_password@rabbitmq_host
  - trust_user_id: True
  - ack_mode: on-confirm
  - max_hops: 1

New in version 3000.

salt.states.rabbitmq_upstream.absent(name, runas=None)

Ensure the named upstream is absent.

Parameters
  • name (str) -- The name of the upstream to remove

  • runas (str) -- User to run the command

New in version 3000.

salt.states.rabbitmq_upstream.present(name, uri, prefetch_count=None, reconnect_delay=None, ack_mode=None, trust_user_id=None, exchange=None, max_hops=None, expires=None, message_ttl=None, ha_policy=None, queue=None, runas=None)

Ensure the RabbitMQ upstream exists.

Parameters
  • name (str) -- The name of the upstream connection

  • uri (str) -- The URI to connect to. If upstream is a cluster and can have several URIs, you can enter them here separated by spaces. Examples: - amqp://user:password@server_name - amqp://user:password@server_name/vhost When connecting with SSL, several URI-parameters need also be specified: - cacertfile = /path/to/cacert.pem - certfile = /path/to/cert.pem - keyfile = /part/to/key.pem - verity = verify_peer - fail_if_no_peer_cert = true | false - auth_mechanism = external Example: - amqp://user:password@server_name?cacertfile=/path/to/cacert.pem& certfile=/path/to/cert.pem&keyfile=/path/to/key.pem&verify=verify_peer - amqp://server-name?cacertfile=/path/to/cacert.pem&certfile=/path/to/cert.pem& keyfile=/path/to/key.pem&verify=verify_peer&fail_if_no_peer_cert=true&auth_mechanism=external

  • prefetch_count (int) -- Maximum number of unacknowledged messages that may be in flight over a federation link at one time. Default: 1000

  • reconnect_delay (int) -- Time in seconds to wait after a network link goes down before attempting reconnection. Default: 5

  • ack_mode (str) -- The following values are allowed: on-confirm: Messages are acknowledged to the upstream broker after they have been confirmed downstream. Handles network errors and broker failures without losing messages. The slowest option, and the default. on-publish: Messages are acknowledged to the upstream broker after they have been published downstream. Handles network errors without losing messages, but may lose messages in the event of broker failures. no-ack: Message acknowledgements are not used. The fastest option, but you may lose messages in the event of network or broker failures.

  • trust_user_id (bool) -- Set True to preserve the "user-id" field across a federation link, even if the user-id does not match that used to republish the message. Set to False to clear the "user-id" field when messages are federated. Only set this to True if you trust the upstream broker not to forge user-ids.

  • exchange (str) -- The name of the upstream exchange. Default is to use the same name as the federated exchange.

  • max_hops (int) -- Maximum number of federation links that messages can traverse before being dropped. Defaults to 1 if not set.

  • expires (int) -- Time in milliseconds that the upstream should remember about this node for. After this time all upstream state will be removed. Set to None (Default) to mean "forever".

  • message_ttl (int) -- Time in milliseconds that undelivered messages should be held upstream when there is a network outage or backlog. Set to None (default) to mean "forever".

  • ha_policy (str) -- Determines the "x-ha-policy"-argument for the upstream queue for a federated exchange. Default is "none" meaning the queue is not HA.

  • queue (str) -- The name of the upstream queue. Default is to use the same name as the federated queue.

New in version 3000.

Docs for previous releases are available on readthedocs.org.

Latest Salt release: 3004

Table of Contents

Previous topic

salt.states.rabbitmq_policy

Next topic

salt.states.rabbitmq_user