パート1:問題を定式化し、システム構成を説明します
仮想マシンを使用する理由 それはただ有益です。 まず、「仮想マシン」を使用すると、機器の購入とメンテナンスを節約でき、安全で管理しやすくなります。 仮想環境の端末は、時代遅れのコンピューターや、基本的な機能を実行できなくなったモバイルデバイスになることさえあります。 ただし、これは「通常の」ジョブに適用されます。 大量のデータを扱う開発者、研究者、アナリスト、およびその他の専門家は通常、強力なワークステーションを使用します。 Dell VDIプラットフォームは、このようなマシンを仮想化するように設計されています。
これが私たちがしなければならないことです。
•「重い」タスクのために、vSphereに基づいたHorizon ViewおよびvDIの完全なインフラストラクチャを開発します。 Fluid Cacheテクノロジー、Compellentディスクアレイ、PowerEdgeサーバー、およびDell Networkingスイッチを使用する予定でした。
•ディスクサブシステムとの交換の要件が高いVDIスタックの各実装レベルでのアセンブリのパフォーマンスを決定します。 ワークフロー全体を通して、1 VMあたり80〜90 IOPSと考えました。
•ピーク負荷でのパフォーマンス低下(いわゆるブートストームとログインストーム)を決定します。
ハードウェアおよびソフトウェアプラットフォームは、次のもので構成されていました。
•VMware Horizon View 6.0、
•VMware vSphere 5.5ハイパーバイザー、
•Dell Express PCIe SSDがインストールされたDell PowerEdge R720サーバー、
•Dell Networking S4810スイッチ、
•Dell Compellent SC8000ディスクアレイ。
以下に書かれていることは、高負荷のユーザーワークステーションに仮想化技術を実装することを計画しているシステム設計者にとって興味深いものです。
システムコンポーネント
1. SANおよびVDI用のDell Fluid Cache
このテクノロジーは、サーバーにインストールされたExpress Flash NVMe PCIe SSD「ドライブ」を使用し、リモートメモリアクセス(RDMA)を提供します。 追加のキャッシュレベルは、ディスクアレイとサーバー間の迅速な仲介です。 アーキテクチャの機能は、最初は並列化され、障害に強く、負荷分散の準備ができており、高速SANネットワークとペアになっていることです。少なくともすべてのビルドサーバー、少なくとも一部のサーバーにキャッシュ用のディスクをインストールできます。 Flash NVMe PCIe SSDを搭載していないマシンでも、データをより速く交換できます。 キャッシュされたデータはRDMAプロトコルを使用してネットワーク経由で送信されます。ご存知のように、その利点は最小限の遅延にあります。 Dell Compellent Enterpriseソフトウェアがキャッシュコンポーネントを検出すると、Fluid Cacheクラスターが自動的に作成および設定されます。 Fluid Cacheを使用する場合の最速は、外部ディスクアレイにデータを書き込むことです。これにより、IOPS(1秒あたりのI / O操作)の数が増加します。
この図は、分散キャッシュのネットワークアーキテクチャを示しています。
2.ソリューションのアーキテクチャ
これは、仮想マシンと外部ディスクアレイ間の高速データ交換の様子です。
3.プログラム
地平線ビュー
Horizonビューは、仮想デスクトップを安全かつ管理しやすくするVDIの完全なソリューションです。 そのコンポーネントは、ソフトウェア、ネットワーク環境、およびハードウェアのレベルで機能します。
成分 | 解説 |
クライアントデバイス | ユーザーに仮想ワークステーションへのアクセスを提供する個人用デバイス:専用端末(たとえば、Dell Wyseエンドポイント)、携帯電話、タブレット、PCなど。 |
Horizon View接続サーバー | システム内のユーザーを許可し、それを端末、仮想マシンまたは物理マシンにリダイレクトするソフトウェア製品。 |
Horizon View Client | プログラムのクライアント部分。 Horizon Viewを実行しているワークステーションへのアクセスに使用されます。 |
Horizon Viewエージェント | クライアントとHorizon Viewサーバー間の通信を提供するサービス。 |
Horizon View管理者 | Horizon Viewインフラストラクチャおよびコンポーネントを管理するためのWebベースのインターフェイス。 |
vCenter Server | VMware仮想マシンのアレイを管理、構成、および管理するための主要なプラットフォーム。 |
Horizon View Composer | 基本的なOSイメージに基づいて仮想マシンのプールを作成するためのアプリケーション。 これを使用すると、システムの管理が簡単になり、リソースを節約できます。 |
仮想ワークステーション
異なる仮想マシンは異なる動作をする必要があります。 特定のユーザーの永続的な「仮想マシン」は、OSファイル、プログラム、および個人データが置かれているディスク上の独自の場所を持っています。 ユーザーがシステムに接続すると、元のOSイメージに基づいて一時的な仮想環境が作成されます(したがって、終了時に破棄されます)。 この作業スキームにより、システムリソースが節約され、安全で会社のすべての要件を満たす統一された職場を作成できます。 これは一般的なタスクに適していますが、すべての従業員が一般的なタスクを実行するわけではありません。
VMware View Personalプロファイル管理は、両方のアプローチの長所を兼ね備えているため優れています。 Windowsは、ローカルユーザープロファイルだけでなく、サーバーに保存されているユーザープロファイルでも機能するようになりました。 その結果、ユーザーはOSイメージから一時的な仮想マシンを受け取りますが、個人データはサーバー上のプロファイルからそこにロードされます。 このようなマシン-VMwareリンククローン-は、ディスクメモリの負荷が高い場合に最適です。
Horizon Viewデスクトッププール
Horizonビューは、さまざまな種類の仮想マシンに対してさまざまなプールを作成します-これにより、管理が容易になります。 たとえば、永続的な物理マシンと仮想マシンは手動プールに分類され、自動プールには1回限りのテンプレートが含まれます。 プログラムインターフェイスを介して、割り当てられたユーザープロファイルでクローンを管理できます。 ここでは、構成、構成、およびメンテナンスの機能について読むことができます。
ハイパーバイザー:VMware vSphere 5.5
VDIおよびクラウドソリューションを作成するには、VMware vSphere 5.5が必要です。 仮想化、管理、インターフェースの3つの主要レベルで構成されています。 仮想化のレベルは、インフラストラクチャとシステムソフトウェアです。 管理層は、仮想環境の作成に役立ちます。 フロントエンドは、WebベースのユーティリティおよびvSphereクライアントプログラムです。
仮想化環境におけるVMwareおよびMicrosoftの推奨事項によれば、ネットワークコアサービスも使用されます-NTP、DNS、Active Directoryなど。
4.デルのハードウェア
仮想マシンは、vSphereによって管理される8つのノードのクラスターでホストされます。 このような各サーバーには、PCIe SSDとFluid Cacheプロバイダーの機能があります。 これらはすべて、10 GBイーサネットiSCSI SAN、VDI管理ネットワーク、およびキャッシュを提供する3つのネットワークに接続されています。
vSphereを実行している2つのノードの別のクラスターがあります。 vCenter Server、View Connection Server、View Composer Server、SQL Server、Active Directoryなど、VDIインフラストラクチャ機能を実行する仮想マシンが含まれています。 これらのノードは、VDIおよびiSCSI SAN管理ネットワークにも接続されています。
Dell Compellent SC8000ディスクアレイには、デュアルコントローラと3種類のディスクがあります:書き込み集中(WI)SSD、15K SAS HDDおよび7.2K NL-SAS HDD。 ご覧のように、ディスクサブシステムは生産的で容量があります。
スイッチはペアでスタックされます-これにより、ネットワークレベルでフォールトトレランスが提供されます。 仮想マシン用、VDI用、iSCSI SAN用の3つのネットワークすべてに対応しています。 帯域幅はVLANに基づいて共有され、トラフィックの優先順位付けも実行されます。 これらのネットワークの最適な帯域幅は40 Gb / sですが、10 Gb / sで十分です。
一般的なインストール計画は次のとおりです。
1.管理コンソール。
2. VDIおよびクライアント管理ネットワーク。
3.仮想マシン用のvSphereサーバー。
4.流体キャッシュコントローラー(2個)。
5. SANスイッチ(2個)。
6.ディスクアレイコントローラー(2個)。
7.ディスクアレイの棚(2個)。
8. VDIインフラストラクチャを提供するサーバー。
5.コンポーネントの構成。
サーバー
VMのクラスターを構成する8つのDell PowerEdge R720サーバーには、それぞれ次のものがあります。
•2つの10コアIntel XeonプロセッサCPU E5-2690 v2 @ 3.00GHz、
•256 GBのRAM
•350 GBの容量のDell Express Flash PCIe SSDを駆動し、
•ネットワークカードMellanox ConnectX-3、
•ギガビットネットワークコントローラーデュアルポートBroadcom NetXtreme II BCM57810 10
•ギガビットネットワークコントローラークアッドポートBroadcom NetXtreme BCM5720。
2つのDell PowerEdge R720のクラスターで、Active Directory、VMware vCenter 5.5サーバー、Horizon View Connectionサーバー(プライマリおよびセカンダリ)、View Composerサーバー、Microsoft Windows Server 2012 R2およびMS SQL Server 2012 R2に基づくファイルサーバー用の仮想マシンをホストしました。 40のLoginVSIランチャー仮想マシンがインストールのテストに使用され、負荷が作成されます。
ネットワーク
インストールでは、Force10 S55 1 GBとForce10 S4810 10 GBの3組のスイッチを使用しました。 1つ目は、VDI環境の作成と、サーバー、ディスクアレイ、スイッチ、vSphereなどの管理を担当しました。 VLANは、これらすべてのコンポーネントで異なります。 2番目のペアであるDell Force10 S4810 10 GBは、Fluid Cacheキャッシングネットワークのセットアップに役立ちました。 別の同様のペアが、クラスターとCompellent SC8000ディスクアレイ間のiSCSIネットワークの動作を担当しました。
Compellent SC8000ディスクアレイ
役割 | 種類 | 数量 | 説明 |
コントローラー | SC8000 | 2 | System Center Operating System(SCOS)6.5 |
棚 | 外部 | 2 | 2.5インチドライブ用の24のドライブベイ |
ポート | イーサネット10 Gb / s | 2 | フロントエンドホスト接続 |
SAS 6 Gb / s | 4 | バックエンドドライブの接続 | |
ディスク | 400 GB WI SSD | 12 | 11がアクティブ、1がホットスタンバイ |
300 GB 15K SAS | 21 | 20がアクティブ、1がホットスタンバイ | |
4 TB 7.2K NL-SAS | 12 | 11がアクティブ、1がホットスタンバイ |
サービスサーバーの仮想マシンに対して、Active Directory、SQL Server、vCenter Server、View Connection Server、View Composer、およびファイルサーバーを配置する0.5 TBのディスクを作成しました。 ユーザープロファイルの場合、2 TBのディスクが割り当てられました(マシンあたり約2.5 GB)。 マスターOSイメージは、100 GBのミラーディスクにあります。 最後に、仮想マシンについては、それぞれ0.5 TBのドライブを8個作成することにしました。
仮想ネットワーク
VMware vSphere 5.5ハイパーバイザーを実行している各ホストには、5つの仮想スイッチがあります。
vSwitch | 予定 |
vSwitch0 | 制御ネットワーク |
vSwitch1およびvSwitch2 | iSCSI SAN |
vSwitch3 | Fluid Cache VLAN |
vSwitch4 | VDI LAN |
地平線ビュー
この指示に従って設定しました。
役割 | 数量 | 種類 | 記憶 | CPU |
Horizon View接続サーバー | 2 | VM | 16 GB | 8番 |
Composerサーバーの表示 | 1 | VM | 8 GB | 8番 |
仮想マシン
VMwareおよびLogin VSIガイドを取り上げて、元のWindows 7イメージを構成しました。 取得したものは次のとおりです。
•VMware Virtual Hardware v8、
•2つの仮想CPU
•3 GB RAM、1.5 GB予約、
•25 GBのストレージ、
•VDIネットワークに接続された1つの仮想ネットワークアダプター、
•Windows 7 64ビット。
VMware Horizon with View Optimization Guide for Windows 7およびWindows 8はここからダウンロードできます 。
パート2:テストを行い、結果を説明し、結論を導きます。
検証方法とコンポーネント構成
次に、仮想マシンを使用するさまざまなシナリオでシステムがどのように動作するかを確認しました。 800の仮想マシンが顕著な遅延なしで動作し、1日を通じて80〜90 IOPSの領域でディスクサブシステムと情報を交換することを保証したいと考えました。 同時に、通常の「オフィス」負荷の下でインストールの動作を確認しました-就業日、仮想マシンの作成時、およびユーザーのログイン時の両方-たとえば、就業日の開始時と昼休み後。 これらの条件を「ブート&ログインストーム」と呼びます。
テストでは、仮想マシンに負荷を作成して結果を分析する統合Login VSI 4.0プログラムとIometerの2つのユーティリティを使用しました。これはディスクサブシステムの監視に役立ちます。
平均的なオフィスマシンの「標準」負荷を作成するために、次のことを行います。
•一度に最大5つのアプリケーションを実行します。
•使用されているプログラムMicrosoft Internet Explorer、Microsoft Word、Microsoft Excel、Microsoft PowerPoint、PDFリーダー、7-Zip、ムービープレーヤー、FreeMind。
•約48分ごとにスクリプトを再実行し、一時停止-2分。
•3〜4分ごとに、ユーザーアクションに対する応答時間を測定しました。
•印刷速度を1文字あたり160ミリ秒に設定します。
彼らは同じテストを使用して高負荷をシミュレートし、各仮想マシン上のディスクサブシステムとの交換をアクティブにするために、Iometerを起動しました。 テストの標準セットはマシンごとに8〜10 IOPSを生成し、高負荷ではこの数値は80〜90 IOPSでした。 標準設定とLoginVSI用のソフトウェアセットを使用して、Horizonビュープールに基本OSイメージを作成し、さらにログオンスクリプトから起動されたIometerを追加インストールしました。
これらのツールは、パフォーマンスを監視し、負荷がかかった状態でパフォーマンスを記録するために使用されました。
•Fluid CacheおよびCompellent SC8000ストレージアレイのパフォーマンスを評価するためのDell Compellent Enterprise Manager
•vSphereを監視するためのVMware vCenter統計、
•VSI Analyzerにログインして、ユーザー環境を評価します。
ディスクサブシステムの動作を評価するための基準は、ユーザーアクションに対する応答時間です。 10ミリ秒以下の場合、すべて正常です。
ハイパーバイザーレベルでのシステムブート:
•クラスター内のCPUの負荷は85%を超えないようにしてください。
•最小メモリボールリング(仮想マシンでのメモリ領域の共有)。
•各ネットワークインターフェイスの負荷は90%以下です。
•TCP / IPパケットの再送信-0.5%以下。
仮想マシンからのリクエストの最大数は、 VSImaxテクニックを使用して計算されました。
VMware Horizon View Administratorインターフェイスを使用して、基本的なWindows 7イメージに基づいて仮想マシンの単一セットが作成されました。
設定は次のとおりです。
•自動デスクトッププール:「包含」の要求に応じてマシンが作成されます。
•ランダムマシンが各ユーザーに割り当てられます。
•View Storage Acceleratorは、更新期間が7日間のすべてのマシンで許可されます。
•800台の仮想マシンが8台の物理マシン(それぞれ100台)に配置されています。
•元のOSイメージは別のディスクにあります。
テスト結果と分析
シナリオは次のとおりです。
1.ブートストーム:ストレージシステムの最大負荷。同時に多くのユーザーが「オン」にする、つまり仮想マシンを作成します。
2.ログインストーム:就業日の初めまたは休憩後にユーザーがログインすると、ディスクサブシステムに別の大きな負荷がかかります。 このテストでは、仮想マシンをオンにして20分間放置した後、何も操作せずにシステムに入りました。
3.標準のワークロード:ユーザーがログインした後、「標準の」事務作業スクリプトが実行されました。 ユーザーアクションに対するシステムの応答は、Login VSIのVSImax(動的)パラメーターによって監視されました。
4.高負荷:標準に似ていますが、IOPSレートは10倍高くなっています。
ブートストーム
注: 以下、遅延はストレージ側で示されます。
800台のマシンがテスト中に平均115,000 IOPSを生成しました。 記録操作が優先されました。 4分後、すべての車が仕事に使えるようになりました。
ログインストームと標準ロード
Login VSIは、ロードしてから約1時間後に800台の仮想マシンにログインするようにプログラムしました。 プラットフォーム全体でピークIOPSは6,500(マシンごとに8〜10)を超えませんでした。 ユーザープロファイルが作成され、OSサービスとアプリケーションアプリケーションが起動されたため、マシンの起動時と追加作業中よりも記録の要求が多くなりました。 安定化に必要な時間が経過すると、OSはメインユーザーとプログラムデータをRAMにキャッシュします。ディスクサブシステムの負荷が軽減されます。 最大6,500 IOPSのFluid Cacheレベルでは、書き込み操作は100%キャッシュされ、読み取りは約95%です。 98 Mbit / sのデータストリームにより、わずか2ミリ秒のディスクアクセス遅延が発生します。
身体的パフォーマンス
VMware vCenter Serverを使用して、vSphereシステムの物理コンポーネントのパフォーマンス統計を測定しました。 テスト全体を通して、プロセッサ、メモリ、およびデータストレージシステムのすべてのレベルの負荷はほぼ同じでした。 結果は、タスクを設定して、予想どおりのものであることが判明しました。
•CPU使用率が85%以下。
•アクティブな使用済みディスク領域は、80%(仮想マシンの作成時)以下であり、テスト中は60%以下です。
•メモリボーリングは最小限です(まったく使用されないこともあります)。
•iSCSI、SAN、VDI LAN、管理LAN、vMotion LANを含む約45%のネットワーク負荷。
•ディスクストレージアダプターの平均読み取り/書き込み遅延は2ミリ秒です。
これは、ユーザーの観点からのシステムパフォーマンスのグラフです。 同時に動作するマシンの数に依存します。
実際には、これは私たちのシステム上で何千人ものユーザーに安全にジョブを展開できることを意味します。 全員が同時に積極的に働き始めても、OSに遅延はありません。
「通常の」ユーザー環境の3つのテストから得られる結論は次のとおりです。
•SANベースのVDIテストシステム用のDell Fluid Cacheは、800人のユーザーが同時に作業できます。
•書き込み操作は98%を占め、読み取り操作は2%のみです。
•システムのどのリソースも、予想以上にロードされていません。
•20分間のログインストームは、8〜10 IOPSを超えず、2ミリ秒を超えるディスクアクセス遅延を引き起こしませんでした。
重荷重
I / Oシステムの大きな負荷に対するIometerの設定は次のとおりです。ブロックサイズ-20 KB、書き込み操作の80%、75%がキャッシュからのもの、25 msのバースト遅延。
Fluid Cacheレベルでは、最大I / Oレートは72,000(仮想マシンあたり90 IOPS)に達しました。 書き込み操作のキャッシュ-100%、読み取り-95%。 900 Mbpsのピークストレージパフォーマンスでは、最大遅延は7.5ミリ秒でした。
インストールの物理レベルでの負荷は、前のテストと同じであることが判明しました。 ストレージ、CPU、およびネットワークアダプターは、計画どおりに機能しました。
これは、ユーザーアクションに対するシステムの応答のグラフです。 同時に動作するマシンの数に依存します。
高負荷下でのテストの結果:
•Dell Fluid Cache for SANを搭載したDell VDIを使用して、ディスクメモリとデータを集中的に交換している最大800台の仮想マシンを実行できます。
•書き込み操作の98%、読み取り操作の2%。
•vSphereが使用するベースサーバーのシステムリソースは、最大限まで使用されていません。 指定された制限を超えていません。
•仮想マシンの高負荷により、合計交換レート72,000 IOPSで7.5ミリ秒の遅延が発生しました(各800マシンで90 IOPS)。 これは、ユーザーアクションに対する許容可能なOS応答率のフレームワーク内でもあります。
推奨事項
VDIは、Dell Fluid Cache for SANを備えた仮想マシン環境です。
•移動ユーザープロファイルを使用し、リダイレクトされたフォルダーにデータを保存する場合、I / Oシステムの負荷は低くなります。 これは、仮想マシンが作成され、ユーザーがシステムにまとめてログインするピーク負荷時に重要です。 同じことがネットワーク共有フォルダーにも当てはまります。 この設計により、システムリソースが節約され、管理が容易になります。 ユーザーデータ用に別の高速ディスクアレイを割り当てることをお勧めします。
•仮想マシンの作成時にシステムに高い負荷がかかるため、既製の「仮想マシン」をいくつか用意しておくことをお勧めします。 VMware Horizon Viewでは、ユーザーが常に使用できるジョブの数を構成できます。
• この指示に従って、Windows 7および8のソースイメージを構成することをお勧めします。 不要なシステムサービスをオフにすると、クライアントは認証と画面レンダリングを高速化し、全体的なパフォーマンスが向上するだけです。
インストールのセットアップ:
•vSphereのインストールと構成については、VMwareおよびDellのガイドラインに従ってください。
•iSCSI SAN、VDI、vMotion、および管理ネットワークトラフィックを共有する個別の仮想スイッチを作成します。
•フォールトトレランスのために、各ネットワークパスを少なくとも2つの物理アダプターに割り当てます。
•サービスをより手頃な価格にするために、物理ドライブの少なくとも10%を予約します。
ネットワーク層:
•各vSphereサーバーでVDIネットワークに少なくとも2つの物理ネットワークアダプターを使用します。
•VLANを使用して同じ物理ネットワーク内でトラフィックを共有する場合、VDI、vMotionを配布し、異なる仮想ネットワークに論理ネットワークを制御します。
•物理層で、iSCSI SANとFluide Cacheを分離します。 これにより、システム全体のパフォーマンスが向上します。
•vSphere仮想スイッチは、デフォルトで120ポートに制限されています。 マシンでさらにネットワーク接続が必要な場合は、設定を変更した後、サーバーを再起動する必要があります。
•iSCSI SANスイッチでは、スパニングツリープロトコルを無効にします。 サーバーとストレージアダプターの両方に接続されているポートでは、PortFastを有効にします。 ジャンボフレームとフロー制御は、スイッチとアダプターでサポートされている場合、iSCSIネットワークのすべてのコンポーネントでアクティブにする必要があります。 詳細については、こちらをご覧ください。
データストレージシステム:
•Dell SC Compellentストレージアレイは、Fluid Cacheテクノロジーと連携して動作します。 これは、Dell VDI環境向けの強力で比較的安価なソリューションです。
•Fluid Cacheは、サーバーとディスクアレイ間でデータを交換する際のストレージパフォーマンスを向上させます。 Storage Center 6.5ソフトウェアの制御下で、コンピューティングクラスター、ネットワーク環境、およびストレージシステムは完全に機能しています。 単一のサーバーはこれを自慢できません。
•元のOSイメージとユーザー仮想マシンに別々のディスクアレイを使用することをお勧めします。 ディスクの管理、パフォーマンスの測定、ボトルネックの追跡が簡単になります。 さらに、これはシステムをさらにスケーリングするための良い基盤となります。
•移動ユーザープロファイルと共有ネットワークフォルダー、およびシステムサーバーとパブリックサービス用にディスクアレイを割り当てることをお勧めします。