v1.0
This commit is contained in:
59
README.md
Normal file
59
README.md
Normal file
@@ -0,0 +1,59 @@
|
||||
# README.md
|
||||
|
||||
# PostgreSQL Production Setup via Ansible
|
||||
|
||||
Kompletne wdrożenie PostgreSQL 16 z repliką, backupami, PITR i bazą MailArchiver.
|
||||
|
||||
## Struktura repo
|
||||
|
||||
```
|
||||
ansible/
|
||||
├── inventory.ini
|
||||
├── site.yml
|
||||
├── group_vars/all/secrets.yml
|
||||
└── roles/
|
||||
├── common/
|
||||
│ └── tasks/main.yml
|
||||
├── postgres/
|
||||
│ ├── tasks/main.yml
|
||||
│ └── templates/
|
||||
│ ├── postgresql.conf.j2
|
||||
│ └── pg_hba.conf.j2
|
||||
├── replication/
|
||||
│ └── tasks/main.yml
|
||||
├── pgbackrest/
|
||||
│ ├── tasks/main.yml
|
||||
│ └── templates/pgbackrest.conf.j2
|
||||
└── mailarchiver_db/
|
||||
└── tasks/main.yml
|
||||
```
|
||||
|
||||
## Instalacja i konfiguracja
|
||||
|
||||
[INSTALL.md](INSTALL.md)
|
||||
|
||||
## Backup
|
||||
|
||||
- Full backup: niedziela 2:00
|
||||
- Incremental backup: codziennie 2:00
|
||||
- WAL archiving dla PITR
|
||||
|
||||
## Failover ręczny
|
||||
|
||||
Na pg2:
|
||||
|
||||
```bash
|
||||
sudo -u postgres pg_ctl promote
|
||||
```
|
||||
|
||||
Następnie zmień aplikację, aby łączyła się z nowym primary.
|
||||
|
||||
---
|
||||
|
||||
## Uwagi produkcyjne
|
||||
|
||||
- Aplikacja musi łączyć się tylko z primary
|
||||
- Repozytorium backupu na pg2
|
||||
- Monitoruj `/pgbackrest` i WAL
|
||||
- Wersja z Ansible Vault chroni hasła
|
||||
- Test restore co tydzień zalecany
|
||||
Reference in New Issue
Block a user