jradtilbrook.pgbouncer
Ansible Rolle: PgBouncer 
Diese Rolle installiert und konfiguriert den PgBouncer Connection Pooler für PostgreSQL.
Sie wurde nur für Ubuntu 16.04 entwickelt, sollte aber auch mit anderen Debian-Versionen funktionieren.
Anforderungen
Keine.
Rollenvariablen
Das Array pgbouncer_databases ermöglicht eine sehr dynamische Datenbankkonfiguration. Jede Eigenschaft, die im Verbindungsstring erlaubt ist, kann in diesem Array definiert werden und wird automatisch zur Alias-Definition hinzugefügt. Das folgende Beispiel konfiguriert einen dev-Datenbankalias, der Verbindungen zur postgres-Datenbank auf postgres:5432 herstellt mit dem Benutzer foo:md5asdofiasodfa09f9832f. Du kannst weitere Datenbanken auf die gleiche Weise definieren.
pgbouncer_databases:
- dev:
host: postgres # oder die tatsächliche IP-Adresse
port: 5432
dbname: postgres
user: foo
password: md5asdofiasodfa09f9832f
Diese Rolle kann auch optional das Paket postgresql-client für den Zugriff auf PostgreSQL oder PgBouncer über die Kommandozeile installieren. Um dieses Paket zu installieren, setze pgbouncer_install_psql: true.
Die Konfiguration Vorlage erlaubt es, einige Werte zu überschreiben. Um dies zu erreichen, erstelle eine Variable mit dem Namen der Konfigurationseigenschaft, die du ändern möchtest, und füge pgbouncer_ als Präfix hinzu. Zum Beispiel, um den Standardwert listen_port von 6432 zu überschreiben, verwende eine Variable mit dem Namen pgbouncer_listen_port. Siehe die Vorlagendatei für andere Konfigurationen, die auf diese Weise überschrieben werden können. Beachte, dass nicht alle Einstellungen verfügbar sind, nur einige gängige, die ich benutze.
Hinweis: Einige Variablen erwarten ein Array - es sollte offensichtlich sein, welche.
Sieh dir die defaults/main.yml für weitere Beschreibungen anderer Variablen an. Du solltest auch in templates/pgbouncer.ini.j2 nach zusätzlichen Variablen suchen, die du setzen kannst.
pgbouncer_install_state: Das ist nützlich, um PgBouncer auf neuere Versionen zu aktualisieren, nachdem es bereits installiert wurde. Verwende latest, um diese Funktionalität zu erreichen.
Ressourcen
Dokumentation zu PgBouncer findest du unter den folgenden Links:
Abhängigkeiten
Keine.
Beispiel-Playbook
- hosts: servers
become: yes
roles:
- role: jradtilbrook.pgbouncer
pgbouncer_databases:
- testing:
host: postgres
port: 5432
dbname: postgres
Lizenz
MIT
PgBouncer connection pooler for Ubuntu
ansible-galaxy install jradtilbrook.pgbouncer