jradtilbrook.pgbouncer
Ansible Role: PgBouncer 
この役割は、PostgreSQL用のPgBouncer接続プーラーをインストールおよび設定します。
Ubuntu 16.04で動作するように設計されていますが、他のDebian系ディストリビューションでも動作するはずです。
要件
特になし。
役割変数
pgbouncer_databases
配列を使うことで、非常に柔軟なデータベース設定が可能です。接続文字列で許可されるプロパティはすべて、この配列の下で定義でき、エイリアス定義に自動的に追加されます。以下の例では、postgres:5432
でfoo:md5asdofiasodfa09f9832f
として接続するpostgres
データベースへの接続をプールするdev
データベースエイリアスが設定されています。同様の方法で、さらに多くのデータベースを定義できます。
pgbouncer_databases:
- dev:
host: postgres # 実際のIPアドレスを使用することもできます
port: 5432
dbname: postgres
user: foo
password: md5asdofiasodfa09f9832f
この役割は、PostgreSQLまたはPgBouncerへのコマンドラインアクセスのためにpostgresql-client
パッケージをオプションでインストールすることもできます。このパッケージをインストールするには、pgbouncer_install_psql: true
を設定します。
設定テンプレートでは、一部の値を上書きすることができます。これを実現するためには、変更したい設定プロパティに名前を付け、pgbouncer_
でプレフィックスを付けた変数を作成します。たとえば、デフォルトの listen_port
を6432から上書きするには、pgbouncer_listen_port
という変数を渡します。他に上書き可能な設定についてはテンプレートファイルを参照してください。すべての設定が変更できるわけではなく、私がよく使う一般的なものだけです。
注意: 一部の変数は配列を期待します - どれがそうであるかは明らかです。
他の変数についての詳細はdefaults/main.yml
をご覧ください。また、設定できる追加の変数についてはtemplates/pgbouncer.ini.j2
を確認してください。
pgbouncer_install_state
: これは、PgBouncerがすでにインストールされている場合に、新しいバージョンに更新するのに便利です。これを実現するにはlatest
を使用します。
リソース
PgBouncerに関するドキュメントは以下のリンクで見つけることができます:
依存関係
特になし。
サンプルプレイブック
- hosts: servers
become: yes
roles:
- role: jradtilbrook.pgbouncer
pgbouncer_databases:
- testing:
host: postgres
port: 5432
dbname: postgres
ライセンス
MIT
ansible-galaxy install jradtilbrook.pgbouncer