【製品情報】EDB Postgres AI for CloudNativePG™ Cluster(旧EDB Postgres for Kubernetes)1.28.0

音声ガイド

概要

I. CNPG Cluster 1.28.0 とは何か
EDB Postgres® AI for CloudNativePG™ Cluster 1.28.0 は、Kubernetes 内で高可用性 PostgreSQL データベースクラスターのライフサイクル全体を管理するために設計されたオペレーターです。これはオープンソースの CloudNativePG プロジェクトをベースにしたフォーク(派生版)であり、EnterpriseDB (EDB) によって開発・サポートされています。「機能レベルV – オートパイロット(Auto Pilot)」で動作し、データベースの自動スケーリング、修復(ヒーリング)、チューニングを処理します。

II. オリジナルの CloudNativePG 1.28.0 の機能に基づく価値
1. ステートレスな Kubernetes 上でステートフルな PostgresDB を実行する技術
このオペレーターは、PostgreSQL をステートフルなワークロードとして扱います。単にトラフィックをリダイレクトするだけのステートレスなアプリケーションとは異なり、ストレージレベルのレプリケーションのみに依存するのではなく、アプリケーションレベルのレプリケーション(PostgreSQL ネイティブのストリーミングレプリケーション)を使用して、複数のインスタンス間での状態(データ)の同期を管理します。これにより、Kubernetes の Pod やノードが起動・停止しても、データの永続性と整合性が保証されます。

2. 複雑な Kubernetes 上の運用を容易にする4つの主要技術
a. 宣言的な構成管理: オペレーターは Kubernetes の宣言的モデルを完全に採用しています。ユーザーは YAML マニフェスト(CRD)でクラスターのあるべき状態(例:インスタンス数、PostgreSQL のバージョン、設定パラメータ)を定義します。オペレーターの調整ループ(Reconciliation Loop)は、クラスターの実際の状態がこの構成と一致するように継続的に動作し、更新や設定変更を自動的に処理します。

b. 高可用性 (HA)、自動フェイルオーバー、自己修復:

  • HA: ネイティブストリーミングレプリケーションを用いたプライマリ/スタンバイ構成を管理します。
  • フェイルオーバー: プライマリの障害を自動的に検知し、ダウンタイムを最小限に抑えるために、最新のレプリカをプライマリに昇格させます。
  • 自己修復: レプリカ Pod に障害が発生したり削除されたりした場合、オペレーターは自動的にそれを再作成し、データ(WAL ストリーミングまたはバックアップ経由)を再同期してクラスターを完全に健全な状態に復元します。

c. 統合されたモニタリング: システムには、ネイティブの Prometheus エクスポーター(ポート 9187 でリッスン)が標準で含まれています。データベースの健全性、レプリケーションラグ、リソース使用状況に関する事前定義されたメトリクスセットを公開します。また、ConfigMap や Secret を介したカスタム監視クエリの定義もサポートしています。

d. バックアップとリカバリ:

  • WAL アーカイブ: 先行書き込みログ(WAL)のオブジェクトストレージ(AWS S3、Azure Blob、GCS)への継続的なアーカイブを管理します。
  • リカバリ: 完全リカバリおよびポイントインタイムリカバリ(PITR)をサポートし、データベースを特定のトランザクション時点に復元できます。
  • 手法: オブジェクトストレージベースのバックアップ(Barman Cloud 経由)と Kubernetes ボリュームスナップショットの両方をサポートしています。

III. 上記の機能に加え、”cnpg cluster” が持つ機能
1. 長期サポート (LTS)
EDB は、オペレーターの LTS バージョンを毎年提供しています。オープンソースバージョンはいずれサポート終了(End-of-Life)を迎えますが、EDB は LTS バージョンに対し、最後のコミュニティリリースからさらに12ヶ月間サポートを提供します。例えば、バージョン 1.25 は現在 LTS リリースとなっています。

2. セキュリティおよびエンタープライズ機能

  • Oracle 互換性: Oracle データベースとの互換性を持つ EDB Postgres Advanced Server (EPAS) をサポートしています。
  • 透過的データ暗号化 (TDE): EDB Postgres Advanced Server および Extended Server(バージョン 15 以上)で利用可能です。
  • コールドバックアップのサポート: Kasten および Velero/OADP との統合によるコールドバックアップに対応しています。
  • プラットフォームサポート: IBM Power および z/Linux アーキテクチャをサポートしています。

IV. バージョン 1.28.0 の新機能 (リリース日: 2025年12月16日)

  • コンテナレジストリの統合: プライベートコンテナレジストリを1つの場所(k8s)に統合し、アクセスと展開を簡素化しました。
  • クォーラムベースのフェイルオーバー (安定版): 実験的機能から安定版(Stable)に昇格しました。これにより、レプリカの定足数(クォーラム)がデータ保持を確認した場合にのみフェイルオーバーが発生するようになり、データの耐久性が向上します。
  • 宣言的な外部データ管理: Database CRD(.spec.fdws および .spec.servers)を介して、外部データラッパー(FDW)と外部サーバーを直接管理するサポートが導入されました。
  • デフォルトの PostgreSQL バージョン: デフォルトのオペランドイメージが PostgreSQL 18.1 に更新されました。
  • ネットワーク障害検知の改善: レプリカのデフォルトの tcp_user_timeout を 5 秒(以前は約 127 秒)に短縮し、プライマリの障害検知とフェイルオーバーのトリガーを大幅に高速化しました。
  • 同時更新: restart 更新メソッドを使用する場合に、コンテナイメージと設定の同時変更がサポートされるようになりました。
  • 標準ラベル: 生成されるすべてのリソースに対して、Kubernetes の標準ラベル(例:app.kubernetes.io/name)が採用されました。

日本語マニュアルを見る
※ 日本語マニュアルの閲覧には ユーザー登録(パスワード)が必要です。