Политика работы с версиями PostgreSQL
Политика работы с версиями PostgreSQL описывает жизненный цикл мажорных версий PostgreSQL в сервисе Yandex Managed Service for PostgreSQL. Политика основана на официальном цикле поддержки сообщества
Терминология и этапы жизненного цикла версий PostgreSQL
Для каждой мажорной версии PostgreSQL в сервисе Managed Service for PostgreSQL действует жизненный цикл продолжительностью от шести до семи лет, включающий в себя следующие этапы (состояния):
| Состояние версии | Описание и ключевые действия | Примерные сроки1 |
|---|---|---|
| Актуальная (Actual) | Самая последняя версия с длительной поддержкой (LTS). Рекомендуется для всех новых проектов. | Год 1 |
| Поддерживаемая (Supported) | Предшествующая LTS-версия. Полностью поддерживается, создание новых кластеров разрешено. | Годы 2–4 |
| Устаревающая (Deprecated) | Версия, приближающаяся к окончанию поддержки. Создание новых кластеров заблокировано. Существующие кластеры работают в штатном режиме. | Год 5 |
| Устаревшая с повышенной стоимостью (Legacy Extra Paid) | Версия, поддержка которой официально прекращена. Кластеры продолжают работать, но тарифицируются по повышенной ставке (×2). Техническая поддержка ограничена. | Год 6 |
| Выведенная из эксплуатации (EOL) | Версия более не поддерживается. Кластеры принудительно обновлены или остановлены. | Годы 6–7 |
1 Сроки указаны относительно даты релиза мажорной версии. Точные даты перехода между состояниями публикуются в официальных анонсах сервиса.
Доступные операции
В зависимости от состояния версии PostgreSQL для кластеров доступны следующие операции:
| Действие | Актуальная (Actual) | Поддерживаемая (Supported) | Устаревающая (Deprecated) | Устаревшая (Legacy) | EOL |
|---|---|---|---|---|---|
| Создание новых кластеров | |||||
| Восстановление из резервной копии | |||||
| Эксплуатация существующих кластеров | |||||
| Выбор окна обновления мажорной версии | н/д |
Ключевые принципы политики работы с версиями PostgreSQL
Политика работы с версиями PostgreSQL основывается на следующих ключевых принципах:
- Длительность поддержки. Каждая мажорная версия находится в состоянии
Актуальная (Actual)илиПоддерживаемая (Supported)в течение четырех лет. - Поэтапный вывод. На пятый год версия переходит в состояние
Устаревающая (Deprecated), и возможность создания новых кластеров этой версии PostgreSQL блокируется. - Повышенная стоимость. На шестой год версия переходит в состояние
Устаревшая (Legacy Extra Paid), и стоимость содержания кластера удваивается. - Завершение жизненного цикла. На шестой или седьмой год кластеры на неподдерживаемых версиях подвергаются принудительному обновлению до актуальной поддерживаемой версии или останавливаются.
Политика обновлений
Минорные обновления
Минорное обновление — это обновление минорной версии PostgreSQL (например, с версии 16.1 до версии 16.2). Минорные обновления включают в себя исправления ошибок и устранение уязвимостей и устанавливаются сервисом автоматически.
Минорное обновление требует перезагрузки кластера, что приводит к его кратковременной недоступности.
Мажорные обновления
Мажорное обновление — это обновление мажорной версии PostgreSQL (например, обновление с 15.x до 16.x). Мажорные обновления требуют ручного подтверждения пользователем. Это связано с потенциальными изменениями, требующими проверки совместимости приложений.
Для версий PostgreSQL в состояниях Поддерживаемая (Supported) и Устаревающая (Deprecated) вы можете самостоятельно выбрать окно для проведения обновления. Кластеры в состоянии Устаревшая (Legacy) обновляются сервисом принудительно в произвольный момент времени.
Уведомления
Сервис Managed Service for PostgreSQL заблаговременно отправляет уведомления о предстоящих изменениях:
- О переходе версии в статус
Устаревающая (Deprecated)(заблокировано создание новых кластеров). - О переходе версии в статус
Устаревшая (Legacy Extra Paid)(начало действия повышенного тарифа). - О запланированном принудительном обновлении кластеров в статусе
Устаревшая (Legacy)(за 30, 7 и 1 день).
Важно
Рекомендуется самостоятельно планировать обновление кластеров до момента перехода их версии в статус Устаревающая (Deprecated) или Устаревшая (Legacy). Это позволит выбрать наиболее удобное время для обслуживания, заранее убедиться в совместимости приложений с новой версией и избежать повышенных затрат или принудительного обновления.
Пример графика поддержки версий
Актуальный статус мажорных версий PostgreSQL основан на официальном графике поддержки
| Версия | Актуальная (Actual) | Поддерживаемая (Supported) | Устаревающая (Deprecated) | Устаревшая (Legacy) | Выведенная (EOL) |
|---|---|---|---|---|---|
| PostgreSQL 18 | 2025–2026 | 2025–2029 | 2030 | ~20312 | ~20322 |
| PostgreSQL 17 | — | 2024–2028 | 2029 | ~20302 | ~20312 |
| PostgreSQL 16 | — | 2023–2027 | 2028 | ~20292 | ~20302 |
| PostgreSQL 15 | — | 2022–2026 | 2027 | ~20282 | ~20292 |
| PostgreSQL 14 | — | — | 2026 | ~20272 | ~20282 |
2 Примерные даты приведены для наглядности. Точные сроки перехода между состояниями объявляются сервисом Managed Service for PostgreSQL отдельно.