ラベル 仮想化 の投稿を表示しています。 すべての投稿を表示
ラベル 仮想化 の投稿を表示しています。 すべての投稿を表示

2025年1月5日日曜日

VirtualBoxゲストのNvmeドライバ利用をお勧めしない理由

 久しぶりの投稿ですが最近VirtualBoxのバージョンを6→7に上げた際にちょっと気になる事が有ったので書いて起きます、近年はHDDからSSD化が進み中でもNvmeタイプの普及が進みアクセス速度が格段に向上しています

VirtualBoxにゲストOS環境を作る際にはチップセットやディスクシステムのエミュレーションをどうするかでパフォーマンスが大幅に変わるのはご存じの通りですがWindowsXPや7の世代はHDDメディアが主流でSATAでの運用が一般的でした、VirtualBoxのディスクシステムにはNvmeも選べるようになっているのですがWindows10/11の導入時には標準でドライバが提供されていないので何故だろうと思い調べてみました

海外サイトにはWin10/11へのNvme環境構築の記述がありゲスト環境に以下の記述を付加すれば使用可能になるようでしたので試してみました

VBoxManage setextradata <VM name> "VBoxInternal/Devices/nvme/0/Config/MsiXSupported" 0 VBoxManage setextradata <VM name> "VBoxInternal/Devices/nvme/0/Config/CtrlMemBufSize" 0

これらの環境は個別のゲスト環境ファイルに付加するので基幹部分への影響は無くテストも容易です、付加後はインストール時にディスクメディアが選択可能になり普通に導入ができたのですがインストールを進めて操作しているとたまに反応が鈍い時があり何か問題がありそうなので調べてみると


左がNvmeで右がSATAでの接続ですがシーケンシャル系のパフォーマンスは2-3割程度の改善がみられてますがランダム系のマルチスレッド性能がHDD並みに低下しており反応がたまに悪く感じたのはこれが原因のようです、VirtualBoxが標準で提供していない仕組みには何等かの理由があるという訳で通常運用には向かないと思ったほうがいいですね

またゲスト環境を移設しなければならないケースが生じたときに標準で提供されていない環境だと予測しない事態が生じる可能性もあるのでそれを含めて標準的な環境で構築するようにしましょう


2022年8月11日木曜日

Windows11でのVirtualbox速度低下原因

 Windows11がリリースされて暫く経ちVirtualBox環境が動作しないといったトラブルも聞かなくなったのでテストを兼ねてノート上の環境を移行してみたのですが動作がいまいちもっさり感があり気になってました

最近主力のノートを第七世代に更新しSSDもM.2で高速なのでストレス無く運用してたのですがWindows10から11に認証を取り直しクリーンインストールして環境を整えたのちにVirtualBoxを構築すると何かの拍子に画面上で反応が停止する事態がたびたび発生します

Windows11になりディスクIOプロセスやマルチプロセスへのリソース割り当てが変わった事が原因なのかなと思ったりしたのですがネット上に標準ではHyper-vが有効になっていてアプリ削除をしても機能停止はされてないとの情報がありました、確かにHyper-vのアプリは削除してあったのですがそこは確認していなかったのでコマンドにて停止してみると今までのもっさりが嘘のように快適に笑

そもそもM.2のSSDで超高速なので本来ならこの世代のノートでもこれくらいの筈なんですが比較対象が無かったことやWindwos11の環境整備がまだできてない事と相まって漏れていたようです


bcdedit /set hypervisorlaunchtype off

2022年5月14日土曜日

P2Vでの再認証処理

 旧くなったPC設備を入れ替える場合は新たなPCにアプリやデータを移行するのが一般的ですがXPや7等でソフトの移行ができない或いは各種ライセンス資料を亡失して見つからないといったケースも見られます

今時はP2Vで環境丸ごと仮想化して保存する事もできますがプレインストールOSやOEMライセンスの事が多くこれらの移行はライセンス違反となる可能性があるのでお勧めはできません、法人ユーザーの場合はVL等をお持ちなのでそれを使って再認証すればそのままの環境を保全する事が可能です

