アプリケーションはVMで「サポートされていません」?


10

私たちは小さな会社からいくつかのソフトウェアを購入しました。それはWindows 32ビットビデオコンテンツワークフローマネージャーであり、それらによっていくつかのカスタマイズが行われています。

私たちはこのコードをW2K3EE-32ビットのVMWare ESXi 4.1u2 VMで1年以上正常に動作させてきました(これは、その実行をサポートしているものです)。

次に、1か月ほど前にコードを更新し、vCPUの1つが定期的に100%でペギングしていることを確認し始めました。それ。

彼らは私たちのところに戻ってきて、彼らのコードはVMで動作せず、18か月ほどこの要件について知っていて、V2Pを求めていると言ってきました。彼らは、VM内で実行したときにのみこの問題が発生すると言います。彼らと話し合うために数時間後に予定されている彼らの上級プログラマーとの電話があります。

幸いなことに、これを実行できるいくつかのフィジカルがあり、少し時間がかかりますが実行可能です。

しかし私の質問は、このVMがハードウェアに直接触れず、非常に最新のホスト上にあり、実際には要件が非常に低い(2 x vCPU、4GB、20GBブートvdisk、100GBデータvdisk、シングルvNICなど) VMで実行すると問題が発生する可能性があります(ある場合)。

明らかに私は彼らと一緒にこれを強く追求していますが、誰かが通常のアプリケーションを見つけたのではないかと思っただけです。


両方のvCPUが同じCPUからプルしていますか?実際の各コアがvCPUに直接マップするように設定されていますか?CPUでハイパースレッディングを有効にするなど、何かおかしいことをしていますか?これらは、あなたが対処できるあなたの側で彼らを遅くさせるかもしれない何かを解決するのに役立ついくつかの質問です。上級プログラマと話し合った後、VMで実行することで発生する可能性のある問題に対処する方法、または彼らが間違っているかどうかを確実に知ることができるでしょう。コードがJavaで書かれているだけかもしれません。
Wilshire

私はESXiにプロセススケジューリングの点でそれ自体を任せています。55xxシリーズを超えるXeonのハイパースレッディングは「おかしい」とは見なされません。機能し、非常に便利です。
Chopper3 2012年

MySQL Clusterは仮想化環境でも「公式に」動作しないようです。理由?ダンノ!:P
ベンアシュトン

回答:


3

このベンダーやソフトウェアパッケージについて話すことはできませんが、私は大規模な(多国籍)ベンダーで働いていました。彼らが販売したソフトウェアの1つに、VMwareでの実行時に非常に具体的な既知の問題がありました。

この場合、1つの問題がソフトウェアのデッドロックを引き起こし、もう1つの問題がデータの破損を引き起こす可能性があります。そのため、仮想環境でソフトウェアを実行しないようにお客様にアドバイスしました。一部はまだしました、そして私が知っていたすべてのケースで、彼らは問題の一方または両方に遭遇しました。

まれですが、VMwareで期待したとおりにソフトウェアが動作しない場合があります。

私はそれが直接あなたの問題を助けないことを理解していますが、それはVMWareが必ずしも完璧なシステムではないことを示しています。

脚注:この場合、ベンダーはVMwareと連携して解決策(一部のコード修正、一部のVMWare構成の変更)を見つけることができ、VMWareでソフトウェアを実行する方法について(非常に具体的な)ガイダンスが提供されています。


それはまさに私の悲しいことですが、聞いて感謝します。Janneの返答で述べたように、VMで正しく機能することに慣れているので、このような奇妙な状況のセットを見つけると、正直なことに少し戸惑いました。なので、私だけではないということをあなたから聞いても、少なくとも慰めることになります。ソフトウェアベンダーからの肯定的な意見はまだ聞いていませんが、問題を調査していることは承知しており、残念ながら1か月ほどの修正は想像できません。再度、感謝します。
Chopper3 2012年

3

