• ベストアンサー

pgpoolというpostgreSQLのレプリケーションツールについて

pgpoolというpostgreSQLのレプリケーションツールについて質問です。 現在 WEB2台 DB2台の サーバー構成でWEBシステムを運用中なのですが、 このDB2台の同期を取る為にpgpool-IIというツールを使っています。 所が、このツールを使用していると 2台目のDBサーバーへのノードが勝手にダウンしてしまいます。 原因と考えられることも検討がつかず、 解決方法もわかりません。 どなたか詳しい方がいらっしゃれば、ご教授いただけないでしょうか? よろしくお願いいたします。

  • tahke
  • お礼率94% (32/34)

質問者が選んだベストアンサー

  • ベストアンサー
  • YkazubonY
  • ベストアンサー率30% (26/86)
回答No.1

マニュアルはここみたいですね。 http://pgpool.projects.postgresql.org/pgpool-II/doc/pgpool-ja.html PostgresSQL 9.0でレプリケーションがサポートされた見たいなので、 そちらに移られてもどうでしょうか。 レプリケーションはOracleでも初期はトラブル続発でした。 ましてや、PostgreSQLで使おうなんて、私は夢にも思いませんね。

tahke
質問者

お礼

回答ありがとうございます。 >レプリケーションはOracleでも初期はトラブル続発でした。 そ、そうなんですね。。。 >ましてや、PostgreSQLで使おうなんて、私は夢にも思いませんね。 なるほど、、、 ありがとうございます。 >PostgresSQL 9.0でレプリケーションがサポートされた見たいなので、 そちらに移られてもどうでしょうか。 検討します。 本当にありがとうございます。

その他の回答 (1)

  • yamada59
  • ベストアンサー率74% (29/39)
回答No.2

情報が少ないんで何とも言えませんが、pgpool-II でレプリケーションを行っており、片方のノードが切り離されるとしたら、何らかの原因でノード間のデータに不整合が発生したものと考えられます。 pgpool-II のログに「kind mismatch among backends」とか出てたらビンゴです。 pgpool-II のバージョンによって異なりますが、serial 型や current_timestamp 関数などを使っているとデータの不整合が発生する場合があります。 まずは pgpool-II のログを取るように設定し、ノードが切り離された際にどんなメッセージが出るかを確認するのがいいと思います。

参考URL:
http://pgpool.projects.postgresql.org/pgpool-II/doc/pgpool-ja.html
tahke
質問者

お礼

ありがとうございます。 今更ですが、アプリが終了してしまいましたので、 必要なくなりました。 ありがとうございました。

