読むのが面倒な人にとっては、CentOSはHyper-Vの下で非常にうまく機能し、本番環境で使用する準備ができていると言えます。 ちなみに、私が以下に書いていることはすべて、RHELでも同じように成功して適用できます。
さあ、始めましょうか?
仮想マシンを作成します。 そして、レガシーネットワークアダプタを追加します。 CentOSの更新やHyper-V統合コンポーネントのインストールに役立ちます。

OSのインストールを開始します。 テストシナリオを最も現実的にするために、ダイナミックVHDハードドライブを使用します。 ゲストシステムは、最大2 TBのサイズのディスクで非常にうまく機能することに注意してください。 必要に応じて自動的に拡張するダイナミックディスクを使用すると、ディスク操作の平均パフォーマンスをより現実的に計算できます。

また、インストールプロセス中に、レガシーネットワークインターフェイスを構成できます。

その後、OSのインストールが実行され、従来の物理機器にもインストールされます。 インストールが完了し、最初の再起動後、ゲストシステムに入り、ネットワークを確認します。


これで、100 Mbpsの速度のネットワークアダプターにアクセスできます。 多くのタスクではこれで十分ですが、より高速にしたいですか? すぐにこれに到達します。
Hyper-Vとの統合サービスがなくても、システムは複数の仮想プロセッサで動作できることに注意してください。 仮想プロセッサの最大数は4です。

ご覧のとおり、基本的な機能は非常にうまく機能します。 それでは、Hyper-V統合サービスのインストールを始めましょう。 それは私たちに何を与えますか?
- Hyper-V R2専用に最適化されたハードドライブおよびネットワークコントローラー用の合成ドライバー。
- Fastpath Bootを使用すると、ゲストOSが起動するハードドライブをより高速に動作させることができます。
- Hyper-Vクロックを使用したゲストOSの時刻同期。
- LinuxゲストOSは、Hyper-V、System Center Virtual Machine Manager、またはPowershellのシャットダウンコマンドを使用して正しくシャットダウンします。
- ハートビート-ゲストOSのハートビートの定期的なチェック。
Hyper-V統合サービスをインストールする前に、グラフィカルインターフェイスまたはコマンドを使用してゲストOSを更新します。
# yum update
# reboot

再起動後、Hyper-Vを使用してスナップショットを作成すると便利です。何か問題が発生した場合は、いつでもロールバックできます。
カーネルヘッダーと開発者ツールを設定します
# yum install kernel-devel
# yum groupinstall "development tools"
Hyper-Vの統合サービスをダウンロードして展開し、ゲストCentOSにISOを接続します。
合成デバイス用のカーネルモジュールを組み立ててインストールします
# mkdir /opt/linux_is
# cp -R /media/CDROM/* /opt/linux_is
# cd /opt/linux_is
# make
# make install
コマンドを使用してモジュールがロードされたことを確認します
# lsmod | grep vsc

poweroffを使用してゲストOSをオフにします。 レガシーネットワークアダプターを削除し、合成アダプターを追加します。 OSを起動し、新しいネットワークアダプターseth0を構成します。

これで、iperfを使用して合成ネットワークアダプターの速度をテストできます。

ご覧のとおり、seth0ネットワークインターフェイスの速度は平均492.5 Mbit / sです。 仮想マシンにとってはかなり良い結果です。
残念ながら、Hyper-VはゲストOSをIDEディスクからしかロードできないため、/ bootパーティションのみを作成することをお勧めします。 他のすべてのセクションでは、SCSIディスクをハードディスクとして使用することをお勧めします。 この場合、はるかに高いパフォーマンスを達成できます。


RDPを介してHyper-Vコンソールに接続してグラフィックモードのマウスでCentOSを制御できるようにする必要がある場合は、合成マウスデバイスのドライバーをインストールします。
Citrix Satoriプロジェクトページからそれらをダウンロードし、ISOファイルを仮想マシンに添付し、ソースをコピーして、コンパイルされたドライバーをインストールします。
# mkdir /opt/mouse_is
# cp -R /media/CDROM/* /opt/mouse_is
# cd /opt/mouse_is
# ./setup.pl inputdriver
このインストールでは、すべての統合コンポーネントが完了したと見なすことができます。
CentOSが実際の大規模な本番環境でどのように感じるかを見てみましょう。 これを行うために、テストサーバーで使用可能なリソース(44 GBのRAMと4つのプロセッサ)を提供しました。 残念ながら、これ以上のリソースはありませんでした。 CentOSに2TBのRAMを割り当てた場合の動作を見るのは興味深いでしょう。


その後、数日間にわたって、複数のストリームで起動されたスクリプトを使用して、ddコマンドで最大2 TBのサイズのddファイルを作成し、ftpおよびscpを介して別のサーバーに転送しました。 問題や障害は見つかりませんでした。
したがって、CentOSは、負荷がかなり大きいプロジェクトのHyper-Vの下で仮想システムとして使用できると結論付けています。