libre_ops.wal2json
Rôle de provisionnement wal2json
Ceci est un rôle Ansible pour provisionner Wal2json, un plugin PostgreSQL pour la Capture de Données de Changement qui convertit les modifications de base de données en différences JSON.
Defaults
Consultez tous les paramètres par défaut ici.
Les variables Postgresql
par défaut sont conçues pour Debian/Ubuntu et Postgres 10, mais peuvent être remplacées selon les besoins :
postgresql_version: "10"
postgresql_bin_path: "/usr/lib/postgresql/{{ postgresql_version }}/bin"
postgresql_config_path: "/etc/postgresql/{{ postgresql_version }}/main"
Construction à partir des sources
Pour récupérer wal2json depuis le dépôt GitHub et le construire à partir des sources, utilisez : wal2json_build_from_source: true
.
Précautions avec shared_preload_libraries
Par défaut, ce rôle va écrire certains paramètres de configuration dans un fichier conf.d
de PostgreSQL, y compris le réglage shared_preload_libraries = 'wal2json'
.
Si vous utilisez d'autres bibliothèques PostgreSQL dans votre application, vous devriez utiliser : wal2json_set_preload_libraries: false
et inclure 'wal2json' dans votre fichier postgresql.conf séparément, par exemple : shared_preload_libraries = 'some_other_library,wal2json'
.
Définir la même valeur deux fois dans vos configurations peut empêcher PostgreSQL de fonctionner, donc faites attention à éviter la duplication.
Exemple de playbook
- name: Provisionner wal2json
hosts: webservers
roles:
- role: libre_ops.wal2json
vars:
postgresql_version: 11
ansible-galaxy install libre_ops.wal2json