設計上の決定:Azure で Citrix DaaS を提供することのスケーラビリティと経済性

このドキュメントの目的は、Microsoft AzureクラウドにCitrix Desktops-as-a-Service(DaaS)を展開しようとしている企業にガイダンスを提供することです。お客様に最善のアドバイスを提供するために、Citrix アーキテクチャと設計の決定に影響を与える4つの重要な質問に対する答えを決定しました。

  1. DaaS をホストするのに最も効率的なインスタンスシリーズは何ですか
  2. 最も効率的なファミリで最も費用対効果の高いインスタンスタイプは何ですか
  3. マシン作成サービスI/O(MCSIO)キャッシュにはどのような影響がありますか
  4. Windows 10 マルチセッションスケーラビリティは、Windows Server OS と比較してどうですか?

Citrixでは、テスト方法の詳細と、評価中にキャプチャされたパフォーマンス結果に関する詳細な論文を用意しています。このホワイトペーパーでは、高レベルの結果に焦点を当て、Microsoft Azure クラウドで効率的なCitrix実装を設計する方法について説明します。

パフォーマンスを判断するために、LoginVSI 4.1.32.1を使用して、単一のCitrixサーバーに対してシミュレートされたセッションを作成します。テストに使用した 2 つのワークロードは、次のように説明されています。

  • タスクワーカーのワークロード — Microsoft Office 2016 Outlook、Excel、インターネットエクスプローラー、Adobe Acrobat、PDF ライターのセグメントが含まれます。Task Worker ワークロードは、環境に高い需要を課さず、システムに頻繁にアクセスしないユーザーを表します。
  • ナレッジワーカーのワークロード — Microsoft Office 2016 Outlook、ワード、PowerPoint、エクセル、Adobe Acrobat、FreeMind、PhotoViewer、Doro PDF Writer のセグメントを含み、いくつかの360pムービーの表示が含まれます。Knowledge Worker ワークロードは、使用可能なメモリの使用量が多いなど、環境に対する要求が高くなり、システムにアクセスするユーザーを表します。

マルチセッションテストを正常に完了したユーザーの数は、実際の状況下で主要なパフォーマンス指標を提供します。この値は VSImax セッションカウントと呼ばれ、比較分析に使用されます。Login VSI ワークロードは、システム上の 1 人のユーザーの応答時間を観察して VSImax セッション数を計算します。VSImax は、応答時間がシステム上の 1 人のユーザーだけで取得されたベースライン値から得られた予想しきい値を大幅に下回ったときに到達します。

特別な知識なしで一貫してレプリケートできる控えめな数字を提供するために、ここでのすべての結果は、WindowsおよびOffice製品のデフォルトのCitrixポリシーと最適化されていないデフォルト設定を使用したテストの実行を反映しています。Citrix WEMやCitrix OptimCitrix [Optimizer](https://support.citrix.com/article/CTX224676) などのCitrix最適化ツールを適用することで、パフォーマンスと密度の両方を向上させることができます。

最も効率的なインスタンスシリーズは何ですか

最も効率的なインスタンスシリーズを見つけるには、ミックス内の他の変数を変更することなく、異なるインスタンスシリーズをテストする必要がありました。基本イメージはWindows Server 2016で、1903.1バージョンのCitrix VDAと、システムC: ドライブ用の標準のハードディスク・ドライブ(HDD)128 GBディスクが搭載されています。8 コアのインスタンスタイプを選択しました。主な理由は 2 つあります。

1) これらは、ホストされたセッションの Azure インスタンスタイプの機能を表し、一般的にデプロイされた最も人気のあるサイズです 2) 小型の 2 コアシステムとは対照的に、CPU と RAM のバランスがよく、OS への影響を最小限に抑えます。

次のグラフは、テストを実行した Azure US-West-2 リージョンの従量課金制に基づく、インスタンスファミリの結果と、1 時間あたりのユーザーあたりの平均コストを示しています。

