web-dev-qa-db-ja.com

vSphere4.0でのSQLServerのパフォーマンス

VMWare環境では説明できないパフォーマンスの問題が発生しており、ここの誰かが助けてくれることを願っています。データベースバックエンドを使用するWebアプリケーションがあります。 Windows 2003R2の物理ノードと仮想ノードの間にSQL2005クラスターがセットアップされています。両方の物理サーバーは、2x Xeaon x5460クアッドコアCPUと64GBのメモリ、16GBがOSに割り当てられた同一の2950です。すべてのクラスターディスクにiSCSISanを使用しています。問題は、クラスターノードにCPUを追加する繰り返しのストレステストでアプリケーションを利用する場合、物理ノードが1pCPUから8pCPUにスケーリングするため、パフォーマンスが継続的に向上することを意味します。 vSphereを実行しているノードをテストすると、仮想であると予想されるパフォーマンスが12%低下しますが、物理的なものと同様に1つのvCPUから4つのvCPUにスケーリングしますが、このパフォーマンスを超えると、パフォーマンスが8つのvCPUに達するまでに低下します。 4つのvCPUよりも悪い数値。この場合も、両方のノードはハードウェア、ゲストOS、SQL構成などに関して同じように構成されており、システムでのテスト以外のトラフィックはありません。仮想サーバーには他のVMがないため、リソースをめぐって競合することはありません。 VMWareにサポートを依頼しましたが、SQLプロセッサアフィニティの設定など、実際には提案されていません。これは、役立つ一方で、各ボックスに同じ正味の効果をもたらし、結果を少なくとも変更することはありません。 VSphereに関するVMWareのSQLチューニングガイドをすべて見てきましたが、メリットはありません。助けてください。

1
Charles

具体的なサポートがあまりないので、答えとして入力するのをためらっていますが、それがあなたが見ている問題の原因である可能性があります。 VMに複数のCPUがある場合、VMWare CPUスケジューリングはより困難になると聞いたことがあります(そして this ページのようなものがそれをサポートしています)。単一のCPUVMの場合、単一のホストプロセッサのみをスケジュールする必要があります。ただし、VMに複数のプロセッサがある場合、VMWareはVMで使用できるように複数のプロセッサをスケジュールする必要があり、これには時間がかかる可能性があります。 VM CPUの数が増えると、スケジュールがますます難しくなります。つまり、VMは、プロセッサ時間を取得するのが難しいため、実際にはパフォーマンスが低下します。それに割り当てられます。

また、最後のコメントを読み直しました。最近、vSphereでの競合についても問題が発生しています。現時点でVM)しかない場合でも、このVMのリソース割り当てを増やすことをお勧めします(まだ行っていない場合)。

1
Paul Kroon

ここにはかなりきちんとした設定があります;-)

VCPUは最大容量まで使用されていますか? CPU待機、CPU準備完了、およびCPU使用率のグラフは何を示していますか?

VCPUを追加すると、VMに追加されます。これは、vCPUを管理し、それらを物理的なものにマップするためにホストシステムで生成されるオーバーヘッドが増えるためです。ある時点で、a =からパフォーマンスが向上することはありません。 VM vCPUを追加するだけです。

ISCSI SANにパフォーマンスの問題があるかどうかを確認しましたか?グラフのディスク読み取りおよびディスク書き込み要求、そしてもちろんディスク読み取りおよび書き込み速度を確認し、それらを物理クラスターメンバーのものと比較します。

たぶん、いくつかの値はあなたを正しい方向に向けることができます。

1
grub

明確にするために、8コア(2 x 4)ESXボックスを使用して単一の8 vCPU VMをホストし、5番目以降のvCPUの実際のパフォーマンスの向上は見られませんか?代わりに、物理SQLボックスと同じホストを使用していない理由を質問します。パフォーマンスの問題が発生していなくても、メリットがないように見えるために、そこに最大5〜6千ドルのEnterprisePlusライセンスを使用しています。 )-申し訳ありません。

0
Chopper3