XtraDBクラスタリングを確認し、P.o.Cを作成しました。 4つのインスタンスを使用するOpenstack上の環境。これは、レジリエンステスト中にフォールオーバーしました。
Pxcのドキュメントによると: http://www.percona.com/doc/percona-xtradb-cluster/howtos/virt_sandbox.html これは私が4番目に選んだ3ノードのインストールをカバーしています。
だから私の質問は次のとおりです:
ノード1の症状に基づいて、使用しています
wsrep_cluster_address = gcomm://
構成ファイル内。これは、ノードが新しいクラスターを開始することを意味します。これは、wsrep_cluster_size変数がnode1で1、その他で3であることで確認できます。 node1を既存のクラスターに参加させる場合は、次のように指定する必要があります
wsrep_cluster_address = gcomm://(ここで実行中のノードのIP)
この場合、node1はクラスターに再参加します。
いくつかの追加の考え:
PXC(Percona Xtradb Cluster)のクォーラムメカニズムのため、4ノードで実行することはお勧めしません。奇数のノードを使用することをお勧めします。これにより、ネットワーク分割の場合、分割されたクラスターの一部が過半数を占めることができます。
Wsrep_cluster_addressの代わりに、[mysqld_safe]セクションでwsrep_urlsを使用できます。
免責事項:私はPerconaで働いています。
この問題をさらに調査すると、これは実行可能な方法のようです(誰かがより良い設定で返信した場合に備えて、この回答は今のところ受け入れられません)。
この設定は、少なくとも切断によるノードの損失を許容し、ノードの復元時に問題なく同期するように見えます。