1.2. はじめてのレプリケーション

この節では、Pgpool-IIを使って、もっとも一般的な設定の一つである、PostgreSQLクラスターをストリーミングレプリケーション構成で管理する方法を説明します。

先に進む前に、ストリーミングレプリケーションモードでpgpool.confを設定しましょう。 このためには、少なくとも次の2つの項目を設定しなければなりません。

master_slave_mode = on
master_slave_sub_mode = 'stream'
      

pgpool_setupを使うということであれば、次のようにタイプして下さい。

pgpool_setup

これにより、ストリーミングレプリケーション設定のPgpool-IIPostgreSQLプライマリサーバのインストール、それにPostgreSQLの非同期スタンバイのインストールが行われます。

ここからは、pgpool_setupを使ってカレントディレクトリ以下にインストールを行うことを前提とします。

システム全体を起動するには、次のようにタイプして下さい。

./startall

システムが起動すれば、任意のデータベースに擬似SQLコマンドの"show pool_node"を発行して、クラスタの状態を確認することができます。 pgpool_setupは、自動的に"test"データベースを作ります。 このデータベースを使います。 pgpool_setupにより、Pgpool-IIにデフォルトポート番号として11000がアサインされていることに注意してください。

$ psql -p 11000 -c "show pool_nodes" test
 node_id | hostname | port  | status | lb_weight |  role   | select_cnt | load_balance_node | replication_delay 
---------+----------+-------+--------+-----------+---------+------------+-------------------+-------------------
 0       | /tmp     | 11002 | up     | 0.500000  | primary | 0          | false             | 0
 1       | /tmp     | 11003 | up     | 0.500000  | standby | 0          | true              | 0
(2 rows)
      

この結果は、"status"カラムが"up"であることを示しています。 これは、PostgreSQLが稼働中で、問題ないということです。