関連するQ&A

  • PostgreSQL のレプリケーションについて

    PostgreSQL でレプリケーションを構築予定(非同期)ですが、 PostgreSQL 9.0 の組み込みレプリケーションか、pgpool-II のレプリケーションかで迷っています。 それぞれを比較した際の長所と短所は何になるのでしょうか? また、PostgreSQL 9.0 は安定していてエンタープライズ用途でも問題ないのでしょうか? 本番サーバ1台、待機サーバ1台の2台体制です。 よろしくお願い致します。

  • PostgreSQLのレプリケーション

    PostgreSQL(9.1.4)のストリーミング・レプリケーションについて 現在、半年ほどRails+PostgreSQL(9.1.4)で構成されたシステムを運用しております。 DBサーバ(PostgreSQL 9.1.4)を2台使用し、PostgreSQLのストリーミング・レプリケーション機能を用いて、サーバ間でのデータ同期処理を実現させておりました。 しかし、本日より、このストリーミング・レプリケーション機能が正常に動作せず、データの同期処理が行われない状態となってしまいました。 原因の調査方法が、分からず、どのようなログを見て、どのように対処すべきか、ご存知の方がいらっしゃいましたら、教えて頂けないでしょうか? 何卒よろしくお願い申し上げます。

  • pgpool の レプリケーションについて。

    pgpoolでのレプリケーションで質問があります。 現在、pgpool.confで以下の設定をしているのですが、検索でレプリケーションされず、片方しか参照しに行ってくれません。 # Replication mode #replication_mode = false replication_mode = true 機器構成は、        +---- DB1 pgpool ---+        +---- DB2 としています。 それぞれ、独立したサーバーで組んでいます。 どうしても、DB1しか参照して内容に見えます。 pgpoolのバージョンは、 $ pgpool -h pgpool version 3.0.2(kamanu), です。 よろしくお願いします。

  • pgpool-IIのレプリケーションの設定

    いつもお世話になっております。 現在、2台のPCにpostgreSQL8.2.5をインストールしpgpool-II-2.0.1を入れてレプリケーション機能を試しているのですが,一旦、セカンダリサーバーを止めて、マスタサーバーで処理をし、セカンダリサーバーを起動させてみて、DBを確認しましたら、両サーバーのDBは不一致でした。実際に障害が発生し、データーに不一致が生じた場合、データを一致させるにはどうすればよろしいのでしょうか。 御指導をお願い致します。

  • レプリケーション

    MySQLでスレーブ・マスターの設定をしてレプリケーションができたと思いますが、サーバ等がダウンした際にスレーブ・マスターの関係を逆転させること(今までスレーブだったのをマスターにして、マスターをスレーブに)は出来ますか? 2台のWEBサーバにそれぞれDBが乗っかっていて、マスターサーバがダウンした際にはDBも切り替えを行いたいのですが・・・ よろしくお願いします。

    • ベストアンサー
    • MySQL
  • PostgreSQLの同期・非同期について

    社内で稼働しているシステムの更新で 今までオラクルを使用していましたが、 PostgreSQLに移行すべく, 2台のサーバーでレプリケーションするつもりでいます。 ポスグレにはレプリケーションで、同期と非同期がありますが、 どちらも一長一短があり、迷っています。 製造工場のシステムに使用している為、 クライアント端末からサーバーへのアクセスは、 1日20時間程度。 障害時の復旧は、長くても2時間程度以内が希望です。 1日の追加行数は7千行程度。 2台のサーバーは物理的に分かれておりますが、 同じ部屋で稼働。 OS:WindowsServer 2012 R2 DB:PostgreSQL9.6 現行のオラクルは、同期モードがライセンス上できませんでしたので、 非同期で運用していますが、 ポスグレはどちらも選べますので、迷います。 同期・非同期 どちらにしたら良いと思われますか? 他に良い方法があるようでしたらご教授ください。

  • データベースのレプリケーション機能

    SQLのレプリケーション機能を使用したデータバックアップを検討しています。 DBのレプリケーション機能によるデータバックアップは失敗例が多いとの話を聞きました。 データの量は多くありませんがデータの更新は頻繁に起きます。 常に正副2台のサーバのDBを出きるだけ整合性を取り、障害時には副のサーバで運用を 出きるだけ短時間で再開を目的としています。 SQLのレプリケーション機能についての信頼性、運用性等ご教授願えますでしょうか。

  • クラスタリングツールについて

    以下の構成でWebアプリケーションを構築しています。 Webサーバー:WindowsServer2003、IIS6.0 DBサーバー:WindowsServer2003、PostgreSQL8.0 このたび、各サーバーについて二重化を行うことになり、DBサーバーのクラスタリングツールを探しています。PostgreSQL用のツールの場合、Linux対応版はいろいろあるようですが、Windows対応版はあまりないように見受けられます。 Windows対応のツールでよいツールがあれば、アドバイスをお願いいたします。よろしくお願いいたします。

  • クラスタリングとレプリケーションの意味と違い

    1)クラスタリングの意味 クラスタリングは「複数のコンピュータを全体で一つのコンピュータであるかのように動作させる技術」とDB本にあり、さらにそれはホットとコールドスタンバイの2種類あるとありました。ただ、どちらの場合であっても「共有ストレージ上のDBはひとつ」とあったので、そのひとつのDBに障害があった場合には、復旧させることはできないのではないかと思うのですが… ホットスタンバイとは、障害時にすぐにDBもアプリも何事もなかったように待機サーバに切り替わり通常処理を行えると思っていたのですが、これは認識違いでしょうか? 2)レプリケーションとの違い 「共有ストレージ上のDBはひとつ」であるとすれば、レプリケーションは「ネットワーク上に同じ内容のデータベースを複数台用意し常に同期される構成」であるので障害時には別のDBを継続使用できるので耐障害ではレプリケーションの方が優れているのではないでしょうか?

  • Heartbeatでの複数サービスの冗長化について

    Heartbeatにおいて、複数のサービスの冗長化をとりたいと考えています。 検討している構成としては、 『DBサーバー1台、Webサーバー1台、予備サーバー1台』 の環境において予備サーバーでDBサーバーのPostgreSQLとWebサーバーのApacheをそれぞれ冗長化させ、 もしWebサーバーのApacheが死んだら予備サーバーのApacheを起動し、 もしDBサーバーのPostgreSQLが死んだら予備サーバーのPostgreSQLを起動させる といった感じです。 HeartbeatはHeartbeat2.1.2とバージョン1系の設定にて行っております。 このような構成は、Heartbeatでは構成可能なのでしょうか? Heartbeatに関する情報を色々と読んでいたのですが、 単一のクラスタ構成に沿った設定ファイルの書き方などしか見つけられず 行き詰まってしまいましたもので。。