
私は2つのサーバーを持っています。
最初のサーバー 10.100.15.150: 1. 1 つの mgm サーバー 2. 1 つの ndbd 3. 1 つの mysql api
2 番目のサーバー 10.100.15.160: 1. 1 つの ndbd 2. 1 つの mysql api
クラスターのすべての「部分」を起動すると、次のようになります。
クラスター構成
[ndbd(NDB)] 2 ノード
id=21 @10.100.15.150 (mysql-5.1.56 ndb-7.1.17、ノードグループ: 0)
id=22 @10.100.15.160 (mysql-5.1.56 ndb-7.1.17、ノードグループ: 0、マスター)
[ndb_mgmd(MGM)] 1 ノード
id=3 @10.100.15.150 (mysql-5.1.56 ndb-7.1.17)
[mysqld(API)] 2 ノード
id=11 @10.100.15.150 (mysql-5.1.56 ndb-7.1.17)
id=12 @10.100.15.160 (mysql-5.1.56 ndb-7.1.17)
最初のマシン (10.100.15.150) をシャットダウンすると、2 番目のマシンで nbdb プロセスもシャットダウンされたため、このデータ ノードを使用できなくなり、クラスターが失敗します...
フェイルオーバーを機能させるには、このクラスターをどのように構成する必要がありますか?
THX
答え1
できません。この場合、server2 の ndbd は、server1 がシャットダウンしたため、それが唯一の実行可能なクラスターであるか、または server1 がまだ動作しているが server2 と通信できないだけであるかを判断できません。server2 をシャットダウンしても、server1 で mgm サーバーが実行されているため、server1 は引き続き実行されることに注意してください。
2 つのオプション:
1.) server2 で 2 番目の mgm を実行します。これにより、server1 の mgm をシャットダウンし、server2 の mgm に引き継がせ、server1 をシャットダウンすることで、計画的なフェイルオーバーが可能になります。
2.) mgm 用の 3 番目のサーバーを取得します。