[pgcluster: 967] 復旧中の更新クエリ処理について
Miki Hiratsuka
hiramiki @ cseltd.co.jp
2007年 3月 29日 (木) 23:37:12 JST
いつもお世話になっております。
平塚と申します。
下記のメールの件についてご回答ありがとうございました。
[pgcluster: 965] Re: ロードバランサの障害検知契機について
現在開発中のものは1.7系、1.5系の対応は難しいため、
1.3系を利用したままとなっております。
そのため、アクセス用クラスタDBが落ちた場合、
下記のような起動方法で対応することにしました。
一方のロードバランサ停止→アクセス用DBリカバリ→一方のロードバランサ起動
→もう一方のロードバランサ再起動
現在、別件で確認させて頂きたいことがありまして、
メール差し上げています。
現在、[pgcluster: 965] のメールの記述のまま、
pgcluster-1.1.2rc6を使用し、
下記の構成で無停止稼動運用に向けて検証しております。
・レプリケーション2台
・ロードバランサ2台
・クラスタDB4台(うちMASTER2台)
マシンはロードバランサ+アクセス用DBで1台、
レプリケーション+MASTERDBで1台で運用試験を行っております。
高負荷でアクセスを行いながら、
アクセス用クラスタDBが落ちた場合、-Rコマンドで復旧を行いますが、
全ての処理が終わった時点で、復旧対象のアクセス用クラスタDBに、
差分が出ることが何度かありました。
そこで、復旧後の更新クエリについての挙動を2点ご教授ください。
1.更新クエリの反映方法
復旧中、レプリケータ内部で更新クエリが蓄積され、
復旧後、その更新クエリの反映方法は
レプリケータから直接クラスタDBへ送信されるのでしょうか?
それともレプリケータ→ロードバランサ→クラスタDBでしょうか?
2.更新クエリ反映中の更新クエリ増加の挙動
更新クエリ反映中のレプリケータに対して、更新系処理がある場合の、
運用する上での注意点等ございますでしょうか?
更新中クエリを反映するに辺り、マスタDBは差分がなく、
アクセス系DBに差分が出ていることから考えられることは ございますでしょうか?
(全ての更新クエリが失敗するわけではないことから、
高負荷時にどこかで取れこぼしがあるのかと危惧しております。)
多忙な所申し訳ございませんが、ご確認の程よろしくお願い致します。
/*****************************************
* 株式会社シー・エス・イー
* 開発本部 技術サポート室
* Tel : 03-3463-5642 (内線:474)
* Fax : 03-3463-5635
* 平塚 美紀 <hiramiki @ cseltd.co.jp>
*****************************************/
pgcluster メーリングリストの案内