先日依頼で仮想化移行の作業をした際に何故か認証系システムが破損したようで認証処理をしようにもできない事態に陥りました、仕方が無いので仮想環境のネットワークを一度無効化しセーフモードで起動してから認証システムの再構築を行って再度ネットワークを戻してから認証させたところ無事に完了しました

どうも無償ライセンスのセキュリティソフトが入っていた事が原因のようで割とその手のトラブルは多いように思いますね

2013年4月23日火曜日

2012 Server の boot manager 障害復旧操作

多様なOS環境をテストするときには、いつも構築したものを他のHDDに丸ごとクローンコピーしておいて別のテストをするときにまた戻すといった事をよくやります。

同一規格のHDDがあれば最適ですが運用中にディスク容量を大きなものや小さなものに移行する事もあるので、クローンツールの自動リサイズ処理を使うケースが多いわけでそのテストを兼ねています。

2012 Server はフリーのバックアップツール AOMEI を使ってクローンを作成してみました、バックアップやリストアだけなら Paragon や Easus がありますが Server版は有償だったりブート用の専用メディアが無いなど制限があるのに対しこの AOMEI は無料・2012サーバー対応・ブートメディア有りと三拍子揃ってます。 しかし実際に実行してクローン側のHDDで起動するとbootmanagerのエラーが出てしまいました

ブートマネージャーを使用していないOSならばこういった問題は無いのですが便利なようで不便なようで・・・ 細かい原因その他は説明が面倒なので適当にググッて下さい、ここでは復旧の手順だけまとめます。 ちなみに Paragon や Easyus 等でもテストしてみましたが結果は同じで単純なクローン作成ではシステム起動できませんでした。


2012 Server にも対応している無料のバックアップツール「AOMEI」でクローン化を実行


「0xc000000e」のブートマネージャーエラーです Paragon や Esaus のパーティションツールで自動修復もしてみましたがそれでは駄目です、ブートマネージャーの内容を編集する方法もありますが面倒なので 2012Server の起動ディスクで修復します。


インストールDVDで起動します


左下にある「コンピューターの修復」を選択します


オプションで「トラブルシューティング」を選択します


更に「コマンドプロンプト」を選択します


「\sources\recovery」ディレクトリに移動します


「StartRep.exe」を実行します


自動修復処理が起動します、終わると勝手にシステムが起動します


無事に起動しました。



ちなみに 2012 Server Hyper-V はどうかというと、どうやらCoreサービスが無いようで修復は出来ませんでした。 現時点ではコールドバックアップができるのは通常版の2012 Server だけのようです、但し 2012 Serverの通常版も Hyper-V 環境を構築しているとHDDのクローンをしてもそれらはそのままでは動作しません、その対処については次回掲載します。




2013年1月11日金曜日

SSDベンチマークの罠 (仮想化支援は必須なのか)

色々とテストを進めるにつれて市販されているSSDの性能評価というのは実行する環境にかなり左右される事が分かってきました。  前回は仮想化支援機能の無いAtomプロセッサ上においてIDE接続やSATA接続の評価をしていましたが、今回はまた Core2 Quad Q6600 2.4GHz で同様のテストをしてみましょう。

最初にIDEコントローラーからSATAコントローラーに変更をしたところ何故か認識しない症状が発生しました。 マザー系が異なる環境だと原因が明確になりませんが一応ゲストのXPをクリーンインストールした環境をもう一度つくり、VirtualBox側のコントローラ変更だけにとどめてみました。 前回は別途Intelから入手したドライバを使用しましたが、今回の状態だとVirtualBoxが自動的に導入するドライバ(8.5.1 2008/07/20版)で運用する事になります。

ホスト側参考値

ゲスト側参考値(SATA接続)


