|
ロードバランサは,システム内で以下の図のような設定項目を持っています.ロードバランサの設定項目について,サンプルに基づいて説明します.
インストールディレクトリの下の"etc"ディレクトリの下(デフォルトでは"/usr/local/pgsql/etc")に"pglb.conf.sample"というサンプルファイルがあります.このファイルをコピーして"pglb.conf"というファイルを作成してください.pglbを起動する際に,この設定ファイルのパスを指定できますので,設定ファイルの置き場所はどこでも構いません(pglb起動時にパスを指定しない場合,環境変数$PGDATA,次にカレントディレクトリを探します).
|
#=============================================
# pglb.conf
#---------------------------------------------
# このファイルはテーブル状に複数の値を設定する書き方と,
# 設定値を1つずつ設定する書き方の2種類の書き方ができます.
#
# <Table_Name_Tag>
# <Data_Name_Tag1> value1 </Data_Name_Tag1>
# <Data_Name_Tag2> value2 </Data_Name_Tag2>
# <Data_Name_Tag3> value3 </Data_Name_Tag3>
# </Table_Name_Tag>
# or
# <Data_Name_Tag> value </Data_Name_Tag>
#
# "#"以降はコメントとして解釈されます.
#=============================================
#--------------------------------------------------------------------
# クラスタサーバの設定を記述します.
#--------------------------------------------------------------------
<Cluster_Server_Info>
#----- ホスト名
<Host_Name> cluster_1 </Host_Name>
#----- postmasterのポート番号
<Port> 5432 </Port>
#----- 最大接続数(max_connections - cluster num)
<Max_Connect> 30 </Max_Connect>
</Cluster_Server_Info>
#
# 以下クラスタサーバの記述を続けます.
#
<Cluster_Server_Info>
<Host_Name> cluster_2 </Host_Name>
<Port> 5432 </Port>
<Max_Connect> 30 </Max_Connect>
</Cluster_Server_Info>
<Cluster_Server_Info>
<Host_Name> cluster_3 </Host_Name>
<Port> 5432 </Port>
<Max_Connect> 30 </Max_Connect>
</Cluster_Server_Info>
#--------------------------------------------------------------------
# ロードバランサ固有の設定を記述します.
#--------------------------------------------------------------------
<Backend_Socket_Dir> /tmp
</Backend_Socket_Dir>
<Receive_Port> 5432
</Receive_Port>
<Recovery_Port> 7779 </Recovery_Port>
<LifeCheck_Port> 6201
</LifeCheck_Port>
<Max_Cluster_Num> 128 </Max_Cluster_Num>
<Use_Connection_Pool> no </Use_Connection_Pool>
|
(1)クラスタサーバに関する設定
・<Cluster_Server_Info>〜</Cluster_Server_Info>
クラスタサーバの設定を宣言します.設定終了タグまでの間にクラスタサーバの設定値(ホスト名,postmaster用のポート番号,最大接続数)を記述します.クラスタサーバの情報は複数設定しておくことができます.
・<Host_Name>〜</Host_Name>
クラスタサーバのホスト名の設定します.DNSまたは"/etc/hosts"で名前解決が可能なホスト名を設定します.IPアドレスを記述しないでください.
・<Port>〜</Port>
クエリーを送信時に接続するクラスタサーバ(postmaster)のポート番号を設定します.
・<Max_Connect>〜</Max_Connect>
クラスタサーバに接続するセッションの最大数を設定します.クラスタサーバの"max_connections"の設定値以下にしてください.クラスタサーバはロードバランサだけでなく,レプリケーションサーバとも接続しますので,実際に接続できる数は,ここで設定した最大値よりも少なくなります.(クラスタサーバの"max_connections"の設定値)-(クラスタサーバ数)が接続できる最大値になります.
(2)ロードバランサ固有の設定
<Backend_Socket_Dir>〜
</Backend_Socket_Dir>
ロードバランサとクラスタDBが同一マシン上にある場合,使用するUNIXドメインソケットを作成するディレクトリを設定します.
・<Receive_Port>〜</Receive_Port>
クライアントからクエリーを受け付けるポート番号を設定します.
・<Recovery_Port>〜</Recovery_Port>
レプリケーションサーバからのリカバリ要求を受け付けるポート番号を設定します.
・<LifeCheck_Port>〜</LifeCheck_Port>
他サーバからのライフチェックを受信するポート番号を設定します
・<Max_Cluster_Num>〜</Max_Cluster_Num>
登録できるクラスタDBの最大値を設定します.
・<Use_Connection_Pool>〜</Use_Connection_Pool>
クラスタサーバとの接続にコネクション・プーリング機能を使うかどうかを指定します.'yes'または'no'で記述してください.
|