Pgpool-II 4.4devel 文書 | |||
---|---|---|---|
前のページ | 上に戻る | 付録 A. リリースノート | 次のページ |
リリース日: 2021-12-07
このバージョンには、設定と管理を容易にするために多くの機能拡張が追加されています。 動的にwatchdogクラスタのサイズを調整するために、新しくwatchdogにクラスタメンバーシップ機構が導入されました。 これにより、watchdogノードが停止されたり、接続が切断されたときにもリーダwatchdogノードがquorum/VIPを維持できます。 新しいPostgreSQL 14のSQL パーサが取り込まれています。 また、スナップショットアイソレーションモード を本番環境で使用できるようにしました。 このモードのための新しい設定例が設定例の章に提供されています
このバージョンでは、一部の設定パラメータのデフォルト値がより一貫性があり、便利になるように変更されていることに注意してください。 詳細については、移行セクションを参照してください。
以下は主な機能拡張です。
watchdogノードが削除されたときにもquorum/VIPを維持するために、新しくwatchdogにメンバーシップ機構が導入されました。
負荷分散ノードの選択時にレプリケーション遅延が最小のスタンバイノードを選択できるようにしました。 この目的のために、新しいパラメータprefer_lower_delay_standbyが追加されました。
pcp_promote_nodeで昇格するノードIDを指定できるようにしました。 この目的のために、新しいスイッチ--switchoverが追加されました。 スイッチが指定されている場合、pcp_promote_nodeは現在のプライマリノードを切り離し、実際に指定されたノードを昇格します。
PostgreSQLが管理者によってシャットダウンされたとき、またはpg_terminate_backend
によって強制終了されたときに、フェイルオーバを発生させないように設定できるようにしました。
この目的のために、新しいパラメータfailover_on_backend_shutdownが追加されました。
pcp_proc_info、SHOW POOL_PROCESSES、およびSHOW POOL_POOLSコマンドにより有用な情報を表示するために、新しいフィールドを追加しました。
pcp_node_infoがすべてのバックエンドノード情報を一覧表示できるようにしました。
実際のPostgreSQLの状態を示す新しいフィールドをSHOW POOL_NODESとその同種のコマンドに追加しました。
リカバリ元のホスト名を表す新しいパラメータをrecovery_1st_stage_commandおよびrecovery_2nd_stage_commandに追加しました。 これは、hostnameコマンドが予期しないホスト名を返す一部のシステムで役立ちます。
ミリ秒単位でログにタイムスタンプを出力できるようにしました。
PostgreSQL 14 の SQL パーサを取り込みました。
PostgreSQL 14 パーサのおもな変更点は次のとおりです:
エイリアスをJOIN ... USINGに使用できるようにしました。
DISTINCTをGROUP BYに追加できるようにしました。
共通テーブル式に新しいSEARCHとCYCLE句を追加しました。
pgpool.confファイルでincludeディレクティブに対応しました。 pgpool.confに取り込む分割した小さな設定ファイルを作成することができます。
pgpool.confのサンプルファイルは、設定を容易にするために単一のサンプルファイルに統合されました。
pgpool.confサンプルファイルのすべての構成パラメータは、どのパラメータを変更する必要があるかを明確にするためにコメント化されました。 一部の設定パラメータのデフォルト値が変更されていることに注意してください。 詳細については、移行のセクションを参照してください。
pgpool.confのすべてのパラメータをコメント化しました。(Tatsuo Ishii)
これにより、pgpool.confの混乱が少なくなり、PostgreSQL の方法に従うため、PostgreSQLユーザはpgpool.confを理解しやすくなります。
すべてのpgpool.conf.sampleファイルを単一のpgpool.conf.sampleに統合しました。(Tatsuo Ishii)
pgpool.confのすべての設定パラメータがコメント化されたので、個別の設定サンプルファイルを用意する意味がなくなりました。 backend_clustering_modeパラメータを指定するだけで十分です。
insert_lockのコンパイル時のデフォルト値を on に変更しました。(Tatsuo Ishii)
insert_lockはpgpool.conf.sampleですでにonになっています。 よってそれと同期しました。
failover_require_consensusのコンパイル時のデフォルト値をonに変更しました。(Tatsuo Ishii)
failover_require_consensusは、ドキュメントとpgpool.confですでに on になっています。 よってそれらと同期しました。
failover_when_quorum_existsのコンパイル時のデフォルト値をonに変更しました。(Tatsuo Ishii)
failover_when_quorum_existsは、ドキュメントとpgpool.confですでに on になっています。 よってそれらと同期しました。
load_balance_modeのコンパイル時のデフォルト値を on に変更しました。(Tatsuo Ishii)
load_balance_modeは、ドキュメントとpgpool.confですでにonになっています。 よってそれらと同期しました。
デフォルトでストリーミングレプリケーションのチェックを有効にしました。(Tatsuo Ishii)
sr_check_periodのコンパイル時のデフォルト値を0から10に変更しました。 これは、ストリーミングレプリケーションモードで動作している場合、ストリーミングレプリケーションのチェックがデフォルトで有効になっていることを意味します。 このパラメータは、pgpool.conf.sample ですでに10に設定されています。 したがって、唯一の違いは、sr_check_periodがコメント化されている場合です。
log_standby_delayのコンパイル時のデフォルトを'none'から'if_over_threshold'に変更しました。(Tatsuo Ishii)
コンパイル時のデフォルトは'none'でしたが、サンプルのpgpool.confのデフォルト値は'if_over_threshold'でした。 'if_over_threshold'はほとんどのユーザにとってより便利なので、コンパイル時のデフォルトも'if_over_threshold'に変更しました。
いくつかのコンパイル時のデフォルト値を修正しました。(Tatsuo Ishii)
src/config/pool_config_variable.cで定義されているいくつかのデフォルト値は、ドキュメントが想定するものとは異なっていました。 すなわち: clear_memqcache_on_escalation ("false" から "true" に変更) wd_lifecheck_dbname ("postgres" から "template1" に変更) listen_backlog_multiplier ("32" から "2" に変更) authentication_timeout ("0" から "60" に変更)
このリリースでは、Pgpool-II 4.2.5と同じバグ修正がすでに適用されています。 これらの修正の詳細については、項A.3を参照してください。
watchdogノードのメンバー・非メンバーの概念を導入することにより、動的にwatchdogクラスタの概念を定義できるようになりました(Muhammad Usama)。
watchdogノードからノードのメンバーが削除されると、クラスタは以後の多数決ルールの計算を調整するために、動的に自分自身を補正します。
3つの新しい設定パラメータwd_no_show_node_removal_timeout、wd_lost_node_removal_timeout、wd_remove_shutdown_nodesが、watchdogノードのメンバー管理の条件を調整するために導入されました。
prefer_lower_delay_standbyを追加しました。(Masaya Kawamoto)
pcp_promote_nodeで昇格するノード ID を指定できるようにしました。(Tatsuo Ishii)
新しい設定パラメータfailover_on_backend_shutdownを追加しました。(Tatsuo Ishii)
pcp_proc_info、SHOW POOL_PROCESSES、および SHOW POOL_POOLSコマンドに新しいフィールドを追加しました。(Masaya Kawamoto)
pcp_node_infoがすべてのバックエンドノードを一覧表示できるようにしました。(Bo Peng)
実際のPostgreSQLの状態をSHOW POOL_NODES、pcp_node_info、およびpgpool_adm_pcp_node_infoで表示するために、新しいフィールドを追加しました。(Tatsuo Ishii)
リカバリ元のホスト名を表す新しいパラメータをrecovery_1st_stage_commandとrecovery_2nd_stage_commandに追加しました。(Tatsuo Ishii)
log_line_prefixでミリ秒単位でログにタイムスタンプを出力できるようにしました。(Tatsuo Ishii)
PostgreSQL 14の新しいSQLパーサを取り込みました。(Bo Peng)
すべてのpgpool.conf.sampleファイルを単一のpgpool.conf.sampleに統合しました。(Tatsuo Ishii)
サンプルのpgpool.confでコメント化の漏れを修正しました。(Tatsuo Ishii)
statement_level_load_balanceとallow_clear_text_frontend_authはコメント化されていませんでした。
新しいネィティブレプリケーションモードとスナップショットアイソレーションモードの設定例を追加しました。(Bo Peng)
Pgpool-II + Watchdog の設定例とサンプルスクリプトをPostgreSQL 14 向けに更新しました。(Masaya Kawamoto)