Release notes for CloudNativePG 1.15

CloudNativePGの1.15マイナーリリースのユーザーに表示される変更の履歴。

変更の完全なリストについては、 commits を参照してください。

GitHubのリリースブランチで。

警告

これは、1.15.Xシリーズの最後のリリースになる予定です。 ユーザーは、すぐに新しいマイナーバージョンに更新することをお勧めします。

バージョン1.15.5

発売日 2022年10月6日

機能強化

  • コントローラマネージャーにleaseDuration およびrenewDeadline パラメーターを導入して、オペレーター展開でのリーダー選択の構成を強化します #759

  • 初めてWALファイルをアーカイブする前に、バックアップオブジェクトストアが空であることを確認するメカニズムを改善します。正常にアーカイブされました

セキュリティ

  • nonroot:nonroot ユーザーを使用して、distroless/static:nonroot コンテナイメージにコピーされるインスタンスマネージャーバイナリの権限を明示的に設定します #754

修正

  • クラスターの条件をmetav1.Conditions 構造体と互換性のあるものにする#720

  • プライマリに昇格した後、スタンバイでアクティブな接続をドロップします #737

  • ネイティブPrometheusエクスポーターでのMAPPEDMETRIC およびDURATION メトリックタイプの変換を尊重します #765

バージョン1.15.4

発売日 2022年9月6日

機能強化

  • PgBouncer接続プーラー実装での下位ネットワークTCP設定の構成を有効にする#584

  • cnpg.io/instanceName およびcnpg.io/podRole ラベルが常にポッドとPVCに存在することを確認します#632および#680

  • インスタンスのrole ラベルを基になるPVCに伝播する #634

修正

  • 別のプロセスが進行中であるかどうかをアトミックにチェックすることにより、オペレーターの複数のインプレースアップグレードプロセスが同時に実行されないようにします #655

  • 新しくアップロードされたインスタンスマネージャーを保存するためのハードコードされたファイル名の使用を避け、オペレーターのオンラインアップグレード中に発生する可能性のある競合状態を防止します。 #660

  • GetAllAccessibleDatabases 呼び出し時にパニックが発生しないようにします#641

バージョン1.15.3

発売日 2022年8月12日

機能強化

  • PostgreSQLのhuge_pages オプションの構成を有効にする#456

  • 昇格と降格中の、フェールオーバーまたはスイッチオーバー後の、昇格の要求と書き込みの実際の可用性の間で経過時間を印刷することにより、ログを強化します#371

  • instanceName およびclusterName ラベルをジョブ、ポッド、およびPVCに追加して、これらのリソースとの相互作用を向上させます #534

  • PostGISクラスターを作成する方法に関する説明を追加します #570

セキュリティ

  • securityContextPooler 展開に明示的に割り当てます #485

  • 読み取りタイムアウト値を内部Webサーバーに追加して、Slowloris DDoSを防止します #437

修正

  • 再起動 stopDelay とスイッチオーバー switchoverDelay は、以前に誤ってスワップされたため、正しい遅延を使用します。 switchoverDelay が設定されず、デフォルト値40000000秒を使用する場合、無期限に再起動をブロックする可能性があるため、これは重要な修正です。#531

  • クエリがエラーを返したときにメトリックコレクターがパニックを発生させないようにしました #396

  • 未チェックのポインターを参照していた安全でないデバッグメッセージを削除し、場合によっては、ログレベルに関係なくセグメンテーションフォールトを発生させます #491

  • クラスターにアノテーションがない場合、フェンシング時のパニックを防止#512

  • TLS証明書が変更されない場合は、CRDの更新を回避する #501

  • CRDに証明書を挿入しながら競合を処理する #547

  • バックアップとリカバリー - Google Cloudでオブジェクトストアの資格情報を正しく渡す #454

マイナーな変更

  • デフォルトのオペランドイメージをPostgreSQL 15.0に設定します

バージョン1.15.2

リリース日 2022年7月7日パッチリリース

機能強化

  • スイッチオーバーとフェイルオーバー中のインスタンスマネージャーのログを改善します

  • バックアップとリカバリーでのPostgreSQL 15の将来のサポートにはBarman > = 3.0.0が必要です

変更点

  • デフォルトのオペランドイメージをPostgreSQL 15.0に設定します

修正

  • PostgreSQLサーバーのCSVログパイプを開始するWithActiveInstance ファンクション内の初期化順序を修正し、クラスター初期化フェーズでの適切なロギングを保証します。これは、バックアップからのリカバリーのようなブートストラップ操作が失敗している場合に特に役立ちますこのパッチの前には、このようなログ標準出力チャンネルに送信されず、永久に失われました)

  • ホットスタンバイの依存パラメーターが減少し、プライマリが既に再起動している場合、不必要なスイッチオーバーを回避します

  • ALTER ROLE ステートメントでロール名を適切に引用符で囲む

  • バックアップとリカバリー

    • 要求されたリカバリタイムスタンプとバックアップの開始とを比較していたPITRの最も近いBarmanバックアップを検出するアルゴリズムを修正しますb_tran_9 トランザクションID、名前付けリストアポイント、またはrecoveryTarget セクションにbackupID と呼ばれる新しいフィールドを提供することにより「即時」ターゲット

    • barman-cloud-wal-archive およびbarman-cloud-backup コマンドを呼び出す暗号化パラメーターを修正します

    • 現在のクラスター名と一致しないサーバー名を使用してバックアップオブジェクトストアからリカバリするときにbarmanObjectStore.serverName オプションを無視するのをやめる

  • cnpg プラグイン

    • プラグインがuser

    • で指定されたときに-n パラメーターに準拠していることを確認します status コマンドを修正して結果をソートし、出力のばらつきを削除します