8コア・パフォーマンス

分析

これらのインスタンスタイプのほとんどは、同じプロセッサ、インテル (R) Xeon (R) CPU E5-2673 v4 @ 2.30 GHz を使用します。主な違いは、仮想マシンで使用できるメモリの量です。これらのさまざまなシリーズの詳細については、 MicrosoftのWebサイトを参照してください

一般に、8 コアインスタンスのパフォーマンスは、ハイパースレッドコア (F8S_v2、D8_v3、E8_v3) と比較して物理コア (D13_v2、D4_v2、L8s) を考慮すると、かなり類似しています。ただし、インスタンスの時間当たりのコストを考慮すると、D13_v2 および F8S_v2 インスタンスの使用がより効率的です。E_v3 および LS_v1 シリーズは、Microsoft がメモリ最適化インスタンスおよびストレージ最適化インスタンスに対して高いプレミアムを請求するため、コスト効率が低くなります。ユーザーのアプリケーションがメモリやストレージを大量に消費する場合、多くの場合、これらのインスタンスは優れた投資収益率を提供します。

推奨事項

一般的なユーザーのアプリケーションが CPU を大量に消費し、実行に大量のメモリを必要としない場合、最もコスト効率の高いパフォーマンスは F シリーズです。優れたCPU応答時間が必要で、大量のメモリを必要としない場合は、 Fシリーズを選択します 。ユーザーのアプリケーションがかなりの量のメモリを消費する場合は、ユーザーの環境に必要なコアあたりの追加メモリ量に応じて、D インスタンスタイプの 1 つを使用します。

最も効率的なファミリで最も費用対効果の高いインスタンスタイプは何ですか

ファミリー全体で幅広いテストを完了すると、1つのシリーズが明確なリーダーになることが期待されました。しかし、この結果により、追加のテストに最適な2つのインスタンス・ファミリーが標準HDDストレージでテストされた場合、DシリーズとFシリーズであることが納得しました。次のステップでは、D_v2ファミリとFS_v2ファミリ内で、2~16個のvCPUの範囲の特定のサイズをテストしました。これらのテストの結果を以下に示します。

FSおよびDシリーズのパフォーマンス

分析

上のグラフは、タスクワーカーとナレッジワーカーについて、それぞれ 74 および 63 のユーザーセッションの最大密度で、D14_v2 インスタンスタイプ(16 コア、112 GB RAM)で取得されたテストの結果を示しています。インスタンスタイプによって料金が異なるため、密度が高くなるとユーザーあたりのコストが下がるとは限りません。

Azure インスタンスの料金モデルは、リージョン、インスタンスタイプ、提供されるリソースによって異なります。上記のグラフには、単一サーバーテストで達成されたVDAユーザー密度に基づく各インスタンスタイプのコスト効率も示しています。このコストには、2019 年 9 月時点での標準 VM インスタンスの米国西部 2 従量課金制を反映しており、Microsoft Windows ライセンス料が含まれています。

上のグラフに示すように、D13_v2 インスタンスタイプは、タスクワーカーの 1 ユーザーあたり 1 時間あたりのコストの最小値 0.018 USD を示し、F16S_v2 と F8S_v2 は 0.019 ドルのコストで 2 番目になります。ナレッジワーカーに関しては、F16S_v2 インスタンスタイプと F8S_v2 インスタンスタイプの両方が 0.025 USD の最良の時間コストを共有し、続いて D13_v2 インスタンスタイプは 0.026 USD になります。

推奨事項

テストでは、密度の結果は、ナレッジワーカーの負荷が重い場合に、FS v2 シリーズインスタンスで使用できる高速プロセッサによる明確なメリットを示しました。ただし、FS v2 のメモリとコアの比率は D v2 シリーズの比率よりも低く、ワークロードのメモリ消費量が少ない場合にのみFS v2 シリーズのインスタンスを使用することをお勧めします。ユーザーがメモリを大量に消費するアプリケーションを実行する場合は、D_V2 シリーズが最適です。

