web-dev-qa-db-ja.com

Hyper-VでのMySQLNDBクラスターの作成

テスト用にHyper-V上にMySQLNDBクラスターを作成したいので、この点に関していくつか質問があります。

  1. Windows XP 32ビットを使用できますか?(すでにVMを持っているため)そうでない場合は、Windows 7または10を使用できますか?
  2. 両方のノードがインストールされるVM)が1つだけ必要ですか(MySQLが複数のインスタンスなどをサポートしているかどうかはわかりません)、または少なくとも2つのVMが必要ですか?
  3. NDBクラスターにはロードバランサーが必要だと読みました。ロードバランサーなしで実行できますか?つまり、いくつかのPHPアプリケーションを使用する代わりに、server1でステートメント(挿入/更新/削除)を手動で実行して、server2に移動するかどうかを確認します。
  4. MySQLの無料バージョンまたはエンタープライズバージョンが必要ですか?
  5. クラスターのセットアップに必要なのはMySQLまたはその他のソフトウェアだけですか?
1
Frank Martin

Windows XP 32ビットを使用できますか?(すでにVMを持っているため)そうでない場合は、Windows 7または10を使用できますか?

サポートされているプラ​​ットフォームのリストはここにあります: http://www.mysql.com/support/supportedplatforms/cluster.html

そこから、32ビットのバイナリといくつかのWindowsバージョンがあることがわかりますが、特定の組み合わせを確認してください。メモリの制限のため、MySQLでは可能な場合は32ビットバイナリ/ OSを使用しないことをお勧めしますが、

検査用の

だから私は小さな(<2GBデータ)テストでは大丈夫だと思いますか?

両方のノードがインストールされるVM)が1つだけ必要ですか(MySQLが複数のインスタンスなどをサポートしているかどうかはわかりません)、または少なくとも2つのVMが必要ですか?

本番環境では、4ノードをお勧めします。技術的には2つのノードで実行できます-はい、同じ物理サーバーでMySQL(およびndbd)の複数のインスタンスを実行できますが、ここでもテストを行っているため、テストする部分に応じて、多かれ少なかれ現実的にテストしますあなたのために働くかどうか-。ネットワークパーティションと遅延の問題、およびメモリの負荷は、単一の(またはほんの数個の)小さなマシンテストでは表示されません。同じ物理サーバー上の異なるVMであっても、現実的なシナリオは得られません。しかし、おそらくあなたはそれに興味がなく、それを設定する方法や純粋に制御されたスイッチオーバータスクを学ぶことだけに興味があります。

NDBクラスターにはロードバランサーが必要だと読みました。ロードバランサーなしで実行できますか?つまり、いくつかのPHPアプリケーションを使用する代わりに、server1でステートメント(挿入/更新/削除)を手動で実行して、server2に移動するかどうかを確認します。

はい、できますが、クラスターを持つことのポイントは何ですか?少なくとも4つのノードが必要です(2つのSQLノードと2つのデータノードはいつでもクラッシュでき、透過的なフェイルオーバーが可能です)。あなたのケースでは、単一のマスタースレーブレプリケーショントポロジ(またはマスターマスター、読み取り専用のセカンダリマスター)をセットアップしてみませんか?

MySQLの無料バージョンまたはエンタープライズバージョンが必要ですか?

MySQLにはデュアルライセンスモデルがあります。 NDBクラスターのコミュニティバージョンがあります。それは無料(無料)ですが、GPLの下でライセンスされています。つまり、使用方法に制限があります(リンクされたアプリケーションもGPLである必要があります)。 ISVまたはクライアントに成果物を提供している開発者ショップの場合は、 エンタープライズライセンス を購入する必要がある場合があります。サーバーやアプリケーションを誰にも配布しないテストでは、Communityエディションを使用できます。私は弁護士ではありません。ライセンスを読むか、ライセンスを雇って読んでください。

クラスターのセットアップに必要なのはMySQLまたはその他のソフトウェアだけですか?

負荷分散ソリューションを実際に検討する(またはアプリケーションに統合する)ことは別として、本番環境での展開には、監視ソリューション(傾向とアラートを提供する)、作業を楽にする管理ツールが必要だと思います。おそらく最も重要な部分は、アプリケーションを適応させる誰かです-MySQLクラスターは通常のMySQL/InnoDBセットアップとは大きく異なり、ほとんどの場合、それに移行することは、アプリケーションがそれにアクセスする方法について透過的ではありません(より多くのメモリとキー値です)焦点を当てた)。

ここに、MySQLNDBクラスターと他の同様の概念の違いの要約があります。

2
jynus