[pgcluster: 1021] Re: クラスタの復旧手段について

At.Mitani mitani @ sraw.co.jp
2008年 2月 21日 (木) 09:48:31 JST


田中さん、こんにちは。

リカバリーのrsyncの1stフェーズで失敗する事例は幾つか報告を受けています。
殆どの場合、
(1)DB Clusterのサイズが大きい
(2)ネットワークの実効速度が遅い
(3)ネットワークカード、ハードディスクのハードウェアトラブル
が原因のようです。
(3)の場合はハード交換しか手がないのですが、
(1)と(2)が複合している場合、rsyncのパラメータにbwlimitを加えることで
ほぼ解決されることが分かっています。

そのため、最新版ではcluster.conf内でtimeoutやbwlimitを指定できるようになっています。
http://pgfoundry.org/projects/pgcluster/

クラスタDBが2台という構成の場合、リカバリを実行すると外部からのアクセスができなくなります(ロードバランサで遮断しています)ので、サービスが止まります。
サービスを多少止めてもよい状況であれば、以下の手順でマスタDBの複製を作成できます。
(1)マスタDBを止める
(2)マスタDBの$PGDATA以下をスタンバイDBにコピーする
(3)通常の手順でシステムを起動

記載がないので、現在お使いのバージョンが分かりませんが、
1.3から1.9までの間であれば、PGClusterを最新版にされることをお薦めします。
PostgreSQL同様、マイナーバージョンが同じであれば、クラスタDBのデータはそのまま使うことができます。
(ただし、cluster.confは上記のパラメータが増えていますので、shareディレクトリの下のサンプルを参照して更新されることをお薦めします)

三谷@広島


On Wed, 20 Feb 2008 14:32:53 +0900
田中 美紀雄 <comsosys @ mb.snowman.ne.jp> wrote:

> はじめまして。田中と申します。
> 
> きわめて初歩的な質問で恐縮です。
> 
> 現在、クラスターサーバ×2で運転していたのですが、
> 諸般の事情から片系のみの運転に切り換えて、
> 一週間ほど運転した後、再度クラスタ構成に戻そうと
> クラスターサーバを"-R"オプションで起動したのですが、
> 1st の最後で止まってしまい、最後までレプリケーションの
> 処理が進みません。
> 詳細な解析は時間をかけて紐解いていく予定なのですが、
> 取り急ぎ通常運転に戻したいのですが、この場合 継続して
> 運転していた側の $PGDATA 以下を休止していた側に
> まるまるコピーか pg_dump のバックアップしたデータをリストア
> するなど方法で同期は可能でしょうか?
> あわせて、レプリケーションのさいの 1st と 2nd では各々で
> どのような 処理が行われているのでしょうか?
> 
> 以上、とりとめのない質問で恐縮ですが何卒宜しく
> お願い致します。


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



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