Puppet Qpid Dispatch Router Module
Go to file
ZhongShengping a3244df219 Replace deprecated UPPER_CONSTRAINTS_FILE variable
the new environment variable name that replaces it [1].

This allows to use upper-constraints file as more
readable way instead of UPPER_CONSTRAINTS_FILE=<lower-constraints file>.

[1] https://zuul-ci.org/docs/zuul-jobs/python-roles.html#rolevar-tox.tox_constraints_file
[2] https://review.opendev.org/#/c/722814/

Change-Id: Iaf03ea0a4838878405a52c741081eac62fd245bd
2020-11-11 09:08:36 +08:00
doc Switch to newer openstackdocstheme and reno versions 2020-06-02 15:01:12 +02:00
examples Convert all class usage to relative names 2019-12-08 23:19:52 +01:00
lib/puppet Fix permissions on qdrouterd.sasldb 2017-08-07 12:46:26 -04:00
manifests Convert all class usage to relative names 2019-12-08 23:19:52 +01:00
releasenotes/source Update master for stable/victoria 2020-10-08 14:46:07 +00:00
spec Change beaker to litmus 2020-08-31 21:53:08 +02:00
templates MetricsQdr: fix minor spacing issue in qdrouterd template 2019-04-26 00:35:01 -04:00
.fixtures.yml Add basic fixture file 2016-04-13 08:53:27 -04:00
.gitignore Dissuade .gitignore references to personal tools 2018-10-08 11:39:25 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:31:43 +00:00
.zuul.yaml Change beaker to litmus 2020-08-31 21:53:08 +02:00
CONTRIBUTING.rst [ussuri][goal] Add CONTRIBUTING.rst 2020-05-10 22:51:07 +02:00
Gemfile Use openstack_spec_helper from zuul checkout 2020-08-30 23:03:56 +02:00
LICENSE Add LICENSE file 2016-04-14 08:44:01 -04:00
README.md Change to relative include 2020-07-13 21:23:05 +02:00
Rakefile Fix puppet-qdr testing 2016-10-13 15:30:05 -06:00
bindep.txt modulesync: sync and add nodepool-bionic for beaker 2018-07-18 16:19:46 +02:00
metadata.json Fix outdated files 2020-10-28 10:40:09 +08:00
tox.ini Replace deprecated UPPER_CONSTRAINTS_FILE variable 2020-11-11 09:08:36 +08:00


Team and repository tags

Team and repository tags


Table of Contents

  1. Overview
  2. Module Description - Manage the QPID Dispatch Router
  3. Setup - The basics of getting started with qdr
  4. Usage - Configuration options and additional functionality
  5. Reference - An under-the-hood peek at what the module is doing and how
  6. Limitations - OS compatibility, etc.
  7. Development - Guide for contributing to the module
  8. Contributors - Those with commits
  9. Release Notes - Release notes for the project
  10. Repository - The project source code repository


This module manages the QPID Dispatch Router (qdr) found at:


The dispatch router provides flexible and scalable interconnect between any AMQP 1.0 endpoints, whether they be clients, brokers or other AMQP-enabled services

Support is intended for Red Hat and Ubuntu OS family deployed with Pupppet V4.x

Module Description

This module sets up the installations, configuration and management of the QPID Dispatch Router (qdr) class and has a number of providers that correpsond the router configuration entities such as listeners and connectors.

This module will facilitate the deployment of a full/partial mesh topology of QPID Dispatch Routers serving as the messaging interconnect for a site.


What qdr affects

  • repository files
  • packages
  • configuration files
  • service
  • configuration entities

Beginning with qdr

include qdr

The default configuration currently installs Qpid-Dispatch-Router 0.6


All configuration parameters can be managed via the main qdr class.

class { 'qdr' :
  service_enable            => true,
  container_workder_threads => 4,
  listener_port             => 15672,

Class Reference

  • qdr: Provides the basic installation and configuration sequence
  • qdr::config: Provides qdrouterd configuration
  • qdr::install: Performs package installations
  • qdr::params: Aggregates configuration data for router
  • qdr::service: Manages the qdrouterd service state

Resource Types


Resource to manage address prefixes for distribution and phasing

Query all current internal addresses: '$puppet resource qdr_address'

qdr_address { 'anyAddress' :
  prefix       => 'unicast',
  distribution => 'closest',


Resource configuration entity to establish outgoing connections from the router.

Query all current connectors: '$puppet resource qdr_connector'

qdr_connector { 'anyConnector' :
  addr           => '',
  port           => '1234',
  role           => 'inter_router',
  max_frame_size => '65536',


Listens for incoming connection requests to the router

Query all current listeners: '$puppet resource qdr_listener'

qdr_listener { 'anyListener' :
  addr            => '',
  port            => '5678',
  role            => 'normal',
  sasl_mechanisms => 'DIGEST-MD5,EXTERNAL',


Control log settings for a particular module on the running router

Query all current log module settings: '$puppet resource qdr_log'


Users for internal sasl authentication

Query all current internal users: '$puppet resource qdr_user'

qdr_user { 'anyUser' :
  password => 'changeme',

Resource Providers


An AMQP management client tool for used with any standard AMQP managed endpoint.


This module has been tested on the following platforms:

  • CentOS 7
  • Ubuntu 15.10

Apt module dependence

If running Debian os family, puppetlabs-apt module is required


Developer documentation for the entire puppet-openstack project.


Release Notes


If you aren't using changelog, put your release notes here (though you should consider using changelog). You may also add any additional sections you feel are necessary or important to include here. Please use the ## header.