Mailing List Archive

Pacemakerを利用したPostgreSQLのレプリケーション冗長化が動かない件について
MLの皆様

はじめまして、曽根と申します。
このたびは表題の件について上手く行かないため、ご相談に参りました。

■環境
・OS
# cat /etc/redhat-release
CentOS release 6.6 (Final)

・Pacemaker等
# rpm -q corosync corosynclib cluster-glue cluster-glue-libs heartbeat
heartbeat-libs resource-agents pacemaker
pacemaker-libs pm_crmgen pm_diskd pm_extras pm_logconv-hb libesmtp ipmitool

corosync-1.4.7-1.el6.x86_64
corosynclib-1.4.7-1.el6.x86_64
cluster-glue-1.0.11-1.el6.x86_64
cluster-glue-libs-1.0.11-1.el6.x86_64
heartbeat-3.0.5-1.1.el6.x86_64
heartbeat-libs-3.0.5-1.1.el6.x86_64
resource-agents-3.9.5-12.el6_6.3.x86_64
pacemaker-1.0.13-2.el6.x86_64
pacemaker-libs-1.0.13-2.el6.x86_64
pm_crmgen-1.4-1.el6.noarch
pm_diskd-1.3-1.el6.x86_64
pm_extras-1.5-1.el6.x86_64
pm_logconv-hb-1.3-1.el6.noarch
libesmtp-1.0.4-16.el6.x86_64
ipmitool-1.8.11-21.el6.x86_64

・PostgreSQL
# rpm -qa | grep postgres
postgresql93-9.3.6-1PGDG.rhel6.x86_64
postgresql93-docs-9.3.6-1PGDG.rhel6.x86_64
postgresql93-libs-9.3.6-1PGDG.rhel6.x86_64
postgresql93-server-9.3.6-1PGDG.rhel6.x86_64
postgresql93-contrib-9.3.6-1PGDG.rhel6.x86_64

以上のとおりです。
現象としては

スレーブ側のレプリケーションが開始されない

状態です。
調査してみるとPacemakerが作成する

/var/lib/pgsql/tmp/rep_mode.conf

の中身が

synchronous_standby_names = ''

となっており、それが原因かと考えております。
大変お手数ですがsynchronous_standby_namesはどのパラメータを元に作成されるのでしょうか。
またその他ご提示すべき情報が必要でしたらご教示していただけると幸いです。

