v1.4.0
版本发布时间: 2020-08-03 18:10:03
vitabaks/postgresql_cluster最新发布版本:2.0.0(2024-08-19 02:48:10)
New features
-
Added pgBackRest support (#40) Create/Clone Patroni clusters from your existing backups with pgBackRest With support of point-in-time recovery, PITR See more details https://github.com/vitabaks/postgresql_cluster#restore-and-cloning
-
Compatibility with Postgres Pro Standard (#38, #39) all supported versions. Tested on centos, debian, ubuntu.
-
New role: "resolv_conf". Adds entries of DNS server(s) into /etc/resolv.conf (4f3521bb053457285596fad3577f9cce0b859f19, cccbc5398d22d53499e4c852841e2befc7603575) variable
nameservers
(in vars/system.yml) -
New role "etc_hosts". Adds entries into /etc/hosts file for postgresql_cluster nodes (427f4e991884b71d670389e864df1d4dcaad0306). variable:
etc_hosts
(in vars/system.yml) -
Install Software Collections (SCL) repository for RHEL 7 (cc24028962b30ba7cc4bd59c6defdb17af2545a5) variable
install_scl_repo: true
(in vars/RedHat.yml) -
Support for switch from scheme TypeB to TypeA (#43 thanks @jidckii ) variable
vip_manager_disable
(in playbook balancers.yml)
Enhancements
- generate virtual_router_id based on the last octet of cluster_vip (802ff58e07605e24ac3286fc02ec6fb91f784ca5).
- vip-manager: release VIP when vip-manager service is stopped. Use ExecStopPost=/sbin/ip addr del (0a673a7817c9167b773b6f62301752024f1d18b6 thanks @jidckii ).
- vip-manager: new variables -
vip_manager_ip, vip_manager_mask, vip_manager_iface
(9fee9e79e18bfa5e3523436ef17fc7757c7c6a8e). - roles for etcd and balancers moved to separate playbooks. Added play-level condition (9d37642e056c7ebaafce46e48489a60efea2bc9d, 4657354fffe709d4a0648248f2349c451a4c41a2)
- new variable
sysctl_set
(11861a5ba1a7f4cba27bc97a979be1b96a961691) allows to disable the task of configuring kernel parameters. - clean yum cache before install packages for RHEL (6004598f5c2a859ae9724a6b9202b2c937742541).
- wait for the patroni is healthy on the replica servers after starting the patroni service (284dc07169bb2933c3472d0c3695574627e668dc, ce13be2f6d81165bdf2d920ef96285306a6537ca).
- pgbouncer - generate userlist.txt from pg_shadow (596b25dd95004fd024e3d0f1fdc969747202ee4a).
- added minimal_ansible_version check (89812faacd7b805ce9b95e85ae8868e348c28426). minimal_ansible_version: 2.7.0
- ansible-role-firewall: updated to version 2.5.0 (0df73e27cb71552779717aa59331505fb3f875ac).
- update etcd to version 3.3.23 (3c2a1abb182245f2a00ea32b4ba0f59285099e99).
- requirements.txt - added python modules "pexpect" and "ruamel.yaml". Required for PITR (c5e6604425f50c204b0db01e0485346f6c82e89f).
- PITR (custom bootstrap) - disable archive_command (e6edeaa3b1a070d64fc4dea370a77ca7691bdaaf).
Fixes
- sysctl: fix Jinja2 warning (50e1d4bcbcc6a59c67bff8b3ffad789cf5fe247d).
- sysctl: make sure handlers are flushed immediately (8bc0db7f955297805920308be04aba280c6414cb).
- ntp: fix flush_handlers warning (94e56d17831c47c50d7e7eb11df1b221b6eb237e)
- pgbouncer: fix flush_handlers warning (0f4fbbe7295ffaee520a42d13db1e2889152da4e).
- etcd: make sure handlers are flushed immediately (1fd74af17104c5d174b1ae557cbbcc5cf47c9744).
- patroni.yml.j2 - fixed yamllint warnings and errors (825d88b0c25542d78bd0d5a35d229713a942a25b).
- ansible-role-firewall: fix error during deployment when execute tasks: "Check if ufw package is installed (on Ubuntu)" (8cf7e309e9c3754a9f38e1eed5929597e0a3ef65). "Check if firewalld package is installed (on RHEL)"(7120f8d63c6850354ab520779ec8cab331fa156a).
- run playbook "balancers.yml" after the "hostname" role is played (46010aa5fc2efa0641bfc51a3a7c08f0f85658bb).
- fix error with create extensions on PostgresPro (a20599c4fe7019d833a41c9583392ef7fc766a7a, 1daaea0ca3bd7cbc512569d021651c42120a48ac).
Tests
- Added CI "Molecule" on GitHub Actions for etcd_cluster and postgres_cluster (#37). tests of deploying a patroni cluster on distro: debian9/10, ubuntu1804/2004, centos7/8.
- Daily scheduled cluster deploy tests with Molecule (7d3903c21b3eedcd123746222c35c99c23e7983b) for each supported Linux distro.
- Added Molecule test for PostgresPro (scheduled - weekly)
EOL
Debian 8 removed from the list of supported versions (end of life on June 30, 2020) (804b938fcebd3cb1d588f7f2c2a2b98eb15c8a89).