[pgcluster: 650] Re: Clusterリカバリ中の更新クエリについて

Chikahisa Yabuzuka yabuzuka @ cseltd.co.jp
2005年 1月 13日 (木) 09:32:40 JST


三谷様

お世話になっております。
薮塚です。

> サーバ構成を確認させてください。
> 合計で、ロードバランサ2台、クラスタDB4台、レプリケーションサーバ2
> 台あると考えて宜しいでしょうか?

はい。ご指摘の通りの構成です。

> > ロードバランサは各マシンのマスタDBではない方のClusterにアクセスします
>> ここのところがよく分からないのですが、マスタDBが2台あるということで
> すか?

マスタDBとして2台用意しております。
理由はマスタDBがダウンした際に、ロードバランサから見えないクラスタを
マスタDBに切り替えたいためです。
ロードバランサから見るとその2台のマスタDB以外にアクセスするようになっていま
す。
これであればセッションを切断せずにリカバリできると考えたためです。


> ひょっとして2台のレプリケーションサーバの設定が異なるとか?
> その場合、PGClusterのシステムは2セットあって、それぞれクラスタDBが2
> 台づつ、ということになっているのでしょうか?

レプリケーションサーバは全てのクラスタを見ています。
pgreplicate.confには4つ分の<Cluster_Server_Info>が記述されています。
また、pglb.confには<LoadBalance_Server_Info>を2つ分記述しています。

pgreplicate.confとpglb.confの<Cluster_Server_Info>の設定数が
それぞれ異なる記述というのが間違いなのでしょうか?
下記に設定情報を追記させていただきます。
ご検分していただければ幸いです。よろしくお願いいたします。

----- pgreplicate.conf ---------------
# Master
<Cluster_Server_Info>
    <Host_Name>   pgc01.postgresql.jp </Host_Name>
    <Port>        6432                </Port>
    <Recovery_Port>       7779        </Recovery_Port>
</Cluster_Server_Info>
<Cluster_Server_Info>
    <Host_Name>   pgc02.postgresql.jp </Host_Name>
    <Port>        6432                </Port>
    <Recovery_Port>       7779        </Recovery_Port>
</Cluster_Server_Info>
#
<Cluster_Server_Info>
    <Host_Name>   pgc01.postgresql.jp </Host_Name>
    <Port>        7432                </Port>
    <Recovery_Port>       7789        </Recovery_Port>
</Cluster_Server_Info>
<Cluster_Server_Info>
    <Host_Name>   pgc02.postgresql.jp </Host_Name>
    <Port>        7432                </Port>
    <Recovery_Port>       7789        </Recovery_Port>
</Cluster_Server_Info>

<LoadBalance_Server_Info>
    <Host_Name>   pgc01.postgresql.jp  </Host_Name>
    <Recovery_Port>       6001         </Recovery_Port>
</LoadBalance_Server_Info>
<LoadBalance_Server_Info>
    <Host_Name>   pgc02.postgresql.jp  </Host_Name>
    <Recovery_Port>       6001         </Recovery_Port>
</LoadBalance_Server_Info>

<Replication_Port>    8001            </Replication_Port>
<Recovery_Port>       8101            </Recovery_Port>
<Response_Mode>       normal          </Response_Mode>
----------------------------------


----- pglb.conf --------------------
<Cluster_Server_Info>
    <Host_Name>   pgc01.postgresql.jp </Host_Name>
    <Port>        7432                </Port>
    <Max_Connect> 32                  </Max_Connect>
</Cluster_Server_Info>
<Cluster_Server_Info>
    <Host_Name>   pgc02.postgresql.jp </Host_Name>
    <Port>        7432                </Port>
    <Max_Connect> 32                  </Max_Connect>
</Cluster_Server_Info>

<Backend_Socket_Dir>    /tmp     </Backend_Socket_Dir>
<Receive_Port>          5432     </Receive_Port>
<Recovery_Port>         6001     </Recovery_Port>
<Max_Cluster_Num>        128     </Max_Cluster_Num>
<Use_Connection_Pooling>  no     </Use_Connection_Pooling>
---------------------------------




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