1つの巨大なVMを複数の物理的なコモディティサーバーにスパンすることは可能ですか?


11

1つの巨大な仮想マシンを複数の物理的なコモディティサーバーにスパンすることは可能ですか?

使用例は次のとおりです。

  • 64 GBのRAMを搭載した32プロセッサのdbサーバーを実装する必要があります
  • このような容量の物理サーバーはありません
  • 少ないリソースで多くのサーバーがあります。

これらのサーバーを利用して必要な容量のVMを作成できるテクノロジーまたは(より良い)製品はありますか?たとえば、8つのRAMを備えた8つの物理4プロセッサマシンを、それぞれ64 GBのRAMを備えた32プロセッサの「論理ユニット」に結合し、この容量をすべて使用するOracleサーバーをセットアップできますか。

この質問を投稿する前に、同様の質問を読みましたが、答えが見つかりませんでした。

たぶん、誰かが今私たちにヒントを与えることができますか?


2
これはあなたの質問に対する答えではありませんが、ソフトウェアの制限を調べることについて誰もアドバイスしないのは奇妙に感じます。あなたの会社が中規模ビジネス向けのアプリを構築する場合、問題はソフトウェアの制限であることが明らかです私のそれは問題を解決する方法です...のx86に3.3ギガバイト制限に考えるための遅いクエリのためにいくつかのセルフテストとエラー報告を作成する

回答:


7

vSMPと呼ばれるScaleMPの商用製品があります。複数のx86システムを単一の仮想インスタンスに集約できます。私はこれまで個人的にこれを試したことはありませんが、彼らからのプレゼンテーションを経験しました。正しく覚えていれば、これが機能するための特定の要件があり、追加のハードウェア(高速で低遅延の相互接続用のInfiniband)を入手する必要があります。かなりの費用がかかることもあります!


1
ScaleMPはx86環境をエミュレートしません。仮想環境でWindowsやその他の標準のx86 OSを実行することは決してありません。サポートされているフレーバーは、SMPタイプアーキテクチャ上に構築されたさまざまなバージョンのLinuxのみです。そして、そのタイプのアーキテクチャには、いくつかのフレーバーがあります。無料のものでも。
TheCompWiz

OPは他の要件について具体的ではありませんでした。私は彼/彼女の投稿から何を集めることができるかだけ答えました。
ライアンリム

1
これは血まみれのクールに見えます。32コアボックス(2 x 16コアAMDチップを搭載可能)は、Infinibandを備えたクラスターよりも安価であると思われますが、先に進みます。このソリューションは、より自慢できる権利を獲得します。
トム・オコナー

9

単一の32プロセッサマシンとまったく同じ機能を得る方法はありません...いくつかの別個のサーバーがあります。最善の策は、クラスタリングまたはグリッドコンピューティングを調べることです。適切に行うと、同等のパフォーマンスと高レベルの高可用性を実現できます。あなたの質問の多くは、「db」タイプにも依存します。Microsoft SQL Serverの動作はMySQLやOracleとは大きく異なります...また、スケーラビリティもまったく異なります。

または...誰かにデータベースを任せることを検討したいかもしれません... EC2 RDSを使用するように...

残念ながら、複数の物理サーバーを組み合わせて、それらのサーバー上でvmwareを平手打ちし、最終的に単一の超強力な仮想サーバーにする方法はありません。


TheCompWiz、答えてくれてありがとう。答えがdbタイプに依存する場合は、OracleまたはMicrosoft SQL Serverとします。これらの修正では、まだ不可能ですか?はい、EC2については知っていますが、お客様に提供するソフトウェア製品の問題をテストするには、OracleまたはMicrosoft SQL Serverが必要です
...-user54614

また、なぜVMwareのみが考慮されるのですか?他のハイパーバイザーを気にしません
...-user54614

