[pgcluster: 996] Re: ロードバランサーが動作する構成について
小玉 芳信
y-kodama @ kk-mic.jp
2007年 7月 6日 (金) 17:39:55 JST
お世話になります。
こだまです。
構成を変更して環境構築することとなりました。
情報収集等なかなかうまくいっておりませんが・・・。
ロードバランサー機能については、後日勉強していこうと思います。
ありがとうございました。
> お世話になります。
> こだまです。
>
> 三谷様
> ご教授ありがとうございます。
>
>> 各サーバのポート番号を重複しないように変えてやれば,
>> 1台のマシン上で全部動きますよ.
> ご指摘の通り、ポートを変更してpblbの起動に成功しました。
> ありがとうございます。
>
> 併せて質問なのですが
> pc1:クラスタDB1、レプリケーションサーバ1、ロードバランサー1、アプリケーション
> pc2:クラスタDB2、レプリケーションサーバ2、ロードバランサー2、アプリケーション
> (*アプリケーション:DB書き込み、読み込みを行う、自作プログラムです)
>
> 上記のような構成で、環境を構築しようとしています。
>
> ロードバランサーのどちらか一台がダウンした場合でも、
> アプリケーション側の設定(IPアドレス、またはポート)を変更することなく、
> アプリケーションからのDBアクセスを継続したいのですが、
> このような構成は構築可能でしょうか?
>
> 可能である場合の設定方法をご教授頂けないでしょうか。
>
>> 環境は以下の通りです。
>> OS:Red Hat Linux 9
>> DB:pgcluster-1.3.0c
> DBを変更しまして現在は
> pgcluster-1.5.0rc16 を使用しています。
>
> 本メール、長文となっていますがご容赦ください。
> 以上、よろしくお願いいたします。
>
>
> 主な設定ファイルは以下の通りです。
>
> pc1(pc2の設定ファイルはホスト名はpc1→pc2に置き換えたものです)
> ---------------------------------------------------------
> cluster.conf
> ---------------------------------------------------------
> <Replicate_Server_Info>
> <Host_Name> pc1 </Host_Name>
> <Port> 8001 </Port>
> <Recovery_Port> 8101 </Recovery_Port>
> </Replicate_Server_Info>
> <Replicate_Server_Info>
> <Host_Name> pc2 </Host_Name>
> <Port> 8001 </Port>
> <Recovery_Port> 8101 </Recovery_Port>
> </Replicate_Server_Info>
>
> <Host_Name> pc1 </Host_Name>
> <Recovery_Port> 7101 </Recovery_Port>
> <Rsync_Path> /usr/bin/rsync </Rsync_Path>
> <Rsync_Option> ssh -1 </Rsync_Option>
> <Rsync_Compress> yes </Rsync_Compress>
> <Pg_Dump_Path> /usr/local/pgsql/bin/pg_dump </Pg_Dump_Path>
> <When_Stand_Alone> read_only </When_Stand_Alone>
> <Replication_Timeout> 1min </Replication_Timeout>
> <LifeCheck_Timeout> 3s </LifeCheck_Timeout>
> <LifeCheck_Interval> 11s </LifeCheck_Interval>
>
> ---------------------------------------------------------
> pglb.conf
> ---------------------------------------------------------
> <Cluster_Server_Info>
> <Host_Name> pc1 </Host_Name>
> <Port> 5432 </Port>
> <Max_Connect> 30 </Max_Connect>
> </Cluster_Server_Info>
> <Cluster_Server_Info>
> <Host_Name> pc2 </Host_Name>
> <Port> 5432 </Port>
> <Max_Connect> 30 </Max_Connect>
> </Cluster_Server_Info>
>
> <Host_Name> pc1 </Host_Name>
> <Backend_Socket_Dir> /tmp </Backend_Socket_Dir>
> <Receive_Port> 5433 </Receive_Port>
> <Recovery_Port> 6101 </Recovery_Port>
> <Max_Cluster_Num> 128 </Max_Cluster_Num>
> <Use_Connection_Pooling> no </Use_Connection_Pooling>
> <LifeCheck_Timeout> 3s </LifeCheck_Timeout>
> <LifeCheck_Interval> 15s </LifeCheck_Interval>
>
> <Log_File_Info>
> <File_Name> /tmp/pglb.log </File_Name>
> <File_Size> 1M </File_Size>
> <Rotate> 3 </Rotate>
> </Log_File_Info>
>
> ---------------------------------------------------------
> pgreplicate.conf
> ---------------------------------------------------------
> <Cluster_Server_Info>
> <Host_Name> pc1 </Host_Name>
> <Port> 5432 </Port>
> <Recovery_Port> 7101 </Recovery_Port>
> </Cluster_Server_Info>
> <Cluster_Server_Info>
> <Host_Name> pc2 </Host_Name>
> <Port> 5432 </Port>
> <Recovery_Port> 7101 </Recovery_Port>
> </Cluster_Server_Info>
>
> <LoadBalance_Server_Info>
> <Host_Name> pc2 </Host_Name>
> <Recovery_Port> 6101 </Recovery_Port>
> </LoadBalance_Server_Info>
>
> <Host_Name> pc1 </Host_Name>
> <Replication_Port> 8001 </Replication_Port>
> <Recovery_Port> 8101 </Recovery_Port>
> <RLOG_Port> 8301 </RLOG_Port>
> <Response_Mode> normal </Response_Mode>
> <Use_Replication_Log> no </Use_Replication_Log>
> <Replication_Timeout> 1min </Replication_Timeout>
> <LifeCheck_Timeout> 3s </LifeCheck_Timeout>
> <LifeCheck_Interval> 15s </LifeCheck_Interval>
>
> <Log_File_Info>
> <File_Name> /tmp/pgreplicate.log </File_Name>
> <File_Size> 1M </File_Size>
> <Rotate> 3 </Rotate>
> </Log_File_Info>
>
> ----- Original Message -----
> From: <a.mitani @ sra-europe.com>
> To: "PGCluster メーリングリスト" <pgcluster @ ml.postgresql.jp>
> Sent: Wednesday, June 20, 2007 8:56 PM
> Subject: [pgcluster: 992] Re: ロードバランサーが動作する構成について
>
>
>> こだまさん,
>>
>> 各サーバのポート番号を重複しないように変えてやれば,
>> 1台のマシン上で全部動きますよ.
>>
>> 三谷
>>
>>> 環境は以下の通りです。
>>>
>>> OS:Red Hat Linux 9
>>> DB:pgcluster-1.3.0c
>>>
>>> (構成1)
>>> pc1:クラスタDB1、レプリケーションサーバ1、ロードバランサー1
>>> pc2:クラスタDB2、レプリケーションサーバ2、ロードバランサー2
>>>
>>> pc1(またはpc2)にてそれぞれ起動させます。
>>> $ pgreplicate
>>> $ pg_ctl start -o "-i"
>>> $ pglb
>>> ロードバランサーを起動させると、
>>> /tmp/.s.PGSQL.5432.lockとなってしまい、クラスタDBも動作しなくなります。
>>>
>>> 因みに、以下のような構成では動作します。(ロードバランサーを別出し)
>>> (構成2)
>>> pc1:クラスタDB1、レプリケーションサーバ1
>>> pc2:クラスタDB2、レプリケーションサーバ2
>>> pc3:ロードバランサー
>>>
>>> ロードバランサー、クラスタDB、レプリケーションサーバを
>>> 一つのPCで動作させることはできないのでしょうか。
>>>
>>> 設定ファイルは掲示していませんが、構成2で動作可能であれば
>>> 掲示してご指示いただきたいと考えています。
>>>
>>> 何卒、ご教授の程よろしくお願いします。
>>>
>>> 以上です。
>>>
>>
>>
pgcluster メーリングリストの案内