まーシーケンシャルがえらい事になってますね、SATA2接続なのにまるでSATA3並のパフォーマンスです(笑)、恐らくバッファ効果でしょうか

ランダム性能は相変わらずのようですが、前回Todoバックアップとリストアをすると多少改善が見られたのでまた試してみましょう。

SSDベンチマークの罠 (VirtualBox IDE vs SATA)

テストをしているVirtualBoxのゲスト設定にはストレージオプションにIDEコントローラー以外にもSATAコントローラーの選択ができるようになっています。  ゲストOSとしてXPをインストールする場合にはデフォルトでIDEコントローラーが使われるわけですが、VirtualBoxでエミュレートするIDEコントローラーはDMA2のモードとなっています。  いくつかのサイトでこのコントローラーをSATAに変更したらかなり高速になったとの情報もありましたので、今回は既に導入済みのXPに対してSATA接続に変更してテストしてみました。

SATAのXPドライバはINTELのサイトにありますのでそこから入手し、ゲスト設定で追加したSATAコントローラーを起動後に該当するドライバにてアップデートをします、シャットダウン後にIDEに紐付けされていたドライブをSATAコントローラに割り当てすれば完了です。

該当ドライバの直リンクだとバージョン等に変更がある可能性があるのでIntelサイトのダウンロードセンターで下記のように「ソフトウェア製品」→「チップソフトソフトウェア」→「インテルラピッドストレージテクノロジー」で検索するのが良いでしょう。  

現時点での最新版は8.9.0.1023でした、ファイル名末尾が3289は32bit版で6489が64bit版です。





VirtualBox側にあるSSDオプションのチェックボックスはもちろん設定済みです。

IDEコントローラー接続(VDI固定領域、通常モード)



SATA接続(VDI固定領域、通常モード)




ん? まー上がったと言えば上がってるのだが、ではアクセスモードをライトスルーにしてネイティブ効果があるかやってみましょう


SATA接続(VDI固定領域、ライトスルーモード)



やはり目立った効果は出ていないようです、ATOM自体が仮想化支援機能が無い事が原因なのでしょうか? 次回は仮想化支援機能のある Core2 Quad 機で同様の検証をして見ましょう。


道のりは遠いな・・・・・・


SSDベンチマークの罠 Part3 (ライトスルー設定)

今回はVirtualBoxのディスク設定の違いを評価してみましょう。  VirtualBoxはVDI,VMDK,VHD,HDD,QED,QCOWといったファイルタイプも選択できますが、ここでは主に使われるVDIについて「通常」と「ライトスルー」の選択でどのように変化するかを検証します。

評価環境は以前と同じ

OS : Windows7Pro 64bit(ホスト) WindowsXPPro32bit(ゲスト)
CPU: Atom525 1.8GHz
SSD: CSSD-S6T120NTS2Q (120GB SATA2接続、AHCIモード)

通常設定のゲスト値(Easyus Backup Restore後)


ライトスルー設定のゲスト値

通常設定の方はEasyus Todo BackupRecovery を使用してSSD用に最適化をした後でライトスルー側はそのままインストールして計測をしています。 本来はライトスルー側も同様の処置をしたほうがより正確な評価になると思われますが、仮想環境上でバックアップリストアをすると前回3時間近く掛かったのでそのテストは次回にまたアップしてみます。

現状の評価では512Kがホスト側のバッファ効果からか速度が向上しています、シーケンシャルは逆に低下していますが比較がTodoのリストア後でないとまだ何とも言えません。  肝心のランダム性能を見る限りは全く差がありません。



2013年1月10日木曜日

SSDベンチマークの罠 Part1 (仮想化OSによる差異)

最近のSSDはコントローラのチューニングが進み比較的速度も安定してきたようです。 初期の頃はSSDの特性と実運用がマッチせずプチフリの発生や使用につれて速度が低下するといった問題が多かったのですが、最近はかなり改善されて価格も手頃になったのでHDDからSSDに移行をするユーザーも増えてきました。

