Как построить отказоустойчивый PostgreSQL-кластер и не промахнуться

В исходниках PostgreSQL встречаются ироничные комментарии, а самый веселый, на мой взгляд, находится в строке прямо перед запуском сервера. Судя по логам Git, это комментарий Тома Лейна, который сообщает: "We are ready to rock and roll", а следующей строкой идёт запуск сервера СУБД. Действительно, когда пытаешься запустить кластер PostgreSQL, порой не покидает ощущение "rock and roll", а потом вдруг кластер не стартует или внезапно переключается на другой узел из-за отступов в YAML-конфиге :). В этой статье разберём ключевые элементы отказоустойчивого кластера и типовые места, где чаще всего допускают ошибки.

https://habr.com/ru/companies/postgrespro/articles/1004040/

#postgresql #dba #кластер #датацентр #pgBackRest #wal #PgBouncer #мониторинг #Patroni #Stolon

Как построить отказоустойчивый PostgreSQL-кластер и не промахнуться

В исходниках PostgreSQL встречаются ироничные комментарии, а самый весёлый, на мой взгляд, находится в строке прямо перед запуском сервера. Судя по логам Git, это комментарий Тома Лейна, который...

Хабр

[Перевод] Как ускорить создание реплики PostgreSQL: pgBackRest вместо pg_basebackup

Создать реплику PostgreSQL на базе в 1 TiB — задача, где быстро выясняется, что NVMe и сеть в 75 Гбит/с сами по себе ничего не гарантируют: упираешься в инструмент, который копирует данные в один поток. В статье разбираемся, как обойти этот потолок с помощью pgBackRest и параллельной передачи, какие настройки реально влияют на скорость, где легко потерять порядок величины на «мелочи» вроде хранилища под spool, и почему в PostgreSQL 18 внезапно стало лучше — но недостаточно. Открыть статью

https://habr.com/ru/companies/otus/articles/1006120/

#postgresql #создание_реплики #pgBackRest #резервное_копирование #производительность_копирования #SSH #пропускная_способность_сети #NVMe

Как ускорить создание реплики PostgreSQL: pgBackRest вместо pg_basebackup

Представьте, что вам нужно создать реплику для базы данных объёмом 1 TiB. У вас есть быстрый сервер с NVMe-накопителями и сетью 75 Гбит/с, но pg_basebackup обычно выдаёт всего 300–500 МиБ/с из-за...

Хабр

Let's Encrypt has stopped to provide certificates that can be used for authentication https://letsencrypt.org/2025/05/14/ending-tls-client-authentication

I used them for pgBackRest which suddenly stopped working very recently.

Let's use a private CA then.

#letsencrypt #pgbackrest #tls

Ending TLS Client Authentication Certificate Support in 2026

Let’s Encrypt will no longer include the “TLS Client Authentication” Extended Key Usage (EKU) in our certificates beginning in 2026. Most users who use Let’s Encrypt to secure websites won’t be affected and won’t need to take any action. However, if you use Let’s Encrypt certificates as client certificates to authenticate to a server, this change may impact you. To minimize disruption, Let’s Encrypt will roll this change out in multiple stages, using ACME Profiles:

@[email protected] @[email protected] I'm in the process of doing the same, I've just converted a ext4 to #btrfs to do that. I pretty sure that a disk snapshot is suffisant (and i'll go with it). at work we can't/don't stop the service during backup (rsync+#borg). we do have another bckup strategy for postgresql backup (#pgbackrest).

for #selfhosting, it will be enough,i'm confident that my service can endure a powercut, so snapshot will be fine.

i haven't figured out how i will manage off-site backup, maybe export a tar from borg ? or rsync the repo even if it's not advised.

Don't miss the #PostgreSQL #Backups & #Replication course by @dataegret 

Five live online sessions designed to take your PostgreSQL backup and replication knowledge to the next level.

You will spend some quality time with me. Do not worry, I am friendly and only slightly emotional about backups 🔥🧯🤣

Big secret (#sarcasm): the first part of the training will, of course, focus on #pgBackRest 🫢

👉 https://dataegret.com/courses-postgresql-backups-replication-dba3

#Postgres #DBA #HighAvailability #OpenSource

If you did attend my talk about improving #PostgreSQL backup and restore capabilities with #pgBackRest at #FOSDEMPGDay, first of all: thank you for being there 🙏

The slides are available already 😎 https://pgstef.github.io/talks/en/20260130_FOSDEM-PGDay_pgBackRest-magic.pdf

RE: https://mastodon.social/@fosdempgday/115933923088950301

#pgBackRest is one of those tools that keeps surprising me, even after years of working with #PostgreSQL 🐘 Solid, flexible, and once you really get it, it completely changes how confident you feel about backups 🔒

If you’re around next week, come join us in #Brussels for #FOSDEMPGDay 🇧🇪

And if you can’t make it, pgBackRest is part of our next training level at @dataegret, where we share the patterns, gotchas, and real-world lessons we’ve learned along the way 👀
https://dataegret.com/courses-postgresql-backups-replication-dba3/

📣 Le programme de la prochaine #PGSession est disponible !
Une journée entière dédiée à #PostgreSQL et sa communauté 

De mon côté, challenge : vous parler de #Patroni et #pgBackRest en 30 minutes 😅 Il y aurait matière à en discuter des heures, mais on va à l’essentiel, promis !

📍 Organisé par @dalibo à Paris, le 14 janvier

👉 Programme : https://blog.dalibo.com/2025/12/17/pgsession18_programme.html

Bonus : en vous inscrivant, vous soutenez une asso qui promeut du logiciel libre (#PostgreSQLFr, #April, #Framasoft)

PGSession 18 : le programme des conférences

🔔 New blog post on a #pgBackRest feature preview: simplifying manual expiration of oldest backups.

🔎 The new expire --oldest option makes it much easier to expire the oldest eligible full backup without adjusting retention settings. This addresses a long-standing usability gap when disk space is tight and removes the need for temporary retention changes or scripting.

👉 Full example and details: https://pgstef.github.io/2025/12/17/pgbackrest_preview_expire_oldest.html

#PostgreSQL #Backups #LowDiskSpace

pgBackRest preview - simplifying manual expiration of oldest backups

A useful new feature was introduced on 11 December 2025: Allow expiration of the oldest full backup regardless of current retention. Details are available in commit bf2b276. Before this change, it was awkward to expire only the oldest full backup while leaving the existing retention settings untouched. Users had to temporarily adjust retention (or write a script) to achieve the same result. Expiring the oldest full backup is particularly helpful when your backup repository is running low on disk space. Let’s see how this works in practice with a simple example.

pgstef’s blog

🎉 Our @dataegret DBA1 PostgreSQL course kicked off today.
A warm welcome and good luck to all participants.

Want to strengthen your #PostgreSQL and #DBA skills? Have a look at our training catalog, especially if you want to learn how to use #pgBackRest efficiently! 🐘💪

If you are ready to deepen your expertise,
👉 DBA2 (Advanced) and DBA3 (High Availability and Replication) are now open for registration.

🔗 https://dataegret.com/postgresql-courses/

Courses - Data Egret

Accelerate your PostgreSQL journey with live online PostgreSQL courses from industry-recognised experts.

Data Egret