feat: changed postgres orchestration

- added postgres_listen_addresses to allow configuration
- removed default_master_ip -> shared_service_pg_master_ip
- removed default_slave_ip -> shared_service_pg_slave_ip
- removed default_private_network -> shared_service_network
- stage-qa: bugfix for /etc/exports, wrong ip
master
Sven Ketelsen 4 years ago
parent 7a9c8e42ae
commit 20df8986c4

@ -95,6 +95,8 @@ elastic_stack_network: {
docker_registry_oidc_realm: "docker"
docker_registry_oidc_client_id: "docker-registry"
postgres_listen_addresses: "listen_addresses = 'localhost,{{ stage_server_ip }},{{ stage_private_server_ip }}'"
smardigo_management_oidc_realm: "smardigo"
smardigo_management_oidc_client_id: "management-smardigo"

@ -35,7 +35,7 @@ shared_service_pg_master_ip: "{{ stage_server_infos
| list
| first }}"
shared_service_pg_slave_ip: "{{ stage_server_infos
| selectattr('name', 'match', stage + '-postgres-01' )
| selectattr('name', 'match', stage + '-postgres-02' )
| map(attribute='private_ip')
| list
| first }}"

@ -6,6 +6,4 @@ default_postgres_target_distribution: focal-pgdg # (bionic-pgdg, bullseye-pgdg,
default_max_connections: 1000
default_shared_buffers: 256MB
default_master_ip: "{{ shared_service_pg_master_ip }}"
default_slave_ip: "{{ shared_service_pg_slave_ip }}"
default_private_network: "{{ shared_service_network }}"
postgres_listen_addresses: "listen_addresses = 'localhost,{{ stage_private_server_ip }}'"

@ -4,13 +4,13 @@
### postgres_acls:
### - name
### - password
### - trusted_cidr_entry [default_private_network]
### - trusted_cidr_entry [shared_service_network]
- name: "Add pg_hba.conf entries for users/nodes/schemas"
lineinfile:
state: present
regex: '^host[ ]+{{ item.name }}[ ]+{{ item.name }}'
line: 'host {{ item.name }} {{ item.name }} {{ item.trusted_cidr_entry | default(default_private_network) }} md5'
line: 'host {{ item.name }} {{ item.name }} {{ item.trusted_cidr_entry | default(shared_service_network) }} md5'
path: /etc/postgresql/{{ default_postgres_version }}/main/pg_hba.conf
with_items: "{{ postgres_acls }}"

@ -41,7 +41,7 @@
lineinfile:
state: present
regex: "^listen_addresses"
line: "listen_addresses = 'localhost,{{ ansible_all_ipv4_addresses | ansible.netcommon.ipaddr(default_private_network) | first }}'"
line: "{{ postgres_listen_addresses }}"
path: /etc/postgresql/{{ default_postgres_version }}/main/postgresql.conf
register: listen_addresses

@ -24,7 +24,7 @@
lineinfile:
state: present
regex: "^host[ ]+replication[ ]+replicator"
line: "host replication replicator {{ default_slave_ip }}/32 trust"
line: "host replication replicator {{ shared_service_pg_slave_ip }}/32 trust"
path: /etc/postgresql/{{ default_postgres_version }}/main/pg_hba.conf
register: pg_hba_conf_replicator
@ -78,7 +78,7 @@
lineinfile:
path: /etc/exports
regex: "^/postgresql/replication"
line: "/postgresql/replication/ {{ default_slave_ip }}/32(rw,crossmnt,root_squash,no_subtree_check,sync)"
line: "/postgresql/replication/ {{ shared_service_pg_slave_ip }}/32(rw,crossmnt,root_squash,no_subtree_check,sync)"
state: present
register: nfsshare_archive_check

@ -20,13 +20,13 @@
- name: Create hosts entry for master (db-master)
lineinfile:
path: /etc/hosts
line: "{{ default_master_ip }} db-master"
line: "{{ shared_service_pg_master_ip }} db-master"
state: present
- name: Create hosts entry for backups (db-backups)
lineinfile:
path: /etc/hosts
line: "{{ default_master_ip }} db-backups"
line: "{{ shared_service_pg_master_ip }} db-backups"
state: present
- name: Mount replication NFS volume
@ -58,7 +58,7 @@
- name: Sync data from db-master
become: yes
become_user: postgres
shell: "pg_basebackup -h {{ default_master_ip }} -D /var/lib/postgresql/{{ default_postgres_version }}/main -U replicator -P -v -R -X stream -S pgstandby1"
shell: "pg_basebackup -h {{ shared_service_pg_master_ip }} -D /var/lib/postgresql/{{ default_postgres_version }}/main -U replicator -P -v -R -X stream -S pgstandby1"
register: pg_basebackup
- name: Change restore_command in postgresql.conf

Loading…
Cancel
Save