業界情報では主にHDDに使われてきたベンチマークソフトで検証結果を公表して評価しているところが多いのですが、実際に乗せ換えをしてみると期待値程の効果を得られないことがあります。

SSD自体の構成(MLCやSLC)やOSのアライメント特性といった事も影響するわけですが、PCの利用時にはそれよりもより実情に合った評価をする必要があると思えます。 主にベンチマークで評価されるのはRead性能やWrite性能を単独評価する向きがありますが最近のPCはマルチスレッドで処理を行うケースが多く、利用するアプリケーションによりI/Oプロセスのオーバーヘッドがかなり発生するのが一般的です。

SSDの場合HDDと違いシーク時間や物理的なI/Oウェイト時間というのが発生しないのでそれらを考慮する必要は無いと言う人もいます。  しかし実際にはRead/Writeが頻繁に発生するのが通常であり、Read一辺倒やWrite一辺倒というのは実運用時のパフォーマンス評価からかけ離れた結果をもたらします。  ハードウェアとしての性能検証と言う面では的を得ているのですが外部ストレージとして最も重要な相対的なスループット評価は別のアプローチが必要です、それらの違いを2回に分けて判りやすく検証してみました。


基本となる評価材料

OS : Windows7Pro-64bit
CPU: Core2 Quad Q6600 2.8GHz
SSD: CSSD-S6T120NTS2Q (120GB SATA2接続)
HDD: SATA2接続


SSDの実測値
HDDの実測値


まずは一般的なHDDとSSDを単純比較です、入手したSSDはSATA3対応でSread/507MB Swrite/374MB の公称スペックですがテスト機のマザーがSATA2までの接続仕様なのでSSD側のスペック不足による問題は無いと思います。
SATA2接続を考慮するとほぼ8割9割の速度がでていることになりますね、一方HDD側はというと特に単純なランダムアクセスにかなり弱いのがうかがえます。 SSDのメリットがこの部分だとよく強調されます。


【SSDの仮想化による影響は?】


次に仮想化による影響を検証してみます。  システムを仮想化するとディスクへのI/Oプロセスはエミュレータが受け持つ訳ですが仮想ディスクに対するパフォーマンスが気になります。 使用するのはOracleのVirtualBox最新版4.2.6です


WindowsXP Proffesional 32bit
HDDをそのまま若干高速化したような感じです、SSD本来のパフォーマンスからすればシーケンシャルのI/Oも半減ですが本来得意とするランダムアクセスがHDDのようなレスポンスしか得られていません。 HDDに比べてランダムは5-6倍といったところでしょうか、SSDの100倍とは比べるべくもありませんがそれでもHDDよりは早いのは事実


Windows2000Server 32bit
これまたXPと大差無い感じです、どうやら仮想環境におけるXPと2000のI/O処理は同じエミュレーション機能のようです。


Windows2003Server 32bit

おや? ちょっと様相が変わりましたね。 仮想環境側がホスト側のパフォーマンスを上回る結果に・・・ どうやらシーケンシャルのI/Oはホスト側のバッファ効果で規定値を超える数値を叩き出しました。  でもランダムアクセスは相変わらず低速です、XP系に比べるとほぼ倍、HDDに比べると10倍といったところです。


Windows2003Server 64bit

念のため 32bit と 64bit による違いがあるかも検証してみましたがこれは殆ど誤差の範囲のようです。

仮想化したOSの種類によってディスクI/Oのスループットが大きく異なるのがこれでお分かりでしょう、XP世代まではクラスタ管理などの違いやI/Oプロセスの違いもあるのでしょうが利用する際には注意が必要です。  ちょっとWindows7も気になるので次回仮想化してみるとしましょう。

今回のテストはあくまで単純なRead/Writeなのでまで実利用環境には程遠いです、次回は入出力処理の負荷を掛けた結果とマルチスレッドI/Oでの結果をお見せします、こちらも興味深い結果です。