Release notes for CloudNativePG 1.23 ==================================== CloudNativePGの1.23マイナーリリースのユーザーに表示される変更の履歴。 変更の完全なリストについては、 `commits `_ を参照してください。 GitHubのリリースブランチで。 バージョン1.23.6 ---------------- **発売日** 2024年12月23日 .. Warning:: これは、1.23.xシリーズの最後のリリースです。 1.23はサポートされなくなったため、新しいマイナーバージョンにアップグレードすることを強くお勧めします。   機能強化 ^^^^^^^^ - ``.spec.probes`` スタンザを介してスタートアップ、ライブネス、および準備状況プローブのカスタマイズを有効にします。 (#6266) - 事前定義されたユーザー、具体的には\ ``superuser`` および\ ``app`` 用に生成されたシークレットに\ ``cnpg.io/userType`` ラベルを追加します。 (#4392) - ScheduledBackupsの\ ``spec.schedule`` フィールドの検証が向上し、潜在的な構成ミスの警告が生成されます。 (#5396) - ``cnpg`` プラグイン - APIサーバーとのHTTP要求の\ ``User-Agent`` ヘッダーを尊重します。 (#6153) バグ修正 ^^^^^^^^ - レプリカとして再同期する前に、元のプライマリがWALファイルキューをアーカイブにフラッシュすることにより、復旧時間を削減し、フェールオーバー中のデータの一貫性を強化します。 (#6141) - ブートストラップ中に\ ``PGDATA`` ボリュームとともにWALボリュームをクリーンアップします。 (#6265) - 以前に生成された\ ``PersistentVolumeClaims`` がすべて欠落している場合、クラスターフェーズを\ ``Unrecoverable`` に設定するようにオペレーターを更新します。 (#6170) - ``.spec.postgresql.synchronous.method`` が\ ``first`` に設定されている場合の\ ``synchronous_standby_names`` GUCの解析を修正しました。 (#5955) - CRDステータスの特定の条件にパッチを適用する際の潜在的な競合状態を解決し、同時更新の信頼性を向上させます。 (#6328) - ロールの変更を修正して、データベースコンテキストではなくトランザクションレベルで適用します。 (#6064) - プライマリ上の\ ``override.conf`` ファイルから\ ``primary_slot_name`` 定義を削除して、常に空になるようにします。 (#6219) - PgBouncerポッドで\ ``PGHOST`` を含むlibpq環境変数を構成して、コンテナ内から\ ``psql`` を使用して\ ``pgbouncer`` 仮想データベースへのシームレスなアクセスを有効にします。 (#6247) - イメージカタログの変更を確認するときに、クラスターステータスの不要な更新を削除します。 (#6277) - 適切なバックアップ構成なしで外部サーバーからのリカバリー中のパニックを防止します。 (#6300) - 2つの異なる値のログに名前フィールドが一貫して使用されない、構造化ログのキー衝突の問題を解決しました。 (#6324) - SQLステートメントのinRolesフィールドの適切な引用符を確認して、ロール管理中に生成されたSQLの構文エラーを防ぎます。 (#6346) - ``cnpg`` プラグイン: - ``kubectl`` コンテキストが\ ``psql`` コマンドに適切に渡されることを確認します。 (#6257) - ``status`` コマンドで空のときに物理バックアップブロックを表示しないようにします。 (#5998) バージョン1.23.5 ---------------- **発売日** 2024年10月16日 .. _機能強化-1: 機能強化 ^^^^^^^^ - ``PGDATA`` ディレクトリ全体をスキャンしてデータベースサイズを計算することにより、リソース使用率が高くなる原因となったため、ステータスプローブから\ ``pg_database_size`` の使用を削除します。 ``kubectl status`` プラグインは\ ``du`` に依存して、詳細なサイズ情報の取得を提供するようになりました #5689 - PostgreSQLで\ ``full_page_writes`` パラメーターを構成する機能を追加します。この設定は、PostgreSQLの推奨事項#5516に従って、デフォルトの\ ``on`` です。 - プラグイン - ``cnpg`` プラグインに\ ``logs pretty`` コマンドを追加して、標準入力からログストリームを読み取り、人間が判読可能な形式で出力します。ログエントリをフィルタリングするオプションを使用します。 - 複数の\ ``-v`` オプションを増加できるようにして、\ ``status`` コマンドを機能強化します。 - ``pgadmin4`` プラグインコマンドの\ ``--image`` フラグを使用してカスタムDockerイメージを指定するサポートを追加し、ユーザーがpgAdmin4展開に使用されるDockerイメージを制御できるようにします #5515 修正 ^^^^ - プライマリを指定されたプライマリに降格する際の同時ステータス更新の問題を解決し、クラスターロールの変更中のよりスムーズな移行を保証します #5755 - 2つのインスタンスにスケールダウンするときにレプリカPodDisruptionBudgetPDBが削除されるようにし、レプリカをホストするノードのメンテナンスを簡単にします #5487 - インプレースリスタートよりも完全なロールアウトを優先します #5407 - 接続が失われた場合に二重フェイルオーバーが発生する可能性のある問題を修正します #5788 - ポッドとジョブの\ ``TMPDIR`` および\ ``PSQL_HISTORY`` 環境変数を正しく設定し、一時ファイルと履歴の管理を改善します #5503 - プラグイン - ``logs cluster`` コマンド#5775の競合状態を解決します。 - ``status`` プラグイン#5533で\ ``potential`` 同期ステータスを表示します。 - ``pgadmin4`` コマンドによって展開されたポッドに書き込み可能なホームがなかった問題を修正しますディレクトリ#5800。 サポートされているバージョン ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - PostgreSQL 17 PostgreSQL 17.0がデフォルトイメージです。 バージョン1.23.4 ---------------- **発売日** 2024年8月22日 .. _機能強化-2: 機能強化 ^^^^^^^^ - ``cnpg`` プラグインの更新 - ``--control-plane`` オプションを追加して\ ``install generate`` コマンドを強化し、ノードアフィニティと許容範囲を設定することによりコントロールプレーンノードにオペレーターの展開を許可します。 - ``destroy`` コマンドを強化して、に関連するジョブも削除しますターゲットインスタンス#5298。 .. _修正-1: 修正 ^^^^ - 同期レプリケーション自己修復チェックは、終了したポッドを除外し、アクティブで機能的なポッドにのみ焦点を当てます#5210。 - インスタンスマネージャーは、レプリカクラスター#5209のロールの変更に続いて、既存のすべてのオペレーター関連のレプリケーション接続を終了するようになりました。 - ``smartShutdownTimeout`` をゼロに設定して、即時高速シャットダウンを有効にし、必要に応じてスマートシャットダウンプロセスをバイパスできるようにします #5347 バージョン1.23.3 ---------------- **発売日** 2024年7月29日 .. _機能強化-3: 機能強化 ^^^^^^^^ - PostgreSQL 17の\ ``allow_alter_system`` パラメーターの透過的なサポートを追加し、 ``.spec.postgresql.enableAlterSystem`` オプションを介して\ ``ALTER SYSTEM`` コマンドを有効または無効にします #4921 - ``Cluster`` および\ ``Pooler`` リソースに\ ``reconcilePodSpec`` アノテーションを導入して、ポッド仕様の変更に続いてポッドのリスタートを制御します #5069 - ``Pooler`` メトリックコレクター#5044でPgBouncer 1.23で導入された新しいメトリックをサポートします。 .. _修正-2: 修正 ^^^^ - 終了されたが、エビクションプロセス中に削除されなかったポッドを検出するメカニズムを強化し、メンテナンスウィンドウ中にクリーンアッププロセスを拡張して、\ ``reusePVC`` フラグがfalseに設定されている場合にスケジュール不可のポッドを含めます#2056 - WALファイルに新しいシャットダウンチェックポイントエントリが導入されるのを回避するために、ブートストラップ中に VolumeSnapshotを使用する新しく作成されたレプリカの\ ``pg_rewind`` 実行を無効にします。これにより、レプリカは問題なくプライマリに再接続できます。それ以外の場合、追加のチェックポイントエントリ#5081によって妨げられます。 - 新しいインスタンスの初期化中の障害を正常に処理します。失敗した初期化からの残りのデータは、削除されるか、有効なPostgreSQLデータディレクトリである場合は、バックアップの場所に移動して、データ損失の可能性を回避します。 #5112 - 初期バックアップ失敗#4982時の再試行ロジックを実装することにより、即時バックアップリコンサイラーの堅牢性を強化します。 - ``postmaster`` を再度起動する前に、\ ``postmaster`` がシャットダウンするのを待ってください #4938 - ``Pooler`` サービステンプレートがデフォルトサービス#4846をオーバーライドできることを確認します。 - ``pg_database`` メトリックモニタリングとアラートプロセスから不変データベースを除外します#4980 - オペレーターサービスアカウント#4911から不要な権限を削除しました。 - ``ClusterImageCatalogs`` #5034のクラスターロール権限を修正します。 - オペレーターイメージがアップグレードされたときに、オペレーターが\ ``Pooler`` インスタンスのロールアウトを開始するように保証 #5006 - ``postmaster`` にアクセスできた場合でも、PostgreSQLの再起動後にreadness probeが誤って「notready」を表示する原因となる競合状態を修正しました #4920 - ``Pooler`` #4967 によって所有されていないリソースのリコンシリエーションを防止します。 - DNSサブジェクト代替名SANが更新されたときに、オペレーターが管理する証明書を更新します#3269、#3319。 - 未指定の場合にのみテンプレートにPVCデフォルト\ ``AccessModes`` を設定します #4845 - 満足できないバックアップスケジュール#5109を正常に処理します。 - ``cnpg`` プラグイン - ``status`` コマンドの実行中にエラーを適切に処理します。 - ``status`` コマンドでTLSをサポート#4915 バージョン1.23.2 ---------------- **発売日** 2024年6月12日 .. _機能強化-4: 機能強化 ^^^^^^^^ - 物理バックアップを使用したリカバリー中のスタンバイ依存パラメーターの構成を有効にしました #4564 - ``.spec.livenessProbeTimeout`` オプションを介したlivenessプローブタイムアウトの構成を有効にしました #4719 - ``kubectl`` : - の\ ``cnpg`` プラグイン ``--color`` オプションを追加することにより、プラグインでのANSIカラーのサポートを強化しました。これは、\ ``always`` 、\ ``never`` 、および\ ``auto`` デフォルトを受け入れます。#4775 - macOSユーザーのHomebrewでプラグインが利用できるようになりました。 #4602) .. _修正-3: 修正 ^^^^ - フェンスされたインスタンスが不要なループに入り、使用可能なすべてのCPUを消費するのを防ぎました #4625 - プライマリのインスタンスマネージャーが、停止操作に続いて障害が発生した後、インスタンスが起動するのを無期限に待機する問題を解決しました #4434 - ``hot_standby_feedback`` と管理対象クラスターレベルのレプリケーションスロット間の相互作用により、自動バキュームが正しく動作しない問題を修正しました。この問題は、ディスク領域がデッドタプルによって占有されたままになっている原因でした #4811 - ポッドコンテナのステータスが欠落しているときに発生したバックアップコントローラのパニックを修正しました #4765 - インスタンスマネージャーの不要なシャットダウンを防止 #4670 - PostgreSQL構成が変更されない場合の不必要なリロードを防止#4531 - コンテンツを書き込む一貫した一意の方法を保証することにより、identマップの不必要なリロードを防止しました #4648 - リソースのステータスを更新する代わりにパッチを適用することにより、フェーズ登録中の競合を回避しました #4637 - PostgreSQLを再起動し、フェンシングをリフティングするときにタイムアウトを実装しました #4504 - アーカイブモードを適切に設定するための昇格後にレプリカクラスターが再起動されるようにした #4399 - ボリュームスナップショットバックアップでランダムな障害を引き起こしていた不要なコンカレントキープアライブルーチンを削除しました #4768 - ``pgaudit.log_rows`` オプションが有効になっているときに返される追加行フィールドの正しい解析を保証し、監査ログが通常のログストリームに誤ってルーティングされるのを防ぎます #4394 - ``kubectl`` 用の\ ``cnpg`` プラグイン - ``cnpg status`` コマンドを使用したPDBのリストに関する問題を解決しました #4530 変更 ^^^^ - デフォルトのオペランドイメージをPostgreSQL 16.3に設定した#4584 - 名前空間オブジェクトのすべてのRBAC要件を削除しました #4753 バージョン1.23.1 ---------------- **発売日** 2024年4月29日 .. _修正-4: 修正 ^^^^ - 回帰のために失敗していた\ ``PodMonitor`` リソースのリコンシリエーションを修正します #4286 バージョン1.23.0 ---------------- **発売日** 2024年4月24日 .. Note:: サポートポリシーを更新して、一度に2つではなく1つのサポートされているマイナーリリースに焦点を合理化しました。さらに、以前のマイナーリリースの補助サポート期間を3か月に延長しました。   機能 ^^^^ - **PostgreSQLイメージカタログ** PostgreSQLメジャーバージョンに基づいてオペランドコンテナイメージを管理するための\ ``ClusterImageCatalog`` および\ ``ImageCatalog`` CRDを導入しました。これは、\ ``Cluster`` の\ ``.spec.imageCatalogRef stanza`` を介して促進されます。この機能は、imageNameオプションの代替を提供し、最終的にオペランドコンテナイメージを定義するデフォルトの方法として置き換えます。 - **ユーザー定義のレプリケーションスロット** 物理的レプリケーションスロットの同期を強化して、新しく導入されたスタンザ ``replicationSlots.synchronizeReplicas`` を介して、プライマリのユーザー定義のレプリケーションスロットをカバーします。 - **ポッド中断バジェットPDBの構成** ``.spec.enablePDB`` フィールドを導入して、プライマリインスタンスでPDBを無効にし、メンテナンス操作中にポッドの適切なエビクションを可能にします。これは、単一インスタンスの展開に特に役立ちます。この機能は、ノードのメンテナンスウィンドウ機能を置き換えることを目的としています。 .. _機能強化-5: 機能強化 ^^^^^^^^ - ユーザーは既存のクラスターをレプリカモードに移行し、クロスデータセンターのスイッチオーバー操作を簡素化できる機能を備えています #4261 - ユーザーは、タイプ、ラベル、注釈を含む接続プーラーサービスをカスタマイズできるようになりました #3384 - ユーザーは\ ``wal_log_hints`` PostgreSQLパラメーターを構成できるようになりました #4218 #4218 - 自動的に生成されたシークレットのURIの完全修飾ドメイン名FQDN #4095 - クラスターの復元中にクラスターが所有していないインスタンスポッドのクリーンアップ #4141 - PDBのステータスを表示するプラグインの\ ``status`` コマンドのコマンド出力 #4319 - ``recovery`` ブートストラップで\ ``barman-cloud-wal-restore`` を呼び出す際のエラー検出 #4101 .. _修正-5: 修正 ^^^^ - スイッチオーバーの前に、選択されたレプリカがストリーミングレプリケーションにあることを確認しました #4288 - インスタンスのLSNをソートするときにその解析エラーを正しく処理する #4283 - 昇格できる正常なスタンバイがない場合は、プライマリポッドを再作成します #4132 - リストアジョブが失敗した場合の\ ``PGDATA`` のクリーンアップ #4151 - 構成の更新時に証明書をリロードします #3705 - ``kubectl`` の\ ``cnpg`` プラグイン - ``destroy`` 、\ ``fencing`` 、および\ ``promote`` プラグインコマンドの引数処理を改善します#4280 - ``cnpg status`` のバックアップの進行状況のパーセンテージを正しく処理します#4131 - 13b_tranにシーケンスのないデータベース - #4346) 変更点 ^^^^^^ - オペレーターイメージが\ ``gcr.io/distroless/static-debian12:nonroot`` #4201 - Grafanaダッシュボードは次の場所にあります。 https://github.com/cloudnative-pg/grafana-dashboards #4154