これまでのところ、私が遭遇したのはこれです -
ejabberd
構成でクラスターをセットアップmaster-slave
すると、単一障害点が発生し、マスターを修正した後でも (ダウンした場合)、クラスターが再び操作可能にならないという問題が発生します。また、ejabberd
場合によっては、すべてのスレーブのインスタンスを再訪して正常に動作させる必要があったりmnesia
、マスターがスレーブと通信できるようにするためにコマンドを再入力する必要があったりします。ejabberd
構成でクラスターをセットアップmulti-master
すると、クラスター全体を停止することなく、任意のノードをクラスターから取り出すことができます。基本的に、単一障害点はありません。これは、の公式ドキュメントがスクリプトで公開する引数をejabberd
介して行うように指示する方法でもあります。ただし、この場合、すべてのデータが両方のノード間で複製されるため、私の意見ではパフォーマンスのオーバーヘッドが大きくなります。join_cluster
ejabberdctl
ということで、これに尽きます。
ejabberd
主にパフォーマンスに関して 2 ノードのクラスターをセットアップする必要がありますが、他の重要な要素 (フォールト トレランス、負荷分散) も考慮に入れる必要がある、最適/推奨/一般的なモードは何ですか。