ESX v5とMonster VMの制限(32vCPU 1TB RAM)により、VMに問題があるアプリケーションの数は減少しています。私が経験したもののほとんどは次のいずれかです:-線形であることに時間を依存している(線形時間を必要とするリアルタイムプロセスまたはアプリ...これは通常微調整できます)-多くのハードウェア割り込みまたはコンテキスト切り替えを引き起こすアプリ

ほとんどの場合、VMwareの担当者にそれらの人と話すように依頼できるはずです。私はvmwareに、物事を機能させることに専念する人々のチームがまだあると信じています(彼らには、初期の段階でこれのためのサポートラボがありました)。

解決策としては、CPU使用率が高いVM(ただし、CPUリソースが十分にあるホスト)で同様の問題がありました。Nehalem CPUを搭載したサーバーに移行し、EVCのCPU互換性レベルを変更することで問題を修正しました(DRS / HAを備えたクラスターがある場合)


ご回答ありがとうございます。これが本当に白黒の質問ではない場合は、どうもありがとうございました。あなたの例は非常に有用です。ここで、特にコンテキストスイッチングについて説明します。ああ、すべてのサーバーはEVCが均一に設定されたまったく同じCPU(X5690)上にありますが、再び感謝します。
Chopper3 2012年

2

VMware ESX + Debian 6 + OpenLDAP 2.4.x(OpenLDAPの正確なバージョンがapt-gettable ...であっても)で同様の問題が発生しました。

日常の操作では問題なく動作しますが、400 000程度のエントリの多いLDIFファイルのインポートなどは非常に遅くなります(物理サーバーよりも50〜100倍遅くなります)。また、長時間の大規模なベンチマークでは、数ミリ秒の応答時間ですべてがスムーズに行われますが、500から25 000(!)ミリ秒の範囲の奇妙なピークがときどきあります。

物理サーバーでは、これらの問題を再現できません。そして、はい、約3週間かけて問題を特定し、オペレーティングシステムのパラメーターからslapd値、BerkeleyDB値に至るまで、あらゆる種類のパラメーターを調整しました。


経験を共有していただきありがとうございます。私はこの全体が少し奇妙だとは言えません-私は経験の仮想化オタクであり、これを行うアプリケーションを見つけるためにそれを動かすだけに慣れていますある意味で私の信念を揺さぶったので、私が孤立した立場にないことを聞くのは良いことです。ありがとうございました。
Chopper3 2012年

1
別の二つの例:アトラシアンは、両方のことを言うJiraとは、ConfluenceVM(ウェア)環境で実行することが推奨されていません。これらの例外にはパターンがあるはずですが、それが何であるかはまだわかりません。私のOpenLDAPインストールはI / Oをあまり集中させません(3 MB / sの書き込みとベンチマーク中のピーク時のIOPSが多すぎない)、それはおそらく20〜40%のCPUと約150 MBのRAMを使用します。扱いにくいことはないはずです。おそらくそれはスレッド化と関係がありますが、vmstatはコンテキストスイッチなどが通常のレベルであると報告します。
ジャンヌ・ピッカライネン2012年

私の現在の理論は、これはOSの時間管理と関係があるというものです。VMwareは過去にあらゆる種類の奇妙な時計の問題を抱えていましたが、今でもtsc=pit起動中にいくつかのスタイリッシュなパラメーターを渡す必要があり、少なくともOpenLDAPはシステム時計の精度に非常に敏感です。多分私はすべての問題のあるアプリを追跡し、それらがすべて頻繁に使用するgettimeofday()かどうかを確認する必要があります。
ジャンヌピッカライネン2012年

もう一度ありがとうございます。VMでの時間は正しいです。それは本質的にあらゆる場所にあるため、これは理解できますが、それが問題であったとしても、それは非常に迅速な問題になると思わずにはいられません。私たちのベンダーがコードを見つけるには、それが実際には時間依存のアプリケーションではなく、ビデオコンテンツを取得して処理するだけであることに注意してください。再度、感謝します。
Chopper3
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.