pgpool-II †
http://wiki.livedoor.jp/kurt0027/d/pgpool-II
↑ インストール † ↑ postgresql開発パッケージ †
libpqが必要、postgresql84-devel を入れるとlibsq.soが入る postgresqlのみだとlibqp.so.4などは入るがlibsq.soがない
yum install postgresql84-devel
そのため上記コマンドでpostgresqlの開発パッケージを入れる ↑ pgpool-II †
tar zxvf ./pgpool-II-3.1.2.tar.gz
解凍したディレクトリへ移動し
./configure make make install
↑ pgpool-regclass †
cd pgpool-II-x.x.x/sql/pgpool-regclass make make install psql -f pgpool-regclass.sql template1
↑ insert_lock †
cd pgpool-II-x.x.x/sql psql -f insert_lock.sql template1
↑ pgpool-recovery †
cd pgpool-II-x.x.x/sql/pgpool-recovery/ % make install psql -f pgpool-recovery.sql template1
↑ /etc/init.d/pgpool †
service で起動する場合は
cp -p $PGPOOL_SRCDIR/redhat/pgpool.init /etc/init.d/pgpool chmod 755 /etc/init.d/pgpool cp -p $PGPOOL_SRCDIR/redhat/pgpool.sysconfig /etc/sysconfig/pgpool
をおこない、LSBスクリプトをinit.dに配置する (これがわからなくてはまった)
PIDファイルの場所に注意 ↑ 修正点 †
http://blog.suz-lab.com/2010/02/lsb.html lsbスクリプトの規約にのっとるためにはstatus の処理を追加する
####2012/07/10 add-start status(){
pid=`pidof -s $PGPOOLDAEMON"` if [ $pid ] then echo "$PROGNAME is running" else echo "$PROGNAME is stopped" exit 3 fi
} ####2012/07/10 add-end
↑ 設定ファイル †
/usr/local/etc/pcp.conf (pgpool Control Port) /usr/local/etc/pgpool.conf /usr/local/etc/pool_ha.conf
↑ pgpool-ha † ↑ インストール †
# ./configure # cd src # make # make install
この時、OCF仕様のスクリプト
/usr/lib/ocf/resource.d/heartbeat/pgpool /usr/local/bin/pgpool.monitor が作成される。 pgpool.monitorは日本語環境では修正が必要。
↑ 機能 †
コネクションプーリング レプリケーション 負荷分散(使用しない) パラレルクエリ(使用しない)
↑ フェイルオーバー設定 †
http://d.hatena.ne.jp/tgg/20081013/1223880066