以上のとおり、どうぞよろしくお願いします。
Re: Pacemakerを利用したPostgreSQLのレプリケーション冗長化が動かない件について [ In reply to ]
$BA>:,$5$s(B
$B$O$8$a$^$7$F!#>>Hx$G$9!#(B

> $BBgJQ$*<j?t$G$9$,(Bsynchronous_standby_names$B$O$I$N%Q%i%a!<%?$r85$K:n@.$5$l$k$N$G$7$g$&$+!#(B

$B$3$N(BPos$B#t#g$l(BSQL$B$N%Q%i%a!<%?$O!"%l%W%j%1!<%7%g%s$r3+;O$9$k$?$a$N%Q%i%a!<%?$G$O$J$/!"(B
Slave$BB&$,@5>o$KHsF14|%l%W%j%1!<%7%g%s$r3+;O$7$?8e!"F14|%l%W%j%1!<%7%g%s$K0\9T$9$k:]$K(B
RA$B$,<+F0@8@.$5$l$k%Q%i%a!<%?$J$N$G!"HsF14|%l%W%j%1!<%7%g%s$,3+;O$5$l$J$$8B$j!"(B
$B$3$N%Q%i%a!<%?$KCM$,F~$k$3$H$O$"$j$^$;$s!#(B

$B$h$C$F!"%l%W%j%1!<%7%g%s$,3+;O$5$l$J$$860x$OB>$K$"$k$H;W$$$^$9!#(B

Master$BB&!"(BSlave$BB&$G(BPostgreSQL$B$,@5>o$K5/F0$7$F$$$k$J$i!"%l%W%j%1!<%7%g%s$G$-$J$$860x$O!"(B
PostgreSQL$B$N%m%0$r8+$F$_$k$H2?$+$o$+$k$N$G$O$J$$$+$H;W$$$^$9!#(B


$BM>CL$G$9$,!"(BRA$B$N%Q%i%a!<%?(B rep_mode $B$,(B "sync" $B$G$J$$>l9g$O!"$=$b$=$bF14|%l%W%j%1!<%7%g%s$r(B
$B;H$o$J$$@_Dj$J$N$G(Bsynchronous_standby_names$B$KCM$,F~$k$3$H$O$"$j$^$;$s!#(B

2015$BG/(B2$B7n(B12$BF|(B 18:15 soudai sone <alftaketomo@gmail.com>:
> ML$B$N3'MM(B
>
> $B$O$8$a$^$7$F!"A>:,$H?=$7$^$9!#(B
> $B$3$N$?$S$OI=Bj$N7o$K$D$$$F>e<j$/9T$+$J$$$?$a!"$4AjCL$K;2$j$^$7$?!#(B
>
> $B"#4D6-(B
> $B!&(BOS
> # cat /etc/redhat-release
> CentOS release 6.6 (Final)
>
> $B!&(BPacemaker$BEy(B
> # rpm -q corosync corosynclib cluster-glue cluster-glue-libs heartbeat
> heartbeat-libs resource-agents pacemaker
> pacemaker-libs pm_crmgen pm_diskd pm_extras pm_logconv-hb libesmtp ipmitool
>
> corosync-1.4.7-1.el6.x86_64
> corosynclib-1.4.7-1.el6.x86_64
> cluster-glue-1.0.11-1.el6.x86_64
> cluster-glue-libs-1.0.11-1.el6.x86_64
> heartbeat-3.0.5-1.1.el6.x86_64
> heartbeat-libs-3.0.5-1.1.el6.x86_64
> resource-agents-3.9.5-12.el6_6.3.x86_64
> pacemaker-1.0.13-2.el6.x86_64
> pacemaker-libs-1.0.13-2.el6.x86_64
> pm_crmgen-1.4-1.el6.noarch
> pm_diskd-1.3-1.el6.x86_64
> pm_extras-1.5-1.el6.x86_64
> pm_logconv-hb-1.3-1.el6.noarch
> libesmtp-1.0.4-16.el6.x86_64
> ipmitool-1.8.11-21.el6.x86_64
>
> $B!&(BPostgreSQL
> # rpm -qa | grep postgres
> postgresql93-9.3.6-1PGDG.rhel6.x86_64
> postgresql93-docs-9.3.6-1PGDG.rhel6.x86_64
> postgresql93-libs-9.3.6-1PGDG.rhel6.x86_64
> postgresql93-server-9.3.6-1PGDG.rhel6.x86_64
> postgresql93-contrib-9.3.6-1PGDG.rhel6.x86_64
>
> $B0J>e$N$H$*$j$G$9!#(B
> $B8=>]$H$7$F$O(B
>
> $B%9%l!<%VB&$N%l%W%j%1!<%7%g%s$,3+;O$5$l$J$$(B
>
> $B>uBV$G$9!#(B
> $BD4::$7$F$_$k$H(BPacemaker$B$,:n@.$9$k(B
>
> /var/lib/pgsql/tmp/rep_mode.conf
>
> $B$NCf?H$,(B
>
> synchronous_standby_names = ''
>
> $B$H$J$C$F$*$j!"$=$l$,860x$+$H9M$($F$*$j$^$9!#(B
> $BBgJQ$*<j?t$G$9$,(Bsynchronous_standby_names$B$O$I$N%Q%i%a!<%?$r85$K:n@.$5$l$k$N$G$7$g$&$+!#(B
> $B$^$?$=$NB>$4Ds<($9$Y$->pJs$,I,MW$G$7$?$i$465<($7$F$$$?$@$1$k$H9,$$$G$9!#(B
>
> $B0J>e$N$H$*$j!"$I$&$>$h$m$7$/$*4j$$$7$^$9!#(B
>
>
> _______________________________________________
> Linux-ha-japan mailing list
> Linux-ha-japan@lists.sourceforge.jp
> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
>
_______________________________________________
Linux-ha-japan mailing list
Linux-ha-japan@lists.sourceforge.jp
http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
Re: Pacemakerを利用したPostgreSQLのレプリケーション冗長化が動かない件について [ In reply to ]
松尾さん

ご返信ありがとうございます、曽根です。
アドバイスどおり、PostgreSQLのレプリケーションが問題でしたので

・pgpass
・postgresに各種環境変数を指定

で同環境でレプリケーションが開始し、稼働することを確認できました。
ご連絡ありがとうございました。

2015年2月13日 9:11 Takatoshi MATSUO <matsuo.tak@gmail.com>:

> 曽根さん
> はじめまして。松尾です。
>
> > 大変お手数ですがsynchronous_standby_namesはどのパラメータを元に作成されるのでしょうか。
>
> このPostgれSQLのパラメータは、レプリケーションを開始するためのパラメータではなく、
> Slave側が正常に非同期レプリケーションを開始した後、同期レプリケーションに移行する際に
> RAが自動生成されるパラメータなので、非同期レプリケーションが開始されない限り、
> このパラメータに値が入ることはありません。
>
> よって、レプリケーションが開始されない原因は他にあると思います。
>
> Master側、Slave側でPostgreSQLが正常に起動しているなら、レプリケーションできない原因は、
> PostgreSQLのログを見てみると何かわかるのではないかと思います。
>
>
> 余談ですが、RAのパラメータ rep_mode が "sync" でない場合は、そもそも同期レプリケーションを
> 使わない設定なのでsynchronous_standby_namesに値が入ることはありません。
>
> 2015年2月12日 18:15 soudai sone <alftaketomo@gmail.com>:
> > MLの皆様
> >
> > はじめまして、曽根と申します。
> > このたびは表題の件について上手く行かないため、ご相談に参りました。
> >
> > ■環境
> > ・OS
> > # cat /etc/redhat-release
> > CentOS release 6.6 (Final)
> >
> > ・Pacemaker等
> > # rpm -q corosync corosynclib cluster-glue cluster-glue-libs heartbeat
> > heartbeat-libs resource-agents pacemaker
> > pacemaker-libs pm_crmgen pm_diskd pm_extras pm_logconv-hb libesmtp
> ipmitool
> >
> > corosync-1.4.7-1.el6.x86_64
> > corosynclib-1.4.7-1.el6.x86_64
> > cluster-glue-1.0.11-1.el6.x86_64
> > cluster-glue-libs-1.0.11-1.el6.x86_64
> > heartbeat-3.0.5-1.1.el6.x86_64
> > heartbeat-libs-3.0.5-1.1.el6.x86_64
> > resource-agents-3.9.5-12.el6_6.3.x86_64
> > pacemaker-1.0.13-2.el6.x86_64
> > pacemaker-libs-1.0.13-2.el6.x86_64
> > pm_crmgen-1.4-1.el6.noarch
> > pm_diskd-1.3-1.el6.x86_64
> > pm_extras-1.5-1.el6.x86_64
> > pm_logconv-hb-1.3-1.el6.noarch
> > libesmtp-1.0.4-16.el6.x86_64
> > ipmitool-1.8.11-21.el6.x86_64
> >
> > ・PostgreSQL
> > # rpm -qa | grep postgres
> > postgresql93-9.3.6-1PGDG.rhel6.x86_64
> > postgresql93-docs-9.3.6-1PGDG.rhel6.x86_64
> > postgresql93-libs-9.3.6-1PGDG.rhel6.x86_64
> > postgresql93-server-9.3.6-1PGDG.rhel6.x86_64
> > postgresql93-contrib-9.3.6-1PGDG.rhel6.x86_64
> >
> > 以上のとおりです。
> > 現象としては
> >
> > スレーブ側のレプリケーションが開始されない
> >
> > 状態です。
> > 調査してみるとPacemakerが作成する
> >
> > /var/lib/pgsql/tmp/rep_mode.conf
> >
> > の中身が
> >
> > synchronous_standby_names = ''
> >
> > となっており、それが原因かと考えております。
> > 大変お手数ですがsynchronous_standby_namesはどのパラメータを元に作成されるのでしょうか。
> > またその他ご提示すべき情報が必要でしたらご教示していただけると幸いです。
> >
> > 以上のとおり、どうぞよろしくお願いします。
> >
> >
> > _______________________________________________
> > Linux-ha-japan mailing list
> > Linux-ha-japan@lists.sourceforge.jp
> > http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
> >
> _______________________________________________
> Linux-ha-japan mailing list
> Linux-ha-japan@lists.sourceforge.jp
> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan
>