CloudNativePGの1.20.2がリリースされたようなのでアップグレード。
Upgrading Operator
1.20.2のoperator manifestを適用。
kubectl apply -f https://raw.githubusercontent.com/cloudnative-pg/cloudnative-pg/release-1.20/releases/cnpg-1.20.2.yaml
namespace/cnpg-system unchanged
customresourcedefinition.apiextensions.k8s.io/backups.postgresql.cnpg.io configured
customresourcedefinition.apiextensions.k8s.io/clusters.postgresql.cnpg.io configured
customresourcedefinition.apiextensions.k8s.io/poolers.postgresql.cnpg.io configured
customresourcedefinition.apiextensions.k8s.io/scheduledbackups.postgresql.cnpg.io configured
serviceaccount/cnpg-manager unchanged
clusterrole.rbac.authorization.k8s.io/cnpg-manager unchanged
clusterrolebinding.rbac.authorization.k8s.io/cnpg-manager-rolebinding unchanged
configmap/cnpg-default-monitoring unchanged
service/cnpg-webhook-service unchanged
deployment.apps/cnpg-controller-manager configured
mutatingwebhookconfiguration.admissionregistration.k8s.io/cnpg-mutating-webhook-configuration configured
validatingwebhookconfiguration.admissionregistration.k8s.io/cnpg-validating-webhook-configuration configured
Operatorがアップグレードされると、PostgreSQL Clusterも自動的にアップグレードされる。
Cluster Summary
Name: cnpg1
Namespace: cnpg
System ID: 7236262496654274579
PostgreSQL Image: ghcr.io/cloudnative-pg/postgresql:15.3
Primary instance: cnpg1-1
Status: Upgrading cluster Restarting instance cnpg1-2, because: the instance is using an old init container image: ghcr.io/cloudnative-pg/cloudnative-pg:1.20.1 -> ghcr.io/cloudnative-pg/cloudnative-pg:1.20.2
Instances: 2
Ready instances: 1
Current Write LSN: 55/7A0071D0 (Timeline: 7 - WAL File: 00000007000000550000007A)
アップグレード完了後のステータス。
Cluster Summary
Name: cnpg1
Namespace: cnpg
System ID: 7236262496654274579
PostgreSQL Image: ghcr.io/cloudnative-pg/postgresql:15.3
Primary instance: cnpg1-1
Status: Cluster in healthy state
Instances: 2
Ready instances: 2
Current Write LSN: 55/7E005620 (Timeline: 7 - WAL File: 00000007000000550000007E)
Certificates Status
Certificate Name Expiration Date Days Left Until Expiration
---------------- --------------- --------------------------
cnpg1-ca 2023-08-21 06:28:56 +0000 UTC 14.01
cnpg1-replication 2023-08-21 06:28:56 +0000 UTC 14.01
cnpg1-server 2023-08-21 06:28:56 +0000 UTC 14.01
Continuous Backup status
First Point of Recoverability: 2023-06-29T23:50:22Z
Working WAL archiving: OK
WALs waiting to be archived: 0
Last Archived WAL: 00000007000000550000007D @ 2023-08-07T06:14:27.173597Z
Last Failed WAL: -
Streaming Replication status
Name Sent LSN Write LSN Flush LSN Replay LSN Write Lag Flush Lag Replay Lag State Sync State Sync Priority
---- -------- --------- --------- ---------- --------- --------- ---------- ----- ---------- -------------
cnpg1-2 55/7E005620 55/7E005620 55/7E005620 55/7E005620 00:00:00 00:00:00 00:00:00 streaming quorum 1
Unmanaged Replication Slot Status
No unmanaged replication slots found
Instances status
Name Database Size Current LSN Replication role Status QoS Manager Version Node
---- ------------- ----------- ---------------- ------ --- --------------- ----
cnpg1-1 67 MB 55/7E005620 Primary OK BestEffort 1.20.2 dok8s-pool-yn8rk
cnpg1-2 67 MB 55/7E005620 Standby (sync) OK BestEffort 1.20.2 dok8s-pool-yn8rh
Upgrading Grafana Dashboard
モニタリング用のGrafana Dashboardをアップグレード。
kubectl -n monitoring apply -f https://raw.githubusercontent.com/cloudnative-pg/cloudnative-pg/main/docs/src/samples/monitoring/grafana-configmap.yaml
Overviewが追加されている。

Upgrading CNPG Client module
curl -sSfL https://github.com/cloudnative-pg/cloudnative-pg/raw/main/hack/install-cnpg-plugin.sh | sudo sh -s -- -b /usr/local/bin
cloudnative-pg/cloudnative-pg info checking GitHub for latest tag
cloudnative-pg/cloudnative-pg info found version: 1.20.2 for v1.20.2/darwin/arm64
cloudnative-pg/cloudnative-pg info installed /usr/local/bin/kubectl-cnpg