複数のサーバーをトラバースする機能は、ロジスティクスの大きな悪夢です。デバイス間の利用可能な帯域幅の不足は言うまでもありません。CPUがどれほど速いかを考えてください...それから、あなたがしなければならないことのすべてがプロセスを遅くします...すなわち、CPU->バス-> PCIブリッジ->ネットワークカード->イーサネットケーブル->ネットワークスタック-> ...他のサーバーに到達する前でも?1 + 1を追加できるようになるまで1秒間待ちたくありません。クラスタは一般的に...このタスクは、「ジョブ」に割り当てられ、ジョブがそのジョブのすべてのタスクを行い、計算ノードに対して発行されているため、行うことができます
TheCompWiz

...そして、管理ノードに回答を送り返します。Windowsはサポートしていません。これを実行しようとする仮想X86環境(またはX86_64)をセットアップする方法はありません。
TheCompWiz

2
@ user54614-マシンを束ねてシナリオを複製することは絶対にできません。クライアントとOracleサポートの両方に相談して、問題を特定して特定することをお勧めします。
クリスソープ

-1

「TheCompWiz」はあなたの質問に有益に答えました。

はい、1つのVMが複数の物理ホストにまたがることができるハイパーバイザーを構築し、すべてが機能する場所でそのVMを「正しく」実行できると言いたいです。

しかし、物理ホスト間の本当に優れた高速ネットワークであっても、そのようなもののパフォーマンスは本当にひどく、それらのホストの1つに収まる小さなVMよりもはるかに遅く実行されます。ゲストOSおよびアプリケーションが行ったすべてのメモリ読み取りまたは書き込みをインターセプトすることにより、1つのVMのキャッシュコヒーレンシープロパティをシミュレートする必要があり、メモリアクセスのコストは数百万ではないにしても数千倍になります。

そのため、商用ハイパーバイザーベンダーはそのようなことを可能にしません。ラボで試されました。誰もそれを使って製品を作ることに煩わされていません。

ポイントをもう一度強調するには、ソリューションのクラスタリングに注目してください。


しかし、私たちが提供するソフトウェア製品がほとんどのお客様には問題なく機能するのに、64 GBのRAMを搭載した32 proc Oracleサーバーでアプリケーションを実行する大規模なお客様の環境では適切に機能しない場合はどうでしょうか。この障害を環境で再現したいと考えています。
user54614

2
私はあなたのソフトウェアについて何も知りませんが、2プロセッサと8 GB RAMでは発生しない32プロセッサと64GB RAMで何が起きていますか?そのレベルで本当に繰り返し間違いがある場合は、Oracle / OS / driver / IO / hardwareの問題です。
gravyface

物理マシンを通過するハイパーバイザーを取得することはありません。それらはまだマシンの物理的なコア内に限定されています。そうは言っても...昔の古風な巨獣のようなメインフレームタイプのアーキテクチャを構築できるとは思いますが、x86を実行することは決してありません。
TheCompWiz

1
巨大な顧客に、そのモンスターデータベースサーバーの2番目のQAインスタンスが必要です。利用できるものがない場合、それは本当に彼らの問題です。15年間のIT業務の中で、ソフトウェアベンダーがインフラストラクチャを複製することを期待する人は誰もいませんでした(それがサービスコントラクトの一部であり、それを顧客が支払う場合を除く)。特に、そのインフラストラクチャが難解である場合(ただし、最近は32コアの64 GBサーバーをDellから約22,000ドルで購入できます)。
rmalayter

ScaleMP(scalemp.com)はどうですか?
user54614

-2

VMWareはそうします。DRSまたは分散リソーススケジューラと呼ばれます。16個のサーバーのリソースを組み合わせることができます。その後、その合計を1つ以上の仮想環境に配布できます。


いいえ、これはDRSが行うことではありません。DRSを使用すると、クラスターの周囲にある1つのvMotionマシンが自動的にホストノード間で負荷をかけることができます。1つのVMから複数のホストにアクセスすることは一切ありません。
EEAA
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.