CloudNativePG 1.21のリリースノート#
CloudNativePGの1.21マイナーリリースのユーザーに表示される変更の履歴。
変更の完全なリストについては、 commits を参照してください。
GitHubのリリースブランチで。
バージョン1.21.0#
発売日 2023年10月11日
特徴
バックアップとリカバリーのボリュームスナップショットのサポート ボリュームスナップショットで標準のKubernetes APIを活用して、バックアップとリカバリー操作の両方でインクリメンタルおよび差分コピーなどの機能を利用します。スタンバイからのコールドバックアップをカバーするこの最初のステップは、1.22でも継続され、PostgreSQL APIとテーブルスペースを使用したホットバックアップのサポートになります。
OLMインストール方法 stable チャネルを介して最新のマイナーリリースの最新パッチバージョンのOperatorHub.ioを介してOperator Lifecycle Managerのサポートを導入します。 「EDB Postgres for Kubernetes 」オペレーターのバンドルを寄付し、CloudNativePGに適応させてくださったEDBに感謝します。
重要な変更
stopDelayのデフォルト値を30秒ではなく1800秒に変更します #2848Postgresのスマートシャットダウンが完了するために予約された時間枠を制御するための
smartShutdownTimeoutと呼ばれる新しいパラメーターを導入します。 Postgresを停止するまでの全体的なタイムアウトを計算する一般的な式はmax(stopDelay - smartShutdownTimeout, 30)#2848startDelayのデフォルト値を30秒ではなく3600に変更します #2847livenessProbeの初期遅延をより適切なKubernetes起動プローブに置き換えて、Postgresサーバーの起動に対処する #2847
switchoverDelayのデフォルト値を40000000秒ではなく3600秒に変更します #2846セキュリティのためにデフォルトでスーパーユーザーアクセスを無効にする #2905
デフォルトでHAのレプリケーションスロットを有効にする #2903
postgresqllabelのサポートを停止します - 1.18のcnpg.io/clusterに置き換えられました#2744
セキュリティ
デフォルトの
seccompProfileをオペレーター展開に追加します #2926
機能強化
ボリュームスナップショットの一貫したセットからのレプリカクラスターのブートストラップを有効にする #2647
一貫したボリュームスナップショットのセットからの完全なポイントインタイムリカバリーを有効にする #2390
cnpg.io/coredumpFilterアノテーションを導入して、PostgreSQLクラッシュが発生した場合に生成されるコアダンプの内容を制御します。デフォルトでは、ダンプから共有メモリセグメントを除外するように設定されています #2733共有メモリと一時データのエフェメラルボリュームのエフェメラルストレージ制限を構成できます #2830
Webhookを介したリソース制限と要求を検証する #2663
PostgreSQLの
shared_buffersがポッドの割り当てられたメモリリソースとコヒーレントであることを確認します #2840資格情報シークレットに
uriおよびjdbc-uriフィールドを追加して、開発者がアプリケーションをデータベースに接続するときに容易にします #2186レプリカの準備が整うのを待機するクラスターの状態をより詳細に制御するための新しいフェーズ
Waiting for the instances to become activeを追加します #2612podSpecアノテーションを介したポッドのロールアウト条件の検出を向上させます #2243プライマリタイムスタンプとアップタイムをkubectlプラグインの
statusコマンドに追加します #2953
修正
プライマリロールで準備ができているPVCを優先することにより、プライマリインスタンスが常に最初に再作成されるようにします #2544
リカバリー中に
cnpg.io/skipEmptyWalArchiveCheckアノテーションを尊重して、空のWALアーカイブのチェックをバイパスします #2731PostgreSQLサーバーはダウンしているが、ポッドがプライマリでアップしているときに、クラスターがスタックするのを防ぐ #2966
レプリケーションスロットが有効になっているときに、レプリカクラスターの指定されたプライマリを通常のHAレプリカとして扱わないようにします #2960
セレクターが変更されるたび、またはラベル/注釈を変更する必要がある場合にサービスを調整します #2918
リカバリブートストラップ中に所有者とデータベースの両方をデフォルト
appに設定する #2957キャッシュされたクラスターでの書き込み-読み取りの同時実行を回避する #2884
空の項目を削除し、一意に作成し、生成されたロールの
ResourceNameセクションでソート #2875エラーが発生した場合に、
ContinuousArchiving条件が適切に’failed’に設定されていることを確認します #2625バックアップが完了または失敗した場合にのみ停止することにより、中断に対する
Backupリソース調整サイクルの復元力を高めます #2591PodMonitor
labelsおよびannotationsを調整する #2583RoleオブジェクトのRBACresourceNamesの欠落によるバックアップ失敗を修正しました #2956可観測性
TCPポートラベルをデフォルトの
pg_stat_replicationメトリック#2961に追加します - Prometheusのpg_wal_statデフォルトメトリックを修正します#2569 - Prometheusのpg_replicationデフォルトメトリック#2744および#2750を改善します -提供されたGrafanaでalertNameの代わりにalertInstanceLabelFilterを使用しますダッシュボード - メトリック収集でstandard_conforming_stringsを適用する #2888
変更点
デフォルトのオペランドイメージをPostgreSQL 16.0に設定します
フェンシングは、スマートシャットダウンの代わりにPostgreSQLの高速シャットダウンを使用してインスタンスを停止するようになりました #3051
Webhookの名前をkb.ioからcnpg.ioグループに変更します #2851
kubectlプラグインのcnpg snapshotコマンドをcnpg backup -m volumeSnapshotに置き換えますcnpg hibernateプラグインコマンドでPVCのClusterManifestAnnotationNameおよびPgControldataAnnotationNameアノテーションを使用させましょう #2657cnpg.io/instanceRoleラベルを追加しますが、既存のroleラベルを非推奨にします #2915
技術的な強化
APIリファレンスドキュメントを自動的にビルドするように
k8s-api-docgenをgen-crd-api-reference-docsに置き換えます #2606