F8S_v2 と F16S_v2 の場合など、ユーザーあたりのコストが類似する場合は、次のいずれかの条件が存在する場合は、小さいインスタンスサイズを選択します。

  • 耐障害性の必要性:メンテナンス期間中の影響を減少させるユーザー数を減らしたい
  • 効率的な電源管理の必要性:使用していないマシンの電源を迅速に切断したい

次のいずれかの条件が存在する場合は、大きいインスタンスサイズを選択します。

  • 管理の削減の必要性:環境内で管理するマシンの数を減らしたい
  • API 呼び出しの削減:操作に必要な Azure インフラストラクチャへの API 呼び出しが少なくて済みます

マシン作成サービスI/Oキャッシュにはどのような影響がありますか

テストに使用されたインスタンスタイプは、仮想マシン上のシステムドライブ用の高価な SSD ストレージではなく、標準ストレージで構成されていました。SSD ストレージを持つインスタンスタイプは、ディスクが高速であっても、ページファイルが格納されるエフェメラルディスクが小さいため、高い負荷下で必要な仮想メモリをサポートするのに十分なスワップファイル領域がインスタンスにないため、スケーラビリティは低下しました。

私たちが使用しているディスクサイズでは、HDDとSSDディスクは同様のIOPSパフォーマンス(500)を持っています。SSDディスクのパフォーマンスはより一貫していますが、追加コストは必ずしも正当化されるわけではありません。

次に、マシン作成サービスI/O(MCSIO)キャッシュを、より大きな標準ディスクでSSD並のパフォーマンスを実現する方法として検討することにしました。テストは、D5_v2(16 vCPU、RAM 56 GB)インスタンスタイプで、Citrix VDAバージョン1903.1およびWindows Server 2016を使用して完了しました。以下の図は、ナレッジワーカーの負荷で MCSIO キャッシュを有効にすることによって得られるユーザー密度の増加を示しています。

MCSIOパフォーマンス

分析

オペレーティングシステムディスクで MCSIO キャッシュが有効になっていない場合、VSImax ユーザースコアは 128 GB HDD で 61、64 GB SSD ディスクで 74、128 GB SSD ディスクで 75 になります。標準のHDDディスクでMCSIOキャッシュを有効にすると、実際にはSSDよりも優れたパフォーマンスが得られ、64 GBのHDDで4 GBキャッシュを有効にするとスコアは76に増加し、2 GBキャッシュではスコアは77にわずかに増加しました。4 GB と 2 GB のキャッシュサイズの間の追加ユーザーの損失は、追加の RAM がキャッシュに使用され、ユーザーのワークロードで使用できないことが原因です。

MCSIO は、1 時間あたりのユーザーあたりのコストの削減に貢献しますが、その数はそれ自体では重要ではありません。MCSIO の実際の影響は、エンドユーザーエクスペリエンスを見ると確認することができます。以下のグラフは、MCSIOを使用した場合の平均応答時間の低下を示しています。

MCSIO ログイン応答

推奨事項

パフォーマンスを考慮する際にユーザーエクスペリエンスが駆動要因である場合は、MCSIO キャッシュを有効にすることをお勧めします。有効にすると、2 GB キャッシュを備えた標準ディスクの使用が推奨されます。これは、ユーザー密度に影響を与えずに最適な改善が得られるためです。ただし、MCSIO キャッシュは、コンピューティング用に最適化されているがメモリと CPU コア比が低い F または FS シリーズのインスタンスタイプなど、メモリが制約されている仮想マシンでは有効にしないでください。

Windows 10 マルチセッションスケーラビリティは、Windows Server OS と比較してどうですか?

