86 lines
2.4 KiB
Text
86 lines
2.4 KiB
Text
# {{ ansible_managed }}
|
|
# /!\ Any change here require a postgresql restart to be taken into account
|
|
|
|
# File Locations
|
|
data_directory = '{{ pg_data_directory }}'
|
|
hba_file = '{{ pg_data_directory }}/pg_hba.conf'
|
|
ident_file = '{{ pg_data_directory }}/pg_ident.conf'
|
|
external_pid_file = '/var/run/postgresql/{{ pg_version }}-{{ pg_cluster_name }}.pid'
|
|
|
|
# Connection Settings
|
|
listen_addresses = '{{ pg_listen_addresses }}'
|
|
port = {{ pg_port }}
|
|
max_connections = {{ pg_max_connections }}
|
|
unix_socket_directories = '/var/run/postgresql'
|
|
|
|
# Security and Authentication
|
|
{% if pg_ssl %}
|
|
ssl = true
|
|
ssl_cert_file = '/etc/ssl/certs/ssl-cert-snakeoil.pem'
|
|
ssl_key_file = '/etc/ssl/private/ssl-cert-snakeoil.key'
|
|
{% endif %}
|
|
|
|
# Resource Consumption
|
|
shared_buffers = '{{ pg_shared_buffers }}'
|
|
huge_pages = '{{ pg_huge_pages }}'
|
|
{% if pg_version is version('9.6', '>=') and pg_max_worker_processes is defined %}
|
|
max_worker_processes = {{ pg_max_worker_processes }}
|
|
{% endif %}
|
|
|
|
# Write Ahead Log
|
|
wal_buffers = '16MB'
|
|
wal_level = '{{ pg_wal_level | default('replica') }}'
|
|
|
|
# Archiving
|
|
{% if pg_archive_command is defined %}
|
|
archive_mode = 'on'
|
|
{% endif %}
|
|
|
|
# Replication
|
|
{% if pg_version is version('9.6', '<=') %}
|
|
hot_standby = 'on'
|
|
{% endif %}
|
|
{% if pg_replication %}
|
|
max_wal_senders = '5'
|
|
max_replication_slots = '5'
|
|
{% elif pg_wal_level is defined and pg_wal_level == 'minimal' %}
|
|
max_wal_senders = '0'
|
|
max_replication_slots = '0'
|
|
{% endif %}
|
|
|
|
# Error Reporting and Logging
|
|
{% if pg_logging %}
|
|
logging_collector = 'on'
|
|
{% endif %}
|
|
|
|
# Process Title
|
|
cluster_name = '{{ pg_version }}-{{ pg_cluster_name }}'
|
|
|
|
# Run-time Statistics
|
|
track_activity_query_size = '10240'
|
|
|
|
# Automatic Vacuuming
|
|
{% if pg_autovacuum_max_workers is defined %}
|
|
autovacuum_max_workers = '{{ pg_autovacuum_max_workers }}'
|
|
{% endif %}
|
|
{% if pg_autovacuum_freeze_max_age is defined %}
|
|
autovacuum_freeze_max_age = '{{ pg_autovacuum_freeze_max_age }}'
|
|
{% endif %}
|
|
{% if pg_recovery %}
|
|
|
|
# Recovery
|
|
{% if pg_recovery_target is defined %}
|
|
recovery_target = '{{ pg_recovery_target }}'
|
|
{% endif %}
|
|
{% if pg_recovery_target_action is defined %}
|
|
recovery_target_action = '{{ pg_recovery_target_action }}'
|
|
{% endif %}
|
|
{% if pg_recovery_target_time is defined %}
|
|
recovery_target_time = '{{ pg_recovery_target_time }}'
|
|
{% endif %}
|
|
{% endif %}
|
|
{% if pg_shared_preload_libraries is defined %}
|
|
|
|
# shared library
|
|
shared_preload_libraries = '{{ pg_shared_preload_libraries | join(',') }}'
|
|
{% endif %}
|