バージョン1.15.1

リリース日 2022年5月27日パッチリリース

マイナーな変更

  • PostgreSQLのarchive_timeout 設定の構成を有効にします。これは以前は固定パラメーターでしたデフォルトで5分に設定

  • scheduledBackup リソースにbackupOwnerReference と呼ばれる新しいフィールドを導入して、作成したバックアップリソースの所有権参照を設定します。使用可能な値はnone デフォルト、self スケジュールされたバックアップオブジェクトが所有するオブジェクト、およびcluster Postgresクラスターが所有オブジェクト)

  • ネイティブPrometheusエクスポーターにPostgreSQL 14以降のpg_stat_wal メトリックの自動収集を導入します

  • デフォルトのオペランドイメージをPostgreSQL 15.0に設定します

修正

  • postgres に関連する孤立したプロセスを強制終了してフェンシングを修正する

  • WithActiveInstance ファンクション内のCSVログパイプを有効にして、リカバリブートストラップジョブからログを収集し、トラブルシューティングフェーズに役立ちます

  • 空ではないバックアップオブジェクトストアを使用した新しいクラスターのブートストラップを防止し、既存のバックアップを上書きするリスクを排除します

  • recovery ブートストラップ方法では、既存のバックアップが上書きされないように、リカバリオブジェクトストアとバックアップオブジェクトストアが異なることを確認します

  • バックアップのRBACがまだ作成されていない場合、調整ループを再キューイングします

  • バックアップに関する問題と、クラスター名プロパティの誤った仕様を修正します

  • 複数のレプリカを使用した高可用性のオペレーターの展開の場合、オペレーターポッドが常に最新の証明書を持つように保証

  • cnpg report operator コマンドを修正して、複数のレプリカを使用した高可用性のオペレーターの展開の場合を正しく処理する

  • クラスターのinheritedMetadata ラベルとアノテーションの変更を、再起動を必要とせずにクラスターの関連リソースに適切に伝播します

  • デフォルト値だけに依存するのではなく、オペレーターの展開で定義されたカスタム構成マップとシークレット名を正しく解析するようにcnpg プラグインを修正

  • mkdocsminidocks/mkdocs イメージを使用して、ドキュメントのローカルビルドを修正

バージョン1.15.0

発売日 2022年4月21日

特徴

  • フェンシング cnpg.io/fencedInstances アノテーションを介したクラスターまたは特定のPostgreSQLインスタンスのフェンシング機能の導入。空でない場合、クラスター内のスイッチオーバー/フェールオーバーを無効にします。フェンスされたインスタンスはシャットダウンされ、ポッドは検査と緊急事態に備えて準備ができていないと考えられて実行され続けます。

  • LDAP認証 pg_hba.conf のLDAP Simple BindおよびSearch+Bind構成オプションをPostgresクラスター仕様で宣言的に定義できるようにし、 ldapbindpasswd などの機密オプションにKubernetesシークレットのオプションで使用を有効にします

  • primaryUpdateMethod オプションの導入、 switchover デフォルトとrestart の値を受け入れ、教師なしprimaryUpdateStrategy の場合に使用されます。このメソッドは、ローリング更新プロシージャ中にプライマリインスタンスに何が起こるかを制御します

  • オペレーターと特定のPostgresクラスターの両方の診断とより効果的なトラブルシューティングを行うためのkubectl cnp プラグインの新しいreport コマンド

  • バックアップオブジェクトストアにないBackup オブジェクトをプルーニング

  • ポイントインタイムリカバリーブートストラップ方式でのターゲットタイムラインとLSN の仕様

  • sessionToken オプションを介したAWS S3でのAWS_SESSION_TOKEN 認証トークンのサポート

  • quay.io/enterprisedb/pgbouncer:1.17.0 に設定されたPooler ポッドのPgBouncerのデフォルトのイメージ名

修正

  • 以前は、使用可能な最新のバックアップより前のターゲットが不可能であったため、 targetTime を介したポイントインタイムリカバリーのベースバックアップ検出が正しく機能するようになりました。検出アルゴリズムは、開始点として最後のバックアップを選択することにより常に間違っていました。

  • オペレーターがpg_controldata から収集した値に依存することにより、ホットスタンバイの影響を受けやすいパラメーターの復元力が向上しました

  • 無効な証明書エラーをスローする代わりに、無効なエントリを適切に破棄することにより、中間証明書の処理が改善されました

  • データベース内のPrometheusエクスポーターメトリック収集クエリーがロールバックの代わりにコミットされるようになりましたこれにより、ダウンストリームダッシュボードから可視されるロールバックトランザクションの数が変更される場合があります該当する場合

バージョン1.15.0は、CloudNativePGの最初のリリースです。以前は、このソフトウェアはEDB Cloud Native PostgreSQL現在はEDB Postgres for Kubernetesと呼ばれていました。以前のリリースに関する情報をお探しの場合は、 EDB documentation を参照してください。