covermymeds-pgbouncer


Keywords
proxy, postgres, pgbouncer, pool
License
GPL-3.0+
Install
puppet module install covermymeds-pgbouncer --version 0.3.3

Documentation

pgbouncer

Overview

Installs and configures pgbouncer.

Module Description

This module installs the pgbouncer package and configures it to pool connections for postgresql databases. By default, the service uses port 6432 as this is the default port of pgbouncer.

Setup

What pgbouncer affects

  • /etc/pgbouncer/pgbouncer.ini
  • /etc/pgbouncer/userlist.txt
  • /etc/default/pgbouncer

Setup Requirements

Requires a Debian or RedHat based system. If other OS's are needed, it shouldn't be hard to extend the module.

Usage

Classes

This module modifies the pgbouncer configuration files and replaces the main configuration file.

Class: pgbouncer

The primary class that installs and configures pgbouncer. It also ensures the pgbouncer service is running.

Class: pgbouncer::params

Parameters within pgbouncer:

databases

An array of hash entries to be written to the databases section in the pbbouncer.ini

Array entry format in hieradata:

  pgbouncer::databases:
    - source_db: 'admin'
      host: 'localhost'
      dest_db: 'admin'
      auth_user: 'admin'
auth_list

An array of hash values (user/password pairs). This array is written to /var/lib/postgresql/pgbouncer.auth

Array entry format in hieradata:

  pgbouncer::userlist:
    - user: 'admin'
      password: 'admin'

Limitations

This has only been tested on Redhat Systems. If you experience issues using it with Ubuntu, please open an issue and we will work with you to correct the problem or you can submit a PR.

Development

The module is open source and available on github. Please fork!