Release notes for CloudNativePG 1.18
CloudNativePGの1.18マイナーリリースのユーザーに表示される変更の履歴。
変更の完全なリストについては、 commits を参照してください。
GitHubのリリースブランチで。
バージョン1.18.5
発売日 2023年6月12日
警告
これは、1.18.Xシリーズの最後のリリースになる予定です。 ユーザーは、すぐに新しいマイナーバージョンに更新することをお勧めします。
機能強化
snapshotコマンドをcnpgプラグインに追加して、KubernetesVolumeSnapshot標準リソースを使用してスタンバイからクラスターの一貫したコールドバックアップを作成します #1960.spec.bootstrap.recovery.volumeSnapshotスタンザを介したCSI VolumeSnapshotリソースのセットからのリカバリの最初の実装#1960pg_failover_slotsをマネージド拡張機能に追加します #2057ドキュメントとクイックスタートガイドの指示を更新したGrafanaダッシュボードを改善しました #1916
importスタンザにschemaOnlyオプションを導入して、1つ以上の既存のデータベースから新しいPostgresクラスターをブートストラップするときにデータのエクスポートおよびインポートを回避します #2234インスタンスポッドのスケジュールを管理するためのTopologySpreadConstraintsのサポートを追加します #2202
PgBouncerの
PoolerにPodMonitorサポートを追加します#2034デフォルトのKubernetesスケジューラーをオーバーライドするオプションを追加します#2013
Poolerリソースのデプロイメント戦略の構成を許可します #1983デフォルトのPostgreSQLバージョンを15.3に更新します#2022
デフォルトでPgBouncer 1.19を使用する#2018
技術的な強化
更新されたk8s種類のテスト済みバージョン#2054
別のトランザクションを使用して、ロールの資格情報を調整します。このパッチの前は、オペレーターは、いずれかが失敗した場合、すべてのロールの同期を元に戻していました#2004
クラスターの復元中にフェンシングが削除されることを確認します #1987
ポッド削除時のロギングを改善します #2136
修正
K3でのセットアップを妨げる可能性があるk3sエンジンのバインドされていない変数を修正しました #2157
メトリックで正しいPGバージョンをレポートする #2126
ドキュメントで正しいwalStorageキーを使用する #2140
オペレーターがインスタンスに接続できない場合に調整を停止し、このような場合に明確な診断を提供します。これは、ネットワークの問題がCloudNativePGの通常のオペレーションを妨げるケースを明確にするのに役立ちます#2145、#2233、および#2242
バージョン1.18.4
発売日 2023年4月27日
注釈
PostgreSQL 10が2022年11月にサポート終了EOLに達したため、CloudNativePGはPostgreSQL 10のサポートを終了します。バージョン11以降がサポートされています。できるだけ早くPostgreSQL 15への移行を計画してください。 Importing Postgres databases を参照してください
PostgreSQLのメジャーオフラインアップグレードの詳細については、
機能強化
kubectlのcnpgプラグインのreportコマンドの--logsオプションを改善して、可能な場合は以前のログも含めます #1811-anyサービスがデフォルトで無効になりました #1755
セキュリティ
ローカルファイルを介したオーバーライドを介して
SeccompProfileのカスタマイズを有効にします #1827
修正
サーバーが初めて起動される前に、
initdbブートストラップフェーズ中にユーザーが提供したPostgreSQL構成を適用します #1858
バージョン1.18.3
発売日 2023年3月20日
機能強化
debugクラスターのログレベルをinitdbジョブに拡張します#1503PgBouncerプーラーのIPv6とカスタム
pg_hbaをサポート#13952つの新しいメトリックとステータスの追加情報でバックアップの可観測性を強化します #1428
インスタンスマネージャーからのドキュメントAPI呼び出し #1641
Helmを介して展開名を明確にする #1505
psqlコマンドをkubectl#1668のcnpgプラグインに追加して、ユーザーはポッドデフォルトでプライマリとのpsqlセッションを開始できます。
技術的な強化
依存関係の追跡/更新にRenovateを採用する #1367、#1473
オペレーターイメージにサポートされているすべてのアーキテクチャのバイナリを注入します #1513
バックアップ名を使用してバックアップオブジェクトストアのリソースと一致する #1650 Barman 3.3で導入された
--nameオプションを活用して、バックアップとオブジェクトストアの関連付けをより堅牢にします。
修正
プローブのエラー処理でパニックを防止 #1716
HTTPパッケージとコントローラのランタイムログがJSON形式であることを確認します #1442
単一インスタンスのクラスターにWALストレージを追加します クラスター #1570
バックアップコードをより堅牢にするためのさまざまな改善 #1536、#1564、#1588、#1466、#1647
cnpgプラグインのstatusコマンドでWALアーカイブ情報を適切に表示する #1666AdditionalPodAffinityおよびAdditionalPodAntiAffinityが設定されていない場合でも、nodeAffinityが適用されるように保証 #1663
バージョン1.18.2
発売日 2023年2月14日
機能強化
Kubernetesの予測ボリュームのサポートを紹介します #1269
PostgreSQLサーバープロセスをより詳細に制御するためのサポートカスタム環境変数を導入します#1275
kubectlのcnpgプラグインにbackupコマンドを導入して、クラスターの新しいベースバックアップを発行します #1348ユーザーがWALファイルを既存のPostgresクラスター上の専用ボリュームに移動できるようにすることにより、個別のWALボリューム機能のサポートを向上させます #1066
min_wal_size、max_wal_size、keep_wal_size、wal_keep_segmentsに相当する値、および専用ボリュームに保存できるWALの最大数を含むPrometheusエクスポータの追加メトリックでWALの可観測性を強化 #1382streaming_replicaユーザーにデータベースコメントを追加します #1349GKEのWebhookでのファイアウォールの問題を文書化する #1364
recoveryのpostgresql.confに関するノートを追加#1211パッケージを使用してプラグインのインストールに関する手順を追加します #1357
各マイナーリリースでサポートされているPostgresバージョンを指定する #1355
CloudNativePGのPVCグループの意味を明確にします#1344
DigitalOcean S3互換スペースの例を追加します #1289
技術的な強化
リリースブランチの毎日のエンドツーエンドスモークテストを追加しました#1235
修正
streaming_replicaユーザーとしてのCHECKPOINTの実行をスキップする #1408waitForWalArchiveWorkingの接続エラーに対する耐性を高める #1399PVCロールが常に一貫していることを確認します #1380
pvcTemplateを使用するときにwalStorageのサイズ変更を許可します #1315ExecCommandがタイムアウトに従っていることを確認します#1242Prometheusがインストールされていない場合は
PodMonitorリコンサイルを回避する #1238必要がない場合は
PodMonitorの検索を回避します #1213
バージョン1.18.1
発売日 2022年12月21日
重要なお知らせ
CNPGクラスターを識別するラベルとしての
postgresqlの差し迫った非推奨に関するアラート。このラベルを使用したリモートケースでは、代わりにcnpg.io/clusterラベルの使用を開始してください #1130Armando Ruocco @armru を、一貫したインパクトのある貢献により新しいCloudNativePGメンテナーとして表彰 #1167
ARMv7サポートの削除 #1092
1.16の最終パッチリリース1.16.5。リリース1.16はサポート終了となります。
機能強化
サービスアカウントのラベルと注釈をカスタマイズする 例、IRSAを介したGKEまたはEKSのID管理を介した認証を簡単にするために使用できるサービスアカウントテンプレートを追加します #1105
nodeAffinityサポートを追加します#1182-より豊富なスケジュールオプションが可能になりますIstioとの互換性の向上 Istioのquitエンドポイントのサポートを追加して、Istioサイドカーを使用したジョブが無期限に実行されないように #967
JSONログのフィールドのリマッピングを許可します
levelおよびtsフィールドが既存のロギングを妨げる可能性があるユースケースに役立ちます #843fioコマンドをkubectl-cnpgプラグインに追加します #1097kubectl-cnpgプラグインのrpm/debパッケージを追加します#1008
新しいクラスター定義のデフォルトのPostgreSQLバージョンを15.1に更新します #908
Documentation
CNPGサンドボックスへの参照を削除します#1120-クイックスタートドキュメントでのモニタリングに関する指示を優先して、CNPGサンドボックスは非推奨になりました
“Release upgrade”ディスカッションへのリンク#1148-リリース更新ディスカッションがデフォルトになりますリリースの発表とディスカッションのためのチャンネル
GOVERNANCE.mdのメンテナーの名誉ステータスを文書#1033 - メンテナーがコントリビューションを続行する準備ができていない場合に続行する方法を説明します
プルリクエストの作成手順の改善#1132
緊急バックアップのトラブルシューティング指示# 1184)
アーキテクチャドキュメント#1432でKubernetesレイヤーを詳細にカバーしています
修正
ブートストラップのPGDATA権限が適切に750に設定されていることを確認します #1164
クラスターをスケールダウンするときにWALを含むPVCが削除されるように保証 #1135
--dry-runを使用する場合、pgbenchマニフェストで欠落しているApiVersionとKindを修正します #1088シークレットとサービスが見つからない場合にのみ作成するようにします #1145
復元時に設定済みのpg-walを尊重する #1216
nodeToClustersマップからレプリカをフィルタリングする #1194
技術的な強化
テストの概要に
ciclopsを使用する #1064 ciclops GitHubアクションに依存して、E2Eスイートの概要を提供し、そのプロジェクトから改善を継承しますバックポートプル要求ワークフローを追加します #965 - 注釈が付けられている場合、リリースブランチにパッチを自動的にバックポートします
e2eテストスイートでオペレーターログレベルを構成可能にする #1094
ラベルに基づいてテストの実行を有効にする #951
Goバージョンを1.18から1.19に更新します#1166
バージョン1.18.0
発売日 2022年11月10日
特徴
高可用性のためのクラスター管理物理レプリケーションスロット プライマリとスタンバイの両方で、高可用性クラスター内の各ホットスタンバイレプリカの物理レプリケーションスロットを自動的に管理します #740
Postgresクラスターハイバーネーション 新しいサブコマンド
kubectl cnpg hibernate on/off/status <cluster-name>を使用して、プラグインを介してクラスターハイバーネーションを導入します。ハイバネーションは、PostgreSQLプライマリインスタンスに属するPVCを除き、クラスターによって生成されたすべてのリソースを破壊します #782
セキュリティ
SeccomProfileをポッドとコンテナに追加します #888
機能強化
pvcTemplateでサイズ要求がある場合、クラスター仕様でストレージサイズを省略できるようにしました #914cnpgプラグインのstatusコマンドレプリケーションスロット情報を追加します #873
フェンスされたクラスターの表示を明確にします #886
レプリカクラスターの表示を改善します #871
ドキュメント
モニタリングページを改善し、プロメテウスとグラファナを使用してローカルシステムでCloudNativePGの可観測性機能を評価する方法に関する手順を提供します #968
カスタムコントローラのデザイン理由に関するページを追加します #918
最後までの更新- toエンドテストスイートページ #945
cnpgプラグインの新しいサブコマンドpgbenchは、クラスターに対してpgbenchを実行するジョブ定義を生成します#958installは、オペレーターのインストールマニフェストを生成します#944
PostgreSQL 15.0を新しいデフォルトバージョンとして設定します #821
修正
plpgsqlファンクションを使用したデータベースのインポート #974ポイントインタイムリカバリーを実行するときに最も近いバックアップを適切に見つけます #949
ScheduledBackup形式がKubernetesCronJob形式に従っていないことを明確にします #883古い可能性があるKubernetesポッドの準備状況ではなく、インスタンスマネージャーからのPostgres情報に基づいてフェイルオーバーロジックをベースにします #890
新しく作成されるクラスターごとにアーカイブするWALがあることを確認します。これがないため、バックアップが機能しない可能性があります #897
ドキュメントの
barmanObjectStoreのYAMLキー名を修正しました #877krewリリースを修正#866