CloudNativePG
v1.28.0Storage & Data2025年12月9日
宣言的な管理とセキュリティ設定を追加し、既定値の変更、対応操作の拡張、正確性の修正を含みます。設定や運用に関わる変更が含まれるため、利用中の機能に応じて確認が必要なリリースです。
影響確認 (3)
breakingレプリカインスタンスのネットワーク障害検知と
tcp_user_timeoutの既定値レプリカインスタンスを実行している場合に適用されます。
レプリカインスタンスのネットワーク障害検知を改善するため、
tcp_user_timeoutの既定値を5秒に設定しました。breakingセキュリティ設定の適用範囲を細分化
postgresまたはoperatorを設定している場合に適用されます。従来のクラスタ全体の
postgresとoperatorのユーザー設定に代えて、securityContextとcontainerSecurityContextによるきめ細かなセキュリティ設定に変更しました。breakingPgBouncerの
auth_dbnameの既定値変更PgBouncerを使用している場合に適用されます。
PgBouncerとの連携を改善し、
auth_dbnameをpgbouncerデータベースに自動設定するよう変更しました。認証設定が簡素化されます。
その他の記録済み変更 30 件すべてadditions 10 · fixes 9 · value changes 6 · constraints 4 · renames 1
additions (10)
- Introduced comprehensive declarative management for Foreign Data Wrappers (FDW) by extending the
DatabaseCRD. This feature adds the.andspec. fdws .fields, allowing you to manage FDW extensions and their corresponding foreign servers directly from thespec. servers Databaseresource. - Introduced
securityContextat the pod level andcontainerSecurityContextfor individual containers (includingpostgres,init, and sidecars). - Introduced the
alpha.annotation for replica pods.cnpg. io/unrecoverable=true - Introduced a new caching layer for user-defined monitoring queries to reduce load on the PostgreSQL database.
- Allowed providing stage-specific
pg_restoreoptions (preRestore,postRestore,dataRestore) during database import. - Added the PostgreSQL
majorVersionto theBackupobject's status for easier identification and management. - Added the
PGBOUNCER_IMAGE_NAMEoperator configuration parameter to allow overriding the default PgBouncer image. - Added a
--timeoutflag to thekubectl cnpg statuscommand for configuring the timeout for filesystem operations such as calculating cluster size. - Allowed providing fine-grained custom TLS configurations for PgBouncer. The
PoolerCRD was extended withclientTLSSecret,clientCASecret,serverTLSSecret, andserverCASecretfields under..spec. pgbouncer - Added optional TLS support for the operator's metrics server (port 8080). This feature is opt-in and enabled by setting the
METRICS_CERT_DIRenvironment variable, which instructs the operator to look fortls.andcrt tls.files in the specified directory.key
fixes (9)
- Improved resilience of all probe types (liveness, readiness, and startup) to transient Kubernetes API server connectivity issues.
- Fixed the
CheckEmptyWalArchivesafeguard to run correctly when restoring from a volume snapshot using CNPG-I backup/WAL plugins (e.g.,plugin-barman-cloud). - Improved error reporting when ImageCatalog retrieval fails.
- Fixed TLS certificate verification issues when connecting to CNPG-I plugins by adding the
cnpg.annotation.io/pluginServerName - Fixed an issue where the instance manager controller could fail to restart after an error, reporting a "controller already exists" message.
- Fixed incorrect WAL restore path handling in plugins when the destination path is absolute, preventing path duplication issues.
- Fixed the
CREATE PUBLICATIONSQL generation for multi-table publications to be backward-compatible with PostgreSQL 13+. - Fixed backup failures in complex pod definitions by reliably selecting the
postgrescontainer by name instead of by index. - Fixed bugs in
cnpg reportlog collection, especially when fetching previous logs.
value changes (6)
- Promoted the quorum-based failover feature, introduced experimentally in 1.27.0, to a stable API.
- Updated the default PostgreSQL version to
18..1-system-trixie - Updated the default PgBouncer version to **1.25.1** for new
Poolerdeployments. - Adopted standard Kubernetes recommended labels (e.g.,
app.) for all resources generated by CloudNativePG (Clusters, Backups, Poolers, etc.).kubernetes. io/name - Enhanced cluster restore to wait for all init containers to complete before starting the restore process.
- Improved
cnpg reportto generate more shell-friendly file names.
constraints (4)
- Enabled simultaneous image and configuration changes when using
primaryUpdateMethod: restart, allowing you to update the container image (including PostgreSQL version or extensions) and PostgreSQL configuration settings in the same operation. - Enabled
cnpg report operatorto work with minimal permissions by making only the operator deployment required. - Kubernetes 1.34, 1.33, and 1.32
- PostgreSQL 18, 17, 16, 15, and 14 - PostgreSQL 18.1 is the default image
renames (1)
- This data-driven failover mechanism is now configured via the
spec.field, graduating from the previouspostgresql. synchronous. failoverQuorum alpha.annotation.cnpg. io/failoverQuorum
CloudNativePGをスタックに追加
対応が必要なリリースが出たときに、週次メールでお知らせします。 今回の破壊的変更も、その一例です。