Windows Server 2019 と Windows 10 マルチセッションオペレーティングシステムの両方のリリースにより、クライアントオペレーティングシステムがスケーラビリティに与える影響について、いくつかのガイダンスを提供することが最善であると考えました。Windows Server 2019 と Windows 10 マルチセッションオペレーティングシステムの両方には、新しいCitrix VDAバージョン1906.1が必要です。Windows 10 マルチセッションは Azure Virtual Desktops (AVD) エンタイトルメントで利用でき、テナントに仮想マシンの基本価格 (Linux 価格) を付与します。このエンタイトルメントにより、VM の価格が Windows Server 2016 および Windows Server 2019 にも拡張されます。

以下のグラフは、同じD4_v2(8vCPU、RAM 28 GB)インスタンス上でCitrix VDAバージョン1906.1を使用してWindows Server 2016で実行されたテストと比較した場合の密度の変化を示しています。以下の価格は、必要な AVD エンタイトルメントに沿った Linux VM の価格設定を使用しています。

オペレーティングシステムのパフォーマンス

分析

Windows Server 2016 の結果と比較すると、Windows Server 2019 では、ナレッジワーカーとタスクワーカーの両方のユーザー密度がわずかに低くなり、タスクワーカーは 7% 減少し、ナレッジワーカーは 12% 減少しました。

Windows Server 2019 と Windows 10 のマルチセッションワークロードを比較すると、タスクワーカーが 19% 少なくなり、ナレッジワーカーが 32% 減少しました。Windows 10 は完全なクライアントバージョンであり、Windows Server 2016 や Windows Server 2019 のようなサーバーベースのコンピューティングには最適化されていないため、このパフォーマンスの低下が期待されます。

Windows 10 マルチセッションを使用する場合のコスト上の利点の 1 つは、クライアントが仮想マシンに接続するために RDS CAL ライセンスを必要としないことです。このコスト優位性は、Azure の 1 時間あたりのコストに加えて Microsoft のライセンスコストであるため、上記の計算には含まれません。

推奨事項

Windows Server 2016 から Windows Server 2019 へのアップグレードを計画する場合、仮想マシンの数を約 10% 増やすことが予想されます。Windows クライアントとの互換性を必要とするアプリケーションをホストするために Windows 10 マルチセッションを使用することを計画している場合は、密度が低くなり、サーバーオペレーティングシステムに比べて約 30% の追加コストがかかります。しかし、Windows 10マルチセッションでは、 ユーザーはWindowsストアにアクセスすることができます。これは、サーバーオペレーティングシステムでは利用できないものです。

結論

Citrix 仮想アプリケーションワークロードを展開するために選択した Azure インスタンスタイプは、ユーザー密度とスケーラビリティ、および Azure 配信モデルのユーザーあたりのコストを決定する重要な要素です。図に示すように、Azure のインスタンスタイプには、高い計算要件や余分なメモリなど、特定のワークロードに対する利点があります。通常、標準 HDD ディスクと 2 GB の MCSIO キャッシュが有効な D13_v2 インスタンスは、最小限のコストで最高のユーザーパフォーマンスを提供します。Windows ストア、アプリケーションの互換性、または真の Windows クライアントエクスペリエンスが必要な場合は、Windows 10 マルチセッションオペレーティングシステムを検討してください。

ここで示した Citrix on Azure の結果は、Azure ソリューションを構成する際のガイドラインのみを示しています。特定のユーザーワークロードに関するデータがない場合は、ここで指定した数値が設計の見積もりとなります。最終的なサイジングとデプロイを決定する前に、独自のワークロードを使用してさまざまな Azure インスタンスタイプで概念実証テストを実行し、そのデータを最終設計に使用することを強くお勧めします。

詳細情報

Microsoft AzureクラウドサービスへのCitrix Virtual Apps ワークロードの展開について詳しくは、Citrix とMicrosoft のパートナーWebサイト( https://www.citrix.com/global-partners/microsoft/resources.html)を参照してください。

設計上の決定:Azure で Citrix DaaS を提供することのスケーラビリティと経済性