CloudNativePG
v1.30.0Storage & Data쿠버네티스와 PostgreSQL 기능을 확장하고 검증 및 호환성 동작을 조정한 릴리스입니다. 기본값 변경과 보안 및 정확성 수정도 포함되어 관련 기능을 사용하는 환경에 영향을 줄 수 있습니다.
조치 필요 (3)
securitycritical풀링 연결의
search_path고정운영자가 모든 풀링 연결에서
search_path = pg_catalog, public, pg_temp를 고정합니다. 이 수정은 CVE-2026-55769 및 GHSA-x8c2-3p4r-v9r6와 관련됩니다.securityhigh역할 비밀번호의
SCRAM-SHA-256인코딩운영자가 평문 역할 비밀번호를
SCRAM-SHA-256으로 인코딩합니다. 이 수정은 CVE-2026-55765, GHSA-w3gf-xc94-wvmj 및cnpg.와 관련됩니다.io/passwordPassthrough security인증서 없는 민감한 엔드포인트 요청 거부
인스턴스 관리자가 일치하는 인증서를 제시하지 않은 요청을 민감한 엔드포인트에 전달하지 않고 거부합니다. 관련 보안 권고 식별자는 GHSA-7qwx-x8ff-3px9입니다.
영향 확인 (1)
breaking리소스의
cluster참조 변경 불가cluster를 구성하는 경우에 적용됩니다.cluster참조가Database,Pooler,Publication,Subscription,ScheduledBackup리소스에서 변경되지 않도록 고정됩니다.
미리 준비 (2)
deprecated
native (in-tree) Barman Cloud support제거 시점 연기1.31.0에서 제거 예정native (in-tree) Barman Cloud support를 사용하는 경우에 적용됩니다.native (in-tree) Barman Cloud support의 제거 시점이 CloudNativePG 1.30.0에서 1.31.0으로 연기됩니다.Barman Cloud Plugin으로 전환할 수 있는 기간이 한 버전 더 유지됩니다.deprecated
status.사용 중단latestGeneratedNode status.를 사용하는 경우에 적용됩니다.latestGeneratedNode status.가 사용 중단 필드로 지정되었습니다.latestGeneratedNode
그 외 기록된 변경 48건 전체fixes 33 · additions 9 · value changes 4 · constraints 2
fixes (33)
- validation failures are surfaced in the resource status instead of failing silently later
- Fixed declarative
Database,Publication, andSubscriptionobjects reporting a stale primary-side status forever - Fixed non-sequential pod names
- Fixed deletion of a
Database,Publication, orSubscriptiongetting stuck inTerminating - Fixed a conflicting duplicate
DatabaseorSubscriptionwith adeletereclaim policy dropping the PostgreSQL object owned by the surviving CR - Fixed the
postgressuperuser being left locked out - Fixed backups getting stuck in the
startedphase - Fixed
exec/attachstreaming to negotiate WebSocket with a SPDY fallback - Fixed resource leaks when concurrent
Backupobjects raced - Fixed role reconciliation clearing the password on a PostgreSQL role when the referenced Secret could not be fetched
- Fixed a
ScheduledBackupcontroller loop - Fixed a nil-pointer panic when reconciling a
PoolerwhoseClusterhas been deleted. - Fixed bootstrap log handling so that all named log pipes (
postgres,postgres., andcsv postgres.) get consumersjson - Fixed generation of invalid IPv6 URLs by wrapping the address in square brackets.
- Fixed an external cluster plugin still being treated as active when its configuration set
enabled: false. - Fixed a race during bootstrap recovery from an object store
- Fixed a race where deleting an instance's PVCs could leave the instance permanently stuck
- Fixed a cache race during cluster creation
- Fixed the
pg_basebackupbootstrap path overwriting or failing on a pre-existingPGDATA - Fixed the
Clusterphase flapping betweenHealthyand a plugin-failure phase - Fixed stale certificate data and partial reads after an external server's Secret was rotated
- Fixed plugin connectivity to use the plugin
ServiceFQDN instead of its short name - Fixed excessive operator log noise
- Fixed
spec.accepting keys that are not valid PostgreSQL parameter namespostgresql. parameters - Fixed a switchover deadlock when a WAL-archiver plugin was enabled on an existing cluster
- Fixed a cluster staying in
Setting up primaryindefinitely - Fixed a first-primary bootstrap deadlock
- these values are now rejected at the validating webhook and re-checked at the write site
- Fixed a backup getting stuck in
pendingforever - Fixed a declarative
VolumeSnapshotbackup being permanently marked as failed - Fixed a volume snapshot backup being discarded on a transient instance-manager connection error
- Fixed a replica switchover losing its
status.demotionToken - The metrics-exporter step now runs in a separate transaction.
additions (9)
- introduced a Kubernetes
Leaseobject (named after the cluster) that acts as a mutex serializing primary promotion - introduced a
DatabaseRolecustom resource that manages a PostgreSQL role as a standalone Kubernetes object - a
DatabaseRolecan now include aclientCertificateblock - through the new
spec.fieldpgbouncer. imageCatalogRef - Added TLS support for the
Poolermetrics endpoint via..spec. monitoring. tls. enabled - Added a label selector to the
Clusterscale subresource (status.)selector - now emits a
WarningPrimaryStatusCheckFailedevent on theCluster - Added the
ENABLE_WEBHOOK_NAMESPACE_SUFFIXflag - A new
Initializedcluster condition reports whether the cluster has completed its first bootstrap
value changes (4)
- The operator now reloads a CNPG-i plugin automatically when its pods are rolled
- Pod and PVC names stay stable across instance recreation
- Updated the default PostgreSQL version to 18.4.
- PostgreSQL 18.4 is the default image - PostgreSQL 14 support ends on November 12, 2026
constraints (2)
- Enabled
pg_upgradein-place major upgrades to PostgreSQL 19 or later - Added support for Kubernetes 1.36.
조치가 필요한 릴리스가 나왔을 때 주간 메일로 알려드립니다. 이번 릴리스의 보안 패치와 브레이킹 체인지 같은 것들입니다.