[pgcluster: 1033] Re: Pgreplicateの冗長化について

At.Mitani mitani @ sraw.co.jp
2008年 3月 12日 (水) 16:01:21 JST


森下さん、

カスケード設定は片方向しか設定できません。
レプリケーションサーバを動的に追加する際、
下位のカスケードサーバとして設定し直せば大丈夫ですが、
そうでないとカスケードは機能しません。

それはともかく、全レプリケーションサーバとの接続が断たれた場合、クラスタDBが落ちる場合があることを見つけました。
この修正を含んだものをアップしましたので、ご確認ください。

tar-ball
    http://pgfoundry.org/projects/pgcluster/
SVN
    http://www.pgcluster.org/svn/pgcluster-1.x
    (パッケージは1.1から1.9までありますので必要なバージョンを指定してください)

SNVのリポジトリは開発メンバーのDevrimが用意してくれました。
ひとつ前のバージョンから入っています。
例えば、
svn co http://www.pgcluster.org/svn/pgcluster-1.9
で1.9の最新ソースをチェックアウトできます。

三谷

On Wed, 12 Mar 2008 14:32:27 +0900
morishita <hero @ asterisk-works.jp> wrote:

> 森下です。
> 
> 三谷様、ありがとうございます。
> 
> 
> >> レプリケーションサーバは-l オプションを付けて起動し、
> >> ログを見ているのですが、アクティブになっているほうの
> >> レプリケーションサーバでずっと次のようなログが出続けます。
> >>
> >> PGRread_packet():recv failed: (Connection reset by peer)
> 
> >レプリケーションサーバにカスケードの設定をされていませんか?
> >もし設定されているのであれば、設定を外すか、設定を見直してみてください。
> 
> レプリケーションサーバはできればカスケードさせたいと思っていて
> その設定をしています。
> 
> 今の評価サーバは1台のマシンに
> ロードバランサー×1(lb)
> クラスタDB×2 (rep1,rep2)
> レプリケーションサーバ×2(cluster1、cluster2)
> を動かしています。
> 
> 下記のようにレプリケーションサーバを設定しています。
> カスケードのlower側(評価構成のrep2)でupper側となる
> rep1のアドレスとポートを設定すると理解しているのですが
> 正しいでしょうか。
> 
> また、アクティブなレプリケーションサーバを止めると
> 新たにアクティブになった側のレプリケーションサーバで
> 次のようなエラーが出力されます。
> 
> replicate_packet_send_internal():setTransactionTbl failed
> 
> このログもどこか設定に間違いがあるのでしょうか。
> ご教授ください。 よろしくお願いします。
> 
> 【rep1のpgreplicate.conf】 ####################
> # A setup of Cluster DB(s) ####################
> <Cluster_Server_Info>
> <Host_Name> cluster1.cool-revo.com </Host_Name>
> <Port> 15432 </Port>
> <Recovery_Port> 17001 </Recovery_Port>
> </Cluster_Server_Info>
> <Cluster_Server_Info>
> <Host_Name> cluster2.cool-revo.com </Host_Name>
> <Port> 25432 </Port>
> <Recovery_Port> 27001 </Recovery_Port>
> </Cluster_Server_Info>
> # A setup of Load Balance Server ####################
> <LoadBalance_Server_Info>
> <Host_Name> lb.cool-revo.com </Host_Name>
> <Recovery_Port> 6001 </Recovery_Port>
> </LoadBalance_Server_Info>
> # A setup of a replication server ####################
> <Host_Name> rep1.cool-revo.com </Host_Name>
> <Replication_Port> 18001 </Replication_Port>
> <Recovery_Port> 18101 </Recovery_Port>
> <RLOG_Port> 18301 </RLOG_Port>
> <Response_Mode> normal </Response_Mode>
> <Use_Replication_Log> yes </Use_Replication_Log>
> <Replication_Timeout> 1min </Replication_Timeout>
> <LifeCheck_Timeout> 3s </LifeCheck_Timeout>
> <LifeCheck_Interval> 15s </LifeCheck_Interval>
> 
> 【rep2のpgreplicate.conf】 ####################
> # A setup of Cluster DB(s) ####################
> <Cluster_Server_Info>
> <Host_Name> cluster1.cool-revo.com </Host_Name>
> <Port> 15432 </Port>
> <Recovery_Port> 17001 </Recovery_Port>
> </Cluster_Server_Info>
> <Cluster_Server_Info>
> <Host_Name> cluster2.cool-revo.com </Host_Name>
> <Port> 25432 </Port>
> <Recovery_Port> 27001 </Recovery_Port>
> </Cluster_Server_Info>
> # A setup of Load Balance Server ####################
> <LoadBalance_Server_Info>
> <Host_Name> lb.cool-revo.com </Host_Name>
> <Recovery_Port> 6001 </Recovery_Port>
> </LoadBalance_Server_Info>
> # A setup of the cascade connection between replication servers. #####
> <Replicate_Server_Info>
> <Host_Name> rep1.cool-revo.com </Host_Name>
> <Port> 18001 </Port>
> <Recovery_Port> 18101 </Recovery_Port>
> </Replicate_Server_Info>
> # A setup of a replication server ####################
> <Host_Name> rep2.cool-revo.com </Host_Name>
> <Replication_Port> 28001 </Replication_Port>
> <Recovery_Port> 28101 </Recovery_Port>
> <RLOG_Port> 28301 </RLOG_Port>
> <Response_Mode> normal </Response_Mode>
> <Use_Replication_Log> yes </Use_Replication_Log>
> <Replication_Timeout> 1min </Replication_Timeout>
> <LifeCheck_Timeout> 3s </LifeCheck_Timeout>
> <LifeCheck_Interval> 15s </LifeCheck_Interval>


-- 
At.Mitani <mitani @ sraw.co.jp>



pgcluster メーリングリストの案内