Citrix Virtual Apps and Desktopsサービス

Microsoft Azure Resource Manager仮想化環境

Citrix Virtual AppsまたはCitrix Virtual Desktopsサービス環境でMicrosoft Azure Resource Managerを使用して仮想マシンをプロビジョニングする場合は、このガイダンスに従ってください。

ここでは、以下の内容を熟知していることを前提とします:

注:

Azureは、デフォルトでAzureが管理する暗号キーを使用したディスク暗号化をサポートしています。この形式の暗号化は、MCSのすべてのカタログで使用され、ユーザー構成は必要ありません。

Azureのオンデマンドプロビジョニング

MCSを使用してAzure Resource Managerでマシンカタログを作成する場合、Azureのオンデマンドプロビジョニング機能は次のことを実現します:

  • ストレージコストを削減する。
  • カタログ作成を高速化する。
  • 仮想マシン(VM)の電源操作を高速化する。

管理者にとっては、ホスト接続とMCSマシンカタログを作成する場合、オンデマンドプロビジョニングと完全な構成インターフェイスで手順に違いはありません。相違点は、Azureでリソースを作成し管理する方法とそのタイミング、Azure PortalでのVMの可視性です。

Citrix Virtual Apps and DesktopsサービスでAzureのオンデマンドプロビジョニングを統合する前は、MCSの挙動は異なっていました。MCSがカタログを作成すると、プロビジョニングプロセス中にAzureにVMが作成されました。

Azureのオンデマンドプロビジョニングでは、VMは、プロビジョニング完了後、Citrix Virtual Apps and Desktopsで電源投入操作が開始されたときにのみ作成されます。Azure Portalでは、実行中のVMのみが表示されます。[管理]>[完全な構成] インターフェイスでは、VMが実行されている場合はVMが表示されます。

MCSカタログを作成すると、Azure Portalにリソースグループ、ネットワークセキュリティグループ、ストレージアカウント、ネットワークインターフェイス、基本イメージ、IDディスクが表示されます。Azure Portalでは、Citrix Virtual Apps and DesktopsがVMの電源投入操作を開始するまで、そのVMは表示されません。次に、完全な構成インターフェイスのVMのステータスが「On」に変わります。

  • プールされたマシンの場合、オペレーティングシステムのディスクとライトバックキャッシュは、VMが存在する場合にのみ存在します。キャッシュにより、マシンを定期的に(たとえば、勤務時間外に)シャットダウンする場合はストレージを大幅に節約できます。
  • 専用マシンでは、VMの初回電源投入時にオペレーティングシステムのディスクが作成されます。このディスクは、マシンIDが削除されるまでストレージに残ります。

Citrix Virtual Apps and DesktopsがVMの電源切断操作を開始すると、そのマシンIDはAzureで削除されます。Azureポータルには表示されなくなります(完全な構成インターフェイスのVMのステータスが「Off」変わります)。

オンデマンドプロビジョニングのサポート前に作成されたカタログ Citrix Virtual Apps and DesktopsでAzureのオンデマンドプロビジョニング機能をサポートする前(2017年半ば)に作成されたマシンカタログは、異なる挙動を見せます。これらのカタログ内の仮想マシンは、実行中かどうかにかかわらず、Azureポータルに表示されます。MCSがカタログをプロビジョニングする場所以外のリージョンでイメージを変換することはできません。イメージは、カタログのリージョンにある従来のストレージアカウントのVHDにコピーされます。その後、Managed Disksに変換されて戻されます。

カタログ作成ウィザードの [ストレージとライセンスの種類] ページで、Managed Disksの代わりに従来のストレージアカウントを使用するチェックボックスをオンにすることもできますこのチェックボックスは、Managed DisksをサポートしていないAzureリージョンでプロビジョニングしている場合は無効になっています。

Azure Resource Managerへの接続の作成

接続の作成と管理」では接続を作成するためのウィザードについて説明しています。以下の情報は、Azure Resource Managerの接続に固有の詳細を扱っています。

注意事項:

  • サービスプリンシパルには、サブスクリプションの投稿者の役割が付与されている必要があります。
  • 最初の接続を作成するときに、必要な権限付与を求めるプロンプトがAzureで表示されます。その後の接続でも認証は必要ですが、Azureでは以前の同意が記憶され、このプロンプトは再表示されません。
  • 認証に使用されるアカウントは、サブスクリプションの共同管理者である必要があります。
  • 認証に使用されるアカウントは、サブスクリプションのディレクトリのメンバーである必要があります。注意すべき2つのタイプのアカウントがあります。「職場または学校」と「個人用Microsoftアカウント」です。詳しくは、CTX219211を参照してください。
  • 既存のMicrosoftアカウントは、サブスクリプションのディレクトリのメンバーとして追加することで使用できますが、ユーザーが以前にそのディレクトリのリソースのいずれかへのゲストアクセスを許可されていた場合は、複雑になる可能性があります。この場合、必要な権限を与えないディレクトリにプレースホルダーエントリが存在し、エラーが返されることがあります。

    ディレクトリからリソースを削除してこれを修正し、明示的に追加し直します。ただし、そのアカウントがアクセスできる他のリソースに対して意図しない影響を与えるため、このオプションは注意深く実行してください。

  • 特定のアカウントが実際にメンバーであるときにディレクトリゲストとして検出されるという既知の問題があります。これは、通常、古い確立済みのディレクトリアカウントで発生します。回避策:アカウントをディレクトリに追加します。これにより適切なメンバーシップ値が取得されます。
  • リソースグループはリソースのコンテナにすぎず、そのリージョン以外のリージョンのリソースを含む場合があります。これが原因で、リソースグループのリージョンに表示されているリソースを利用できると期待した場合に、混乱を招く可能性があります。
  • ネットワークとサブネットが、必要な数のマシンをホストするのに十分な大きさであることを確認してください。これには多少先見の明が必要ですが、Microsoftが、アドレススペースの容量に関するガイダンスを示して、適切な値を指定できるようサポートします。

Azureへのホスト接続は、次の2つの方法で確立できます:

  • Azureに認証してサービスプリンシパルを作成する。
  • 以前作成されたサービスプリンシパルからの詳細を使ってAzureに接続する。

サービスプリンシパルの作成

重要:

この機能は、Azure ChinaおよびAzure Germanyのサブスクリプションではまだ利用できません。

開始する前に、Azureに認証します。次のことを確認します:

  • サブスクリプションのAzure Active Directoryテナントにユーザーアカウントがあること。
  • Azure ADのユーザーアカウントが、リソースのプロビジョニングに使用するAzureサブスクリプションの共同管理者でもあること。
  • 認証には、グローバル管理者権限が必要です。

Azureに認証してサービスプリンシパルを作成すると、Azureにアプリケーションが登録されます。登録されたアプリケーションの秘密キー(クライアントシークレット)が作成されます。

アプリケーションIDを表示するには、Azure Portalにサインインして、[Azure Active Directory]>[App registrations]>[All applications] に移動します。このコンソール([Manage] タブ)で登録したアプリケーションの名前には、「citrix-xd-」というプレフィックスが付きます。

AzureでのアプリケーションID

アプリケーションのクライアントシークレットを表示するには、[All Applications]タブのアプリケーションをクリックし、[Certificates & secrets]>[Client secrets]に移動します。

Azureでのクライアントシークレット

このコンソールを介して作成されたクライアントシークレットは、2年後に期限切れになります。登録されたアプリケーションは、クライアントシークレットを使用してAzure ADに認証します。有効期限が切れる前に、必ずクライアントシークレットを変更してください。変更するには、次の手順を実行します:

  1. Azureで [Azure Active Directory] を選択します。

  2. Azure ADの [App registrations] でアプリケーションを選択します。

  3. [Certificates & secrets] を選択します。

  4. [Client secrets]>[New client secret] を選択します。

  5. シークレットの説明を入力し、期間を指定します。完了したら、[Add]を選択します。

    注:

    クライアントシークレットは後で取得できないため、必ず保存してください。

  6. クライアントシークレット値をコピーします。

  7. コンソールで、対応する接続を編集し、[アプリケーションシークレット]フィールドの内容をコピーした値に置き換えます。

Azureに認証してサービスプリンシパルを作成するには、接続およびリソースの追加ウィザードで次の手順を実行します:

  1. [接続] ページで [新しい接続を作成する] を選択します。次に、接続の種類として [Microsoft Azure] を選択し、Azure環境を選択します。

  2. 仮想マシンの作成にどのツールを使用するかを選択し、[次へ]を選択します。

  3. [接続の詳細] ページで、AzureサブスクリプションIDと接続の名前を入力します。サブスクリプションIDを入力すると、[新規作成]ボタンが有効になります。

    注:

    接続名は1~64文字にし、空白スペースのみにしたり記号(\/;:#.*?=<>|[]{}"'()')を含めたりすることはできません。

  4. [新規作成] を選択してから、Azure Active Directoryアカウントのユーザー名とパスワードを入力します。

  5. [サインイン] を選択します。

  6. [承認] を選択して、表示された権限をCitrix Virtual Apps and Desktopsに付与します。Citrix Virtual Apps and Desktopsによって、指定されたユーザーの代わりにAzureリソースを管理することを許可するサービスプリンシパルが作成されます。

  7. [承認] を選択すると、ウィザードの [接続] ページに戻ります。

    注:

    Azureへの認証に成功すると、[新規作成]ボタンと [既存を使用] ボタンが表示されなくなります。緑色のチェックマークが付いた「接続に成功しました」というテキストが表示され、これはAzureサブスクリプションへの接続に成功したことを示します。

  8. [接続の詳細] ページで、[次へ]を選択します。

    注:

    Azureへの認証が完了し、必要な権限の付与に同意しない限り、次のページに進むことはできません。

  9. 接続用のリソースを構成します。リソースには領域とネットワークが含まれます。

    • [リージョン] ページで領域を選択します。
    • [ネットワーク] ページで、次の手順を実行します:
      • 1~64文字のリソース名を入力して、リージョンとネットワークの組み合わせを特定できるようにします。リソース名は、空白のみにしたり記号(\/;:#.*?=<>|[]{}"'()')を含めたりすることはできません。
      • 仮想ネットワークとリソースグループのペアを選択します。(複数の仮想ネットワークを同じ名前にする場合、ネットワーク名とリソースグループをペアリングすると一意の組み合わせになります。)前のページで選択したリージョンに仮想ネットワークがない場合は、前のページに戻って仮想ネットワークのあるリージョンを選択します。
  10. [概要] ページで、設定の概要を表示し、[完了]を選択してセットアップを完了します。

以前作成されたサービスプリンシパルからの詳細を使ってAzureに接続する

手動でサービスプリンシパルを作成するには、Azure Resource Managerサブスクリプションに接続して、後述のPowerShellコマンドレットを使用します。

前提条件:

  • $SubscriptionId: VDAをプロビジョニングするサブスクリプションのAzure Resource Manager SubscriptionID
  • $AADUser: サブスクリプションのADテナントに対するAzure ADユーザーアカウント。$AADUserをサブスクリプションの共同管理者にしてください。
  • $ApplicationName: Azure AD内で作成されるアプリケーションの名前。
  • $ApplicationPassword: アプリケーションのパスワード。このパスワードは、ホスト接続を作成するときのアプリケーションシークレットとして使用します。

サービスプリンシパルを作成するには、次の手順に従ってください。

  1. Azure Resource Managerサブスクリプションに接続します。

    Connect-AzAccount

  2. サービスプリンシパルを作成するAzure Resource Managerサブスクリプションを選択します。

    Select-AzSubscription -SubscriptionID $SubscriptionId;

  3. ADテナントでアプリケーションを作成します。

    $AzureADApplication = New-AzADApplication -DisplayName $ApplicationName -HomePage "https://localhost/$ApplicationName" -IdentifierUris https://$ApplicationName -Password $ApplicationPassword

  4. サービスプリンシパルを作成します。

    New-AzADServicePrincipal -ApplicationId $AzureADApplication.ApplicationId

  5. サービスプリンシパルに役割を割り当てます。

    New-AzRoleAssignment -RoleDefinitionName Contributor -ServicePrincipalName $AzureADApplication.ApplicationId –scope /subscriptions/$SubscriptionId

  6. PowerShellコンソールの出力ウィンドウから、ApplicationIdをメモします。このIDは、ホスト接続を作成するときに使用します。

接続およびリソースの追加ウィザードで以下を行います:

  1. [接続] ページで [新しい接続を作成する] を選択します。次に、接続の種類として [Microsoft Azure] を選択し、Azure環境を選択します。

  2. 仮想マシンの作成にどのツールを使用するかを選択し、[次へ]を選択します。

  3. [接続の詳細] ページで、AzureサブスクリプションIDと接続の名前を入力します。

    注:

    接続名は1~64文字にし、空白スペースのみにしたり記号(\/;:#.*?=<>|[]{}"'()')を含めたりすることはできません。

  4. [既存を使用] を選択します。[既存のサービスプリンシパルの詳細] ウィンドウで、既存のサービスプリンシパルに次の設定を入力します。詳細を入力すると、[保存]ボタンが有効になります。[保存] を選択します。有効な詳細を入力しない限り、このページの先には進めません。

    • サブスクリプションID。AzureサブスクリプションIDを入力します。サブスクリプションIDを取得するには、Azure Portalにサインインし、[Subscriptions]>[Overview]に移動します。
    • Active Directory ID(テナントID)。Azure ADに登録したアプリケーションのディレクトリ(テナント)IDを入力します。
    • アプリケーションID。Azure ADに登録したアプリケーションのアプリケーション(クライアント)IDを入力します。
    • アプリケーションシークレット。秘密キー(クライアントシークレット)を作成します。登録されたアプリケーションは、キーを使用してAzure ADへの認証を行います。セキュリティのために、キーを定期的に変更することをお勧めします。後でキーを取得することはできないため、必ずキーを保存してください。
    • 認証URL。このフィールドは自動的に入力され、編集できません。
    • 管理URL。このフィールドは自動的に入力され、編集できません。
    • ストレージのサフィックス。このフィールドは自動的に入力され、編集できません。
  5. [保存] を選択すると、[接続の詳細]ページに戻ります。[次へ] を選択して、次のページに進みます。

  6. 接続用のリソースを構成します。リソースには領域とネットワークが含まれます。

    • [リージョン] ページで領域を選択します。
    • [ネットワーク] ページで、次の手順を実行します:
      • 1~64文字のリソース名を入力して、リージョンとネットワークの組み合わせを特定できるようにします。リソース名は、空白のみにしたり記号(\/;:#.*?=<>|[]{}"'()')を含めたりすることはできません。
      • 仮想ネットワークとリソースグループのペアを選択します。(複数の仮想ネットワークを同じ名前にする場合、ネットワーク名とリソースグループをペアリングすると一意の組み合わせになります。)前のページで選択したリージョンに仮想ネットワークがない場合は、前のページに戻って仮想ネットワークのあるリージョンを選択します。
  7. [概要] ページで、設定の概要を表示し、[完了]を選択してセットアップを完了します。

Azure Resource Managerイメージを使用してマシンカタログを作成する

これは、「マシンカタログの作成」のガイダンスを補完する情報です。

イメージは、マシンカタログの仮想マシンの作成に使用されることになるテンプレートです。マシンカタログを作成する前に、Azure Resource Managerでイメージを作成します。イメージについて詳しくは、「マシンカタログの作成」を参照してください。

マシンカタログ作成ウィザードで次の操作を行います:

  • [マシンの種類] ページと [マシン管理] ページには、Azure固有の情報は含まれていません。「マシンカタログの作成」のガイダンスに従ってください。

  • [マスターイメージ] ページで、リソースグループを選択してからコンテナ内を移動(ドリルダウン)して、イメージとして使用するAzure VHD、Azure ImageVersion、またはShared Image Galleryに移動します。VHDまたはImageVersionには、Citrix VDAがインストールされている必要があります。VHDが仮想マシン(VM)に接続されている場合は、VMを停止します。

    注:

    イメージのレプリケーション中に、先に進んでそのイメージをマスターイメージとして選択し、セットアップを完了することができます。ただし、イメージのレプリケーション中は、カタログ作成完了までの時間が長くなることがあります。MCSでは、カタログの作成開始から1時間以内にレプリケーションを完了する必要があります。レプリケーションがタイムアウトすると、カタログの作成は失敗します。レプリケーションステータスはAzureで確認できます。レプリケーションがまだ保留中の場合、またはレプリケーションが完了した後で再試行してください。

    マシンプロファイルを使用する必要がある場合には、[マシンプロファイルを使用する] チェックボックスを有効にし、リストからマシンプロファイルを選択します(Azureでは、VMをマシンプロファイルのVMとして作成しました。)デフォルトでは、マスターイメージが存在するリソースグループが選択されます。別のリソースグループ内のマシンプロファイルに移動します。指定したマシンプロファイルからイメージが継承する構成は次のとおりです:

    • 高速ネットワーク
    • ブート診断
    • ホストのディスクキャッシュ(OSおよびMCSIOディスク関連)
    • マシンサイズ(別途指定されていない場合)
    • VMに適用されたタグ

    カタログを作成した後、イメージがマシンプロファイルから継承している構成を表示できます。[マシンカタログ] ノードで、カタログを選択して下部ペインに詳細を表示します。次に、[テンプレートのプロパティ] タブをクリックしてマシンプロファイルのプロパティを表示します。[タグ] セクションには、最大3つのタグが表示されます。そのVMに配置されているすべてのタグを表示するには、[すべて表示] をクリックします。

    MCSでAzure専用ホストにVMをプロビジョニングする場合は 、[ホストグループを使用する] チェックボックスをオンにし、リストからホストグループを選択します。ホストグループは、専用ホストのコレクションを表すリソースです。専用ホストは、1つまたは複数の仮想マシンをホストする物理サーバーを提供するサービスです。サーバーはAzureサブスクリプション専用であり、他のサブスクライバーとは共有されません。専用ホストを使用する場合、Azureは、VMがそのホストで実行されている唯一のマシンであることを保証します。この機能は、規制または内部のセキュリティ要件を満たす必要があるシナリオに適しています。ホストグループとそれらを使用する際の考慮事項について詳しくは、「Azure専用ホスト」を参照してください。

    重要:

    • Azureの自動配置が有効になっているホストグループのみが表示されます。
    • マシンプロファイルを使用する場合、ホストグループを使用することはできません。
    • ホストグループを使用すると、ウィザードの後半で表示される [Virtual Machines] ページが変更されます。選択したホストグループに含まれるマシンサイズのみが、このページに表示されます。また、アベイラビリティーゾーンは自動的に選択され、選択できません。
  • [ストレージとライセンスの種類] ページは、Azure Resource Managerイメージを使用しているときのみ表示されます。

    [ストレージとライセンスの種類]ページ

    マシンカタログに使用するストレージタイプは次のとおりです:

    • プレミアムSSD:I/Oを多用するワークロードを持つVMに適した、高性能かつ低遅延のディスクストレージオプションを提供します。
    • 標準SSD:低IOPSレベルで安定したパフォーマンスを必要とするワークロードに適した、コスト効率の高いストレージオプションを提供します。Azure IDディスクは、常に標準SSDを使用して作成されます。
    • 標準HDD:遅延の影響を受けないワークロードを実行しているVMに対して、信頼性の高い低コストのディスクストレージオプションを提供します。

    ストレージの種類によって、ウィザードの [仮想マシン] ページに表示されるマシンのサイズが変わります。MCSは、ローカル冗長ストレージ(LRS)を使用するようにプレミアムディスクと標準ディスクを構成します。LRSは、単一のデータ センター内でデータの複数の同期コピーを作成します。Azureのストレージの種類およびストレージの複製について詳しくは、以下のドキュメントを参照してください:

    既存のWindowsライセンスを使用するかを選択します。WindowsライセンスとWindowsイメージ(Azureプラットフォームのサポートイメージまたはカスタムイメージ)を使用すると、AzureでWindows VMを低コストで実行できます。ライセンスには次の2種類があります:

    • Windows Serverライセンス。Windows ServerライセンスまたはAzure Windows Serverライセンスを使用できます。これにより、Azureハイブリッド特典を使用できます。詳しくは、https://azure.microsoft.com/en-us/pricing/hybrid-benefit/を参照してください。Azureハイブリッド特典を使用すると、AzureギャラリーからのWindows Server追加ライセンス料金が不要になるため、Azureでの仮想マシン実行コストを基本計算料金のみに抑えられます。

    • Windowsクライアントライセンス。Windows 10ライセンスをAzureに移行できるため、追加のライセンスなしでWindows 10 VMをAzureで実行できます。詳細については、「クライアントアクセスライセンスと管理ライセンス」を参照してください。

    注:

    Windowsクライアントライセンスのオプションは、マシンカタログのセットアップ時に選択するオペレーティングシステムによって異なります。[マルチセッションOS] を選択した場合、オプションは [自分のWindows 10ライセンスを使用する] が表示されます。[シングルセッションOS] を選択した場合、オプションは [自分のWindowsクライアントライセンスを使用する] が表示されます。

    プロビジョニングされた仮想マシンがライセンス特典を使用していることを確認するには、次のPowerShellコマンドを実行します:Get-AzM -ResourceGroup MyResourceGroup -Name MyVM

    または、Get-Provscheme PowerShell SDKを使用して確認することもできます。例:Get-Provscheme -ProvisioningSchemeName "My Azure Catalog"。このコマンドレットについて詳しくは、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/MachineCreation/Get-ProvScheme/を参照してください。

    AzureのShared Image Gallery(SIG)は、画像を管理および共有するためのリポジトリです。これにより、組織全体で画像を利用できるようになります。大規模な永続的でないマシンカタログを作成する場合は、よりすばやくVDA OSディスクをリセットできるため、イメージをSIGに保存することをお勧めします。[AzureのShared Image Galleryにイメージを格納する] を選択すると、Azure Shared Image Galleryの設定セクションが表示され、追加のSIG設定を指定できます:

    • イメージレプリカに対する仮想マシンの比率。Azureで保持するイメージレプリカに対する仮想マシンの比率を指定できます。デフォルトでは、Azureは40台の非永続的なマシンごとに1つのイメージレプリカを保持します。永続マシンの場合、その数はデフォルトで1,000になります。

    • 最大レプリカ数。Azureで保持するイメージレプリカの最大数を指定できます。デフォルトは10です。

  • [仮想マシン] ページで、作成する仮想マシンの数を指定します。少なくとも1つは指定してください。マシンのサイズを選択します。カタログを作成した後で、マシンのサイズを変更することはできません。後で他のサイズに変更したくなった場合は、カタログを削除してから、同じイメージを使用したカタログを作成し、希望のマシンサイズを指定します。

仮想マシンの名前に、ASCII以外の文字や特殊文字を含めることはできません。

  • (MCSを使用する場合)[リソースグループ] ページで、リソースグループを作成するか、既存のグループを使用するかを選択します。
    • リソースグループを作成する場合は、[次へ] を選択します。
    • 既存のリソースグループを使用する場合は、[使用可能なプロビジョニングリソースグループ]ボックスの一覧からグループを選択します。注意事項:カタログで作成しているマシンを収容するのに十分なグループを選択してください。選択が少なすぎると、メッセージが表示されます。後でカタログにさらにVMを追加する予定がある場合は、必要最小限よりも多く選択しておくことをお勧めします。カタログが作成された後、カタログにリソースグループをさらに追加することはできません。

    詳しくは、「Azureリソースグループ」を参照してください。

  • [NIC] ページ、[マシンID] ページ、および [概要] ページには、Azure固有の情報は含まれていません。「マシンカタログの作成」のガイダンスに従ってください。

ウィザードを完了します。

Azureの調整

Azure Resource Managerはサブスクリプションおよびテナントの要求を調整し、プロバイダーの特定のニーズに対応して定義された制限を基にルーティングします。詳しくは、Microsoft社のサイトの「Resource Managerの要求のスロットル」を参照してください。制限は、サブスクリプションやテナントで多数のマシンの管理が問題となりうる場合に存在します。たとえば、多数のマシンを含むサブスクリプションは、電源操作に関連してパフォーマンスの問題が発生することがあります。

ヒント:

詳しくは「Machine Creation ServicesによるAzureのパフォーマンスの向上」を参照してください。

Citrix Virtual Apps and Desktopsサービスでは、これらの問題の影響を軽減するためにMCS内部の調整を削除して、より高い値のAzureの要求クォータを利用することができます。

大量のサブスクリプション(1,000台の仮想マシンを含む場合など)で仮想マシンをオンまたはオフにする場合、次の最適設定をお勧めします:

  • 絶対同時操作:500
  • 1分あたりの最大新規操作:2000
  • 最大同時操作:500

完全な構成インターフェイスを使用して、指定のホスト接続でAzure操作を構成します:

  1. [管理]>[完全な構成] の左側ペインで [ホスト] を選択します。
  2. Azure関連の接続を選択して編集します。
  3. 接続の編集ウィザードで [詳細設定] を選択します。
  4. [詳細設定] 画面で構成オプションを使用し、同時操作の数、1分あたりの最大新規操作、その他追加の接続オプションを指定します。

Azureの調整

MCSは、デフォルトで最大500の同時操作をサポートします。または、Remote PowerShell SDKを使用して、同時操作の最大数を設定することもできます。

PowerShellプロパティMaximumConcurrentProvisioningOperationsを使用して、同時Azureプロビジョニング操作の最大数を指定します。プロビジョニングスキームでこのプロパティを使用する場合は、次のことを考慮してください:

  • MCSは、デフォルトで最大500の同時操作をサポートしており、これにはカスタムプロパティパラメーターMaximumConcurrentProvisioningOperationsを使用します。
  • PowerShellコマンドSet-ProvSchemeを使用してMaximumConcurrentProvisioningOperationsパラメーターを構成します。

Azureリソースグループ

Azureプロビジョニングのリソースグループは、アプリケーションとデスクトップをユーザーに提供するVMをプロビジョニングする方法を提供します。MCSマシンカタログを作成するときに既存の空のAzureリソースグループを追加するか、新しいリソースグループを作成することができます。Azureリソースグループについて詳しくは、Microsoft社のドキュメントを参照してください。

Azureリソースグループの使用

Azureリソースグループごとの仮想マシン、管理対象ディスク、スナップショット、およびイメージの数に制限はありません(Azureリソースグループごとに仮想マシンは240、管理対象ディスクは800という数の制限はなくなりました)。

  • フルスコープのサービスプリンシパルを使用してマシンカタログを作成する場合、MCSは1つのAzureリソースグループのみを作成し、カタログのこのグループを使用します。
  • スコープの狭いサービスプリンシパルを使用してマシンカタログを作成する場合、事前に作成された空のAzureリソースグループを指定する必要があります。

Azureエフェメラルディスク

Azureエフェメラルディスクを使用すると、キャッシュディスクを再利用して、Azure対応の仮想マシンのOSディスクを保存できます。この機能は、標準のHDDディスクよりも高性能のSSDディスクを必要とするAzure環境で役立ちます。エフェメラルディスクを使用するには、New-ProvSchemeを実行するとき、カスタムプロパティUseEphemeralOsDisktrueに設定する必要があります。

注:

カスタムプロパティUseEphemeralOsDiskfalseに設定されているか、値が指定されていない場合、プロビジョニングされたすべてのVDAは引き続きプロビジョニングされたOSディスクを使用します。

以下は、プロビジョニングスキームで使用するカスタムプロパティのセットの例です:

"CustomProperties": [
            {
                "Name": "UseManagedDisks",
                "Value": "true"
            },
            {
                "Name": "StorageAccountType",
                "Value": "Standard_LRS"
            },
            {
                "Name": "UseSharedImageGallery",
                "Value": "true"
            },
            {
                "Name": "SharedImageGalleryReplicaRatio",
                "Value": "40"
            },
            {
                "Name": "SharedImageGalleryReplicaMaximum",
                "Value": "10"
            },
            {
                "Name": "LicenseType",
                "Value": "Windows_Server"
            },
            {
                "Name": "UseEphemeralOsDisk",
                "Value": "true"
            }
        ],
<!--NeedCopy-->

エフェメラルOSディスクを使用してマシンを作成する方法

エフェメラルOSディスクは、CustomPropertiesパラメーターのUseEphemeralOsDiskプロパティに基づいて制御されます。

エフェメラルディスクに関する重要な考慮事項

New-ProvSchemeを使用してエフェメラルOSディスクのプロビジョニングを使用するには、次の制約を考慮してください:

  • カタログ(サービスオファリング)に使用されるVMサイズは、エフェメラルOSディスクをサポートする必要があります。
  • VMサイズで表されるキャッシュディスクサイズは、OSディスクのサイズ以上である必要があります。

次の場合にも、これらの問題を考慮してください:

  • プロビジョニングスキームを作成する場合。
  • プロビジョニングスキームを変更する場合。
  • イメージを更新する場合。

Azureサーバー側暗号化

Citrix Virtual Apps and Desktopsサービスは、Azure Key Vaultを使用してAzure Managed Disksの顧客が管理する暗号化キーをサポートします。このサポートにより、独自の暗号化キーを使用してマシンカタログの管理対象ディスクを暗号化して、組織およびコンプライアンスの要件を管理できます。詳しくは、「Azure Disk Storageのサーバー側暗号化」を参照してください。

管理対象ディスクにこの機能を使用する場合:

  • ディスクが暗号化されているキーを変更するには、DiskEncryptionSetの現在のキーを変更します。DiskEncryptionSetに関連付けられているすべてのリソースは、新しいキーで暗号化されるように変更されます。

  • キーを無効にするか削除すると、そのキーを使用するディスクのあるVMはすべて自動的にシャットダウンします。シャットダウン後、キーを再度有効にするか、新しいキーを割り当てない限り、VMは使用できません。このキーを使用するカタログの電源をオンにすることはできません。また、VMをカタログに追加することもできません。

顧客が管理する暗号化キーを使用する場合の重要な考慮事項

この機能を使用するときは、次のことに注意してください:

  • 顧客が管理するキーに関連するすべてのリソース(Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット)は、同じサブスクリプションとリージョンに配置される必要があります。

  • 顧客が管理する暗号化キーを有効にすると、後で無効にすることはできません。顧客が管理する暗号化キーを無効にする、または削除する場合は、顧客が管理する暗号化キーを使用していない別の管理対象ディスクにすべてのデータをコピーします。

  • サーバー側暗号化と顧客が管理するキーを使用して暗号化されたカスタムイメージから作成されたディスクは、同じ顧客が管理するキーを使用して暗号化する必要があります。これらのディスクは同じサブスクリプションでカバーされる必要があります。

  • サーバー側暗号化と顧客が管理するキーを使用して暗号化されたディスクから作成されたスナップショットは、同じ顧客が管理するキーを使用して暗号化する必要があります。

  • 顧客が管理するキーで暗号化されたディスク、スナップショット、イメージは、別のリソースグループおよびサブスクリプションに移動できません。

  • Azure Disk Encryptionを使用して現在暗号化されている、または以前に暗号化された管理対象ディスクは、顧客が管理するキーを使用して暗号化することはできません。

  • リージョンごとのディスク暗号化セットの制限については、Microsoft社のサイトを参照してください。

注:

Azureサーバー側暗号化の構成については、「クイックスタート:Azure Portalを使用してキーコンテナを作成する」を参照してください。

Azureの顧客が管理する暗号キー

マシンカタログを作成するときに、カタログでプロビジョニングされるマシンのデータを暗号化するかどうかを選択できます。顧客が管理する暗号化キーを使用したサーバー側暗号化により、管理対象ディスクレベルで暗号化を管理し、カタログ内のマシン上のデータを保護できます。ディスク暗号化セット(DES)は、顧客が管理するキーを表します。この機能を使用するには、最初にAzureでDESを作成する必要があります。DESの形式は次のとおりです:

  • /subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/Sample-RG/providers/Microsoft.Compute/diskEncryptionSets/SampleEncryptionSet`

一覧からDESを選択します。選択したDESは、リソースと同じサブスクリプションおよびリージョンに存在する必要があります。イメージがDESで暗号化されている場合は、マシンカタログを作成するときに同じDESを使用します。カタログの作成後にDESを変更することはできません。

暗号化キーを使用してカタログを作成し、後でAzureで対応するDESを無効にすると、カタログ内のマシンの電源をオンにしたり、カタログにマシンを追加したりできなくなります。

Azure専用ホスト

MCSを使用して、Azure専用ホストで仮想マシンをプロビジョニングできます。Azure専用ホストで仮想マシンをプロビジョニングする前に、以下を実行します:

  • ホストグループを作成します。
  • そのホストグループにホストを作成します。
  • カタログと仮想マシンを作成するために十分なホスト容量が確保されていることを確認してください。

管理者は、次のPowerShellスクリプトで定義されたホストテナントを持つマシンのカタログを作成できます:

New-ProvScheme <otherParameters> -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Property xsi:type="StringProperty" Name="HostGroupId" Value="myResourceGroup/myHostGroup" />
 ...other Custom Properties...
 </CustomProperties>
<!--NeedCopy-->

MCSを使用して、Azure専用ホストで仮想マシンをプロビジョニングする場合、次の点を考慮してください:

  • 専用ホストはカタログプロパティであり、カタログの作成後に変更することはできません。専用テナントは現在、Azureではサポートされていません。
  • HostGroupIdパラメーターを使用する場合は、ホスティングユニットの領域に事前構成されたAzureホストグループが必要です。
  • Azureの自動配置が必要です。この機能は、ホストグループに関連付けられたサブスクリプションをオンボードするように要求します。詳しくは、「Azure専用ホストのVMスケールセット - パブリックプレビュー」を参照してください。自動配置が有効になっていない場合、MCSはカタログの作成中にエラーをスローします。

AzureでMCSプロビジョニングされたマシンの公開イメージリポジトリとしてAzure Shared Image Galleryを使用します。公開イメージをギャラリーに保存して、OSディスクの作成とハイドレーションを高速化し、非永続仮想マシンの起動時間とアプリケーションの起動時間を改善できます。Shared Image Galleryには、次の3つの要素が含まれています:

  • ギャラリー。イメージはここに保存されます。MCSは、マシンカタログごとに1つのギャラリーを作成します。
  • ギャラリーイメージの定義。この定義には、公開イメージに関する情報(オペレーティングシステムの種類と状態、Azureリージョン)が含まれます。MCSは、カタログ用に作成されたイメージごとに1つのイメージ定義を作成します。
  • ギャラリーイメージバージョン。Shared Image Galleryの各イメージには複数のバージョンを含めることができ、各バージョンには異なるリージョンに複数のレプリカを含めることができます。各レプリカは、公開イメージの完全なコピーです。Citrix Virtual Apps and Desktopsサービスでは、カタログ内のマシン数、構成されたレプリカの比率、および構成されたレプリカの最大数に基づき、カタログのリージョンにおいて適切なレプリカ数を持つ各イメージに対して、Standard_LRSイメージバージョン(バージョン1.0.0)が1つ作成されます。

注:

Shared Image Gallery機能は、管理対象ディスクでのみ機能します。従来のマシンカタログでは使用できません。

詳しくは、「Azure Shared Image Galleryの概要」を参照してください。

Shared Image Galleryを構成する

New-ProvSchemeコマンドを使用することで、Shared Image Galleryをサポートする新しいプロビジョニングスキームを作成できます。Set-ProvSchemeコマンドでは、プロビジョニングスキームでのこの機能の有効化または無効化と、レプリカの比率およびレプリカの最大値の変更が可能です。

Shared Image Gallery機能をサポートするために、プロビジョニングスキームに3つのカスタムプロパティが追加されました:

UseSharedImageGallery

  • Shared Image Galleryを使用して公開イメージを保存するかどうかを定義します。Trueに設定すると、イメージはShared Image Galleryイメージとして保存されます。Trueに設定しない場合、イメージはスナップショットとして保存されます。
  • 有効な値は、TrueおよびFalseです。
  • プロパティが定義されていない場合、デフォルト値はFalseです。

SharedImageGalleryReplicaRatio

  • ギャラリーイメージバージョンのレプリカに対するマシンの比率を定義します。
  • 有効な値は、0より大きい整数です。
  • プロパティが定義されていない場合は、デフォルト値が使用されます。永続OSディスクのデフォルト値は1000であり、非永続OSディスクのデフォルト値は40です。

SharedImageGalleryReplicaMaximum

  • 各ギャラリーイメージバージョンのレプリカの最大数を定義します。
  • 有効な値は、0より大きい整数です。
  • プロパティが定義されていない場合、デフォルト値は10です。
  • Azureは現在、ギャラリーイメージの単一バージョンに対して最大10個のレプリカをサポートしています。プロパティがAzureでサポートされている値よりも大きい値に設定されている場合、MCSは指定された値を使用しようとします。Azureはエラーを生成し、MCSログでは現在のレプリカ数が変更されずに残ります。

ヒント:

Shared Image Galleryを使用してMCSプロビジョニングされたカタログの公開イメージを保存する場合、MCSは、カタログ内のマシンの数、レプリカの比率、およびレプリカの最大数に基づいて、ギャラリーイメージバージョンのレプリカ数を設定します。レプリカ数は、カタログ内のマシンの数をレプリカ比率(最も近い整数値に切り上げ)で除算し、最大レプリカ数で値を制限することによって計算されます。たとえば、レプリカの比率が20で最大5の場合、0〜20台のマシンで1つのレプリカが作成され、21〜40台で2つ、41〜60台で3つ、61〜80台で4つ、81台以上で5つのレプリカが作成されます。

ユースケース:Shared Image Galleryのレプリカ比率とレプリカの最大値を更新する

既存のマシンカタログはShared Image Galleryを使用します。Set-ProvSchemeコマンドを使用して、カタログ内の既存のすべてのマシンおよび将来のマシンのカスタムプロパティを更新します:

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageAccountType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="True"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaRatio" Value="30"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaMaximum" Value="20"/></CustomProperties>'
<!--NeedCopy-->

ユースケース:スナップショットカタログをShared Image Galleryカタログに変換する

このユースケースの場合:

  1. UseSharedImageGalleryフラグをTrueに設定してSet-ProvSchemeを実行します。オプションで、SharedImageGalleryReplicaRatioおよびSharedImageGalleryReplicaMaximumプロパティを含めます。
  2. カタログを更新します。
  3. マシンの電源を入れ直して、強制的に更新します。

次に例を示します:

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageAccountType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="True"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaRatio" Value="30"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaMaximum" Value="20"/></CustomProperties>'
<!--NeedCopy-->

ヒント:

パラメーターSharedImageGalleryReplicaRatioおよびSharedImageGalleryReplicaMaximumは必須ではありません。Set-ProvSchemeコマンドが完了した後、Shared Image Galleryイメージはまだ作成されていません。ギャラリーを使用するようにカタログを構成すると、次回のカタログ更新操作で公開イメージがギャラリーに保存されます。カタログ更新コマンドは、ギャラリー、ギャラリーイメージ、およびイメージバージョンを作成します。マシンの電源を入れ直すとマシンが更新されます。そのとき、必要に応じてレプリカ数が更新されます。それ以降、既存のすべての非永続マシンはShared Image Galleryイメージを使用してリセットされ、新しくプロビジョニングされたすべてのマシンはイメージを使用して作成されます。古いスナップショットは、数時間以内に自動的にクリーンアップされます。

ユースケース:Shared Image Galleryカタログをスナップショットカタログに変換する

このユースケースの場合:

  1. UseSharedImageGalleryフラグをFalseに設定するか、定義せずにSet-ProvSchemeを実行します。
  2. カタログを更新します。
  3. マシンの電源を入れ直して、強制的に更新します。

次に例を示します:

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageAccountType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="False"/></CustomProperties>'
<!--NeedCopy-->

ヒント:

スナップショットからShared Image Galleryカタログへの更新とは異なり、各マシンのカスタムデータは、新しいカスタムプロパティを反映するようにまだ更新されていません。次のコマンドを実行して、元のShared Image Galleryのカスタムプロパティを表示します:Get-ProvVm -ProvisioningSchemeName catalog-nameSet-ProvSchemeコマンドが完了した後、イメージスナップショットはまだ作成されていません。ギャラリーを使用しないようにカタログを構成すると、次回のカタログ更新操作で公開イメージがスナップショットとして保存されます。その時点から、既存のすべての非永続マシンはスナップショットを使用してリセットされ、新しくプロビジョニングされたすべてのマシンはスナップショットから作成されます。マシンの電源を入れ直すと更新され、その時カスタムマシンデータが更新されて、UseSharedImageGalleryFalseに設定されていることが反映されます。古いShared Image Galleryアセット(ギャラリー、画像、バージョン)は、数時間以内に自動的にクリーンアップされます。

指定されたアベイラビリティゾーンへのマシンのプロビジョニング

Azure環境の特定のアベイラビリティゾーンにマシンをプロビジョニングできます。これは、完全な構成インターフェイスまたはPowerShellを使用して実行できます

注:

ゾーンが指定されていない場合、MCSはAzureにマシンをリージョン内に配置させます。複数のゾーンが指定されている場合、MCSはマシンをそれらにランダムに分散します。

完全な構成インターフェイスを使用したアベイラビリティゾーンの構成

マシンカタログを作成するときに、マシンをプロビジョニングするアベイラビリティゾーンを指定できます。[仮想マシン] ページで、マシンを作成するアベイラビリティゾーンを1つ以上選択します。

アベイラビリティゾーンが使用できない理由は2つあります:リージョンにアベイラビリティゾーンがないか、選択したマシンサイズが使用できないことです。

PowerShellを使用したアベイラビリティゾーンの構成

PowerShellを使用する場合、Get-Itemでサービスオファリングのインベントリアイテムを表示できます。たとえば、米国東部リージョン Standard_B1lsのサービスオファリングを表示するには、以下を実行します:

$serviceOffering = Get-Item -path "XDHyp:\Connections\my-connection-name\East US.region\serviceoffering.folder\Standard_B1ls.serviceoffering"
<!--NeedCopy-->

ゾーンを表示するには、アイテムのAdditionalDataパラメーターを使用します:

$serviceOffering.AdditionalData

アベイラビリティゾーンが指定されていない場合、マシンのプロビジョニング方法に変更はありません。

PowerShellを使用してアベイラビリティゾーンを構成するには、New-ProvScheme操作で、使用可能なZonesカスタムプロパティを使用します。Zonesプロパティは、マシンをプロビジョニングするアベイラビリティゾーンの一覧を定義します。これらのゾーンには、1つまたは複数のアベイラビリティゾーンを含めることができます。たとえば、Zones 1と3の場合は、<Property xsi:type="StringProperty" Name="Zones" Value="1, 3"/> のようになります。

Set-ProvSchemeコマンドを使用して、プロビジョニングスキームのゾーンを更新します。

無効なゾーンが指定された場合、プロビジョニングスキームは更新されず、無効なコマンドを修正する方法を示すエラーメッセージが表示されます。

ヒント:

無効なカスタムプロパティを指定すると、プロビジョニングスキームは更新されず、関連するエラーメッセージが表示されます。

Azureエフェメラルディスク

Azureエフェメラルディスクを使用すると、キャッシュディスクを再利用して、Azure対応の仮想マシンのOSディスクを保存できます。この機能は、標準のHDDディスクよりも高性能のSSDディスクを必要とするAzure環境で役立ちます。

注:

永続カタログでは、エフェメラルOSディスクはサポートされていません。

エフェメラルOSディスクでは、プロビジョニングスキームで管理対象ディスクとShared Image Galleryを使用する必要があります。詳しくは、「Azure Shared Image Gallery」を参照してください。

PowerShellを使用してエフェメラルディスクを構成する

カタログのAzureエフェメラルOSディスクを構成するには、Set-ProvSchemeUseEphemeralOsDiskパラメーターを使用します。UseEphemeralOsDiskパラメーターの値を「true」に設定します。

注:

この機能を使用するには、パラメーターのUseManagedDisksUseSharedImageGalleryも有効にする必要があります。

次に例を示します:

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
<Property xsi:type="StringProperty" Name="UseEphemeralOsDisk" Value="true" />
</CustomProperties>'
<!--NeedCopy-->

電源を入れ直したときにプロビジョニングされた仮想マシンを保持する

電源を入れ直したときに、プロビジョニングされた仮想マシンを保持するかどうかを選択します。PowerShellパラメーターNew-ProvScheme CustomPropertiesを使用します。このパラメーターではプロパティPersistVmを追加することができ、これを使用して、電源を入れ直したときにプロビジョニングされた仮想マシンが保持されるかどうかを指定できます。PersistVmプロパティをtrueに設定して、電源がオフのときに仮想マシンが保持されるように設定するか、プロパティをfalseに設定して、電源がオフのときに仮想マシンが保持されないように設定します。

注:

PersistVmプロパティは、CleanOnBootおよびUseWriteBackCacheのプロパティが有効なプロビジョニングスキームにのみ適用されます。非永続仮想マシンにPersistVmプロパティが指定されていない場合、非永続仮想マシンは電源がオフのときにAzure環境から削除されます。

次の例では、New-ProvScheme CustomPropertiesパラメーターでPersistVmプロパティがtrueに設定されています:

<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Standard_LRS" />
<Property xsi:type="StringProperty" Name="PersistWBC" Value="false" />
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="true" />
<Property xsi:type="StringProperty" Name="PersistVm" Value="true" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="demo-resourcegroup" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
</CustomProperties>
<!--NeedCopy-->

次の例では、New-ProvScheme CustomPropertiesパラメーターでPersistVMtrueに設定することで、ライトバックキャッシュが維持されます:

 New-ProvScheme
 -AzureAdJoinType "None"
 -CleanOnBoot
 -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Standard_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"false`" /><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"PersistVm`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"demo-resourcegroup`" /><Property xsi:type=`"StringProperty`" Name=`"LicenseType`" Value=`"Windows_Client`" /></CustomProperties>"
 -HostingUnitName "demo"
 -IdentityPoolName "NonPersistent-MCSIO-PersistVM"
 -MasterImageVM "XDHyp:\HostingUnits\demo\image.folder\scale-test.resourcegroup\demo-snapshot.snapshot"
 -NetworkMapping @ {"0"="XDHyp:\HostingUnits\demo\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\ji-test.resourcegroup\jitest-vnet.virtualprivatecloud\default.network"}
-ProvisioningSchemeName "NonPersistent-MCSIO-PersistVM"
 -ServiceOffering "XDHyp:\HostingUnits\demo\serviceoffering.folder\Standard_B2ms.serviceoffering" -UseWriteBackCache
 -WriteBackCacheDiskSize 127
 -WriteBackCacheMemorySize 256
 <!--NeedCopy-->

ヒント:

PersistVmプロパティは、プロビジョニングされた仮想マシンを保持するかどうかを決定します。PersistOsdiskプロパティは、OSディスクを永続化するかどうかを決定します。プロビジョニングされた仮想マシンを保持するには、最初にOSディスクを保持します。仮想マシンを削除してからでないと、OSディスクを削除することはできません。PersistVmパラメーターを指定せずにPersistOsdiskプロパティを使用することができます。

ストレージの種類

MCSを使用するAzure環境の仮想マシン用に異なるストレージの種類を選択します。ターゲットVMの場合、MCSは以下をサポートします:

  • OSディスク:プレミアムSSD、SSDまたはHDD
  • ライトバックキャッシュディスク:プレミアムSSD、SSD、またはHDD

これらのストレージの種類を使用するときは、次の点を考慮してください:

  • VMが選択したストレージの種類をサポートしていることを確認してください。
  • 構成がAzureエフェメラルディスクを使用している場合、ライトバックキャッシュを有効にすると、常に標準HDDストレージが使用されます。ライトバックキャッシュを使用して実装するためには、CustomProperties内のWBCDiskStorageTypeパラメーターを有効にします。WBCDiskStorageTypeパラメーターを指定しない場合、StorageAccountTypeはデフォルト値を使用します。

ヒント:

StorageAccountTypeは、OSタイプとストレージアカウント用に構成されています。WBCDiskStorageTypeは、ライトバックキャッシュのストレージの種類用に構成されています。通常のカタログの場合、StorageAccountTypeが必要です。WBCDiskStorageTypeが構成されていない場合は、WBCDiskStorageTypeのデフォルトとしてStorageAccountTypeが使用されます。

WBCDiskStorageTypeが構成されていない場合、StorageAccountTypeがWBCDiskStorageTypeのデフォルトとして使用されます

ストレージの種類の構成

VM用のストレージの種類を構成するには、New-ProvSchemeStorageAccountTypeパラメーターを使用します。StorageAccountTypeパラメーターの値を、いずれかのサポートされているストレージの種類に設定します。

以下は、プロビジョニングスキームで使用するCustomPropertiesパラメーターのセットの例です:

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
</CustomProperties>'
<!--NeedCopy-->

Azure VM、スナップショット、OSディスク、およびギャラリーイメージ定義の情報の取得

OSディスクとタイプ、スナップショット、ギャラリーイメージ定義など、Azure VMの情報を表示できます。この情報は、マシンカタログが割り当てられている場合にマスターイメージ上のリソースに関して表示されます。この機能を使用して、LinuxまたはWindowsイメージを表示および選択します。PowerShellプロパティTemplateIsWindowsTemplateAdditionDatafieldパラメーターに追加されました。このフィールドには、Azure固有の情報(VMタイプ、OSディスク、ギャラリーイメージ情報、OSタイプ情報)が含まれます。TemplateIsWindowsTemplateTrueに設定することで、OSタイプがWindowsであることを示します。 TemplateIsWindowsTemplateFalseに設定することで、OSタイプがLinuxであることを示します。

ヒント:

PowerShellプロパティTemplateIsWindowsTemplateによって表示される情報は、Azure APIから取得されます。場合によっては、このフィールドは空である可能性があります。たとえば、OSタイプをスナップショットから取得できないため、データディスクからのスナップショットにはTemplateIsWindowsTemplateフィールドが含まれません。

たとえば、PowerShellを使用してWindows OSタイプのAzure VMパラメーターAdditionDataTrueに設定します:

PS C:\Users\username> (get-item XDHyp:\HostingUnits\mynetwork\image.folder\username-dev-testing-rg.resourcegroup\username-dev-tsvda.vm).AdditionalData
Key Value
ServiceOfferingDescription Standard_B2ms
HardDiskSizeGB 127
ResourceGroupName FENGHUAJ-DEV-TESTING-RG
ServiceOfferingMemory 8192
ServiceOfferingCores 2
TemplateIsWindowsTemplate True
ServiceOfferingWithTemporaryDiskSizeInMb 16384
SupportedMachineGenerations Gen1,Gen2
<!--NeedCopy-->

Azure VMware Solutionの統合

Citrix Virtual Apps and DesktopサービスではAVSがサポートされています。Azure VMware Solution(AVS)では、Azureインフラストラクチャによって作成されたvSphereクラスターを含むクラウドインフラストラクチャが提供されます。オンプレミス環境でvSphereを使用するのと同じ方法で、Citrix Virtual Apps and DesktopsサービスでAVSを使用してVDAワークロードをプロビジョニングします。

AVSクラスターのセットアップ

Citrix Virtual Apps and DesktopsサービスでAVSを使用できるようにするには、Azureで次の手順を実行します:

  • ホストクォータの要求
  • Microsoft.AVSリソースプロバイダーの登録
  • ネットワークチェックリスト
  • Azure VMware Solutionプライベートクラウドの作成
  • Azure VMware Solutionプライベートクラウドへのアクセス
  • AzureでのVMwareプライベートクラウドのネットワークの構成
  • Azure VMware SolutionのDHCPの構成
  • Azure VMware Solutionへのネットワークセグメントの追加
  • Azure VMware Solution環境の確認

Azure Enterprise Agreementの顧客のホストクォータの要求

Azure Portalの [Help + Support] ページで [New support request] を選択し、次の情報を含めます:

  • Issue type:[Technical]
  • Subscription:自分のサブスクリプションを選択する
  • Service:[All services] > [Azure VMware Solution]
  • Resource:[General question]
  • Summary:[Need capacity]
  • Problem type:[Capacity Management Issues]
  • Problem subtype:[Customer Request for Additional Host Quota/Capacity]

サポートチケットの [Description][Details] タブに次の情報を含めます:

  • 概念実証または実稼働
  • リージョン名
  • ホストの数
  • その他の詳細

注:

AVSには少なくとも3つのホストが必要です。冗長性のため1つ多くホストを使用することをお勧めします。

サポートチケットの詳細を指定した後、[Review + Create] を選択してAzureに要求を送信します。

Microsoft.AVSリソースプロバイダーの登録

ホストクォータを要求した後、リソースプロバイダーを登録します:

  1. Azure Portalにサインインします。
  2. Azure Portalのメニューで、[All services] を選択します。
  3. [All services] メニューで、サブスクリプションを入力し、[Subscriptions] を選択します。
  4. サブスクリプション一覧からサブスクリプションを選択します。
  5. [Resource providers] を選択し、検索バーに 「Microsoft.AVS」 と入力します。
  6. リソースプロバイダーが登録されていない場合は、[Register] を選択します。

ネットワークに関する考慮事項

AVSでは、特定のネットワークアドレス範囲とファイアウォールポートを必要とするネットワークサービスが提供されます。詳しくは、「Azure VMware Solutionのネットワーク計画のチェックリスト」を参照してください。

Azure VMware Solutionプライベートクラウドの作成

ご使用の環境のネットワーク要件を検討した後、ASVプライベートクラウドを作成します:

  1. Azure Portalにサインインします。
  2. [Create a new resource] を選択します。
  3. [Search the Marketplace]ボックスで、「Azure VMware Solution」と入力し、一覧から [Azure VMware Solution] を選択します。

Azure ASVプライベートクラウドのセットアップ の画像

[Azure VMware Solution] ウィンドウで、次のことを行います:

  1. [Create] を選択します。
  2. [Basics] タブをクリックします。
  3. 以下の表内の情報を使用してフィールドの値を入力します:
フィールド
Subscription 環境で使用する予定のサブスクリプションを選択します。Azureサブスクリプション内のすべてのリソースが一緒に請求されます。
Resource group プライベートクラウドのリソースグループを選択します。Azureリソースグループは、Azureリソースが展開され管理される論理コンテナです。または、自分のプライベートクラウド用の新しいリソースグループを作成することもできます。
場所 米国東部など、場所を選択します。これは、計画フェーズで定義したリージョンです。
Resource name Azure VMware Solutionプライベートクラウドの名前を入力します。
SKU AV36を選択します。
Hosts プライベートクラウドのクラスターに割り当てられているホストの数を示します。デフォルト値は3であり、展開後に増減できます。
Address block プライベートクラウド用にIPアドレスブロックを提供します。CIDR(クラスレスドメイン間ルーティング)は、プライベートクラウド管理ネットワークを表し、vCenter ServerやNSX-T Managerなどのクラスター管理サービスに使用されます。/22アドレススペースを使用します。たとえば、10.175.0.0/22です。アドレスは一意である必要があり、他のAzure仮想ネットワークやオンプレミスネットワークと重複しないようにする必要があります。
Virtual Network Azure VMware Solution ExpressRoute回線は展開後の手順として確立されるので、これは空白のままにします。

[Create a private cloud] 画面で、次のことを行います:

  1. [Location] フィールドで、AVSがあるリージョンを選択します。リソースグループのリージョンはAVSリージョンと同じです。
  2. [SKU] フィールドで、[AV36 Node] を選択します。
  3. [Address Block] フィールドでIPアドレスを指定します。たとえば、10.15.0.0/22です。
  4. [Review + Create] を選択します。
  5. 情報を確認したら、[Create] をクリックします。

Azure ASV:プライベートクラウドの作成

ヒント:

プライベートクラウドの作成には3〜4時間かかる場合があります。単一のホストをクラスターに追加するには、30〜45分かかる場合があります。

展開が成功したことを確認します。作成したリソースグループに移動し、プライベートクラウドを選択します。[Status][Succeeded] になると、展開は完了です。

Azure ASV:接続の確認

Azure VMware Solutionプライベートクラウドへのアクセス

プライベートクラウドを作成したら、Windows VMを作成し、プライベートクラウドのローカルvCenterに接続します。

新しいWindows仮想マシンの作成
  1. リソースグループで、[+ Add] を選択してから、「Microsoft Windows 10/2016/2019」 を検索して選択します 。
  2. [作成] をクリックします。
  3. 必要な情報を入力してから、[Review + Create] を選択します。
  4. 検証に合格したら、[Create] を選択して仮想マシン作成プロセスを開始します。
プライベートクラウドのローカルvCenterへの接続
  1. クラウド管理者としてvSphere Client with VMware vCenter SSOにサインインします。

    Azure ASV:vSphereログイン

  2. Azure Portalで、プライベートクラウドを選択してから、[Manage]>[Identity] を選択します。

プライベートクラウドのvCenterとNSX-T Managerについて、URL、およびユーザーの資格情報が表示されます:

Azure ASV:vCenterのセットアップ

URLおよびユーザーの資格情報を確認した後、次のことを行います:

  1. 前の手順で作成したVMに移動し、その仮想マシンに接続します。

  2. Windows VMで、ブラウザーを開き、2つのブラウザータブでvCenterおよびNSX-T MangerのURLに移動します。[vCenter]タブで、前の手順のユーザー資格情報 「cloudadmin@vmcp.local」 を入力します。

AzureでのVMwareプライベートクラウドのネットワークの構成

ASVプライベートクラウドにアクセスした後、仮想ネットワークとゲートウェイを作成することでネットワークを構成します。

仮想ネットワークの作成
  1. Azure Portalにサインインします。
  2. 以前に作成したリソースグループに移動します。
  3. [+ Add] を選択して新しいリソースを定義します。
  4. [Search the Marketplace] ボックスに 「virtual network」 と入力します。仮想ネットワークリソースを見つけて選択します。
  5. [Virtual Network] ページで、[Create] を選択してプライベートクラウドの仮想ネットワークをセットアップします。
  6. [Create Virtual Network] ページで、仮想ネットワークの詳細を入力します。
  7. [Basics] タブで、仮想ネットワークの名前を入力し、適切なリージョンを選択して、[Next : IP Addresses] をクリックします。
  8. [IP Addresses] タブで、IPv4アドレススペースの下に、以前に作成したアドレスを入力します。

重要:

プライベートクラウドの作成時に使用したアドレススペースと重複しないアドレスを使用してください。

アドレススペースに入った後、次のことを行います:

  1. [+ Add subnet] を選択します。
  2. [Add subnet] ページで、サブネットに名前と適切なアドレス範囲を指定します。
  3. [Add] をクリックします。
  4. [Review + create] を選択します。
  5. 情報を確認し、[Create] をクリックします。展開が完了すると、仮想ネットワークがリソースグループに表示されます。
仮想ネットワークゲートウェイの作成

仮想ネットワークを作成したら、仮想ネットワークゲートウェイを作成します。

  1. リソースグループで、[+ Add] を選択して新しいリソースを追加します。
  2. [Search the Marketplace] ボックスに 「virtual network gateway」 と入力します。仮想ネットワークリソースを見つけて選択します。
  3. [Virtual Network gateway] ページで、[Create] をクリックします。
  4. [Create virtual network gateway] ページの [Basics] タブで、フィールドに値を入力します。
  5. [Review + create] をクリックします。

Azure ASV:vCenterのセットアップ

仮想ネットワークゲートウェイの構成を確認したら、[Create] をクリックして仮想ネットワークゲートウェイを展開します。 展開が完了したら、ExpressRouteを、Azure AVSプライベートクラウドを含む仮想ネットワークゲートウェイに接続します。

仮想ネットワークゲートウェイへのExpressRouteの接続

仮想ネットワークゲートウェイを展開した後、仮想ネットワークゲートウェイとAzure AVSプライベートクラウドの間の接続を追加します:

  1. ExpressRoute承認キーを要求します。
  2. Azure Portalで、Azure VMware Solutionプライベートクラウドに移動します。[Manage]>[Connectivity]>[ExpressRoute] を選択してから、[+ Request an authorization key]を選択します。

Azure ASV:承認キーの要求

承認キーを要求した後、次のことを行います:

  1. キーの名前を入力し、[Create] をクリックします。キーの作成には約30秒かかる場合があります。作成されると、新しいキーがプライベートクラウドの承認キーの一覧に表示されます。
  2. その承認キーExpressRoute IDをコピーします。ピアリングプロセスを完了するためにそれらが必要になります。表示された承認キーはしばらくすると消えるので、表示されたらすぐにコピーします。
  3. 使用する予定の仮想ネットワークゲートウェイに移動し、[Connections> + Add] を選択します。
  4. [Add connection] ページで、フィールドに値を入力し、[OK] を選択します。

Azure ASV:接続の追加

ExpressRoute回線と仮想ネットワークの間に接続が確立されます:

Azure ASV:接続の成功

Azure VMware SolutionのDHCPの構成

ExpressRouteを仮想ゲートウェイに接続した後、DHCPを構成します。

NSX-Tの使用によるDHCPサーバーのホスト

NSX-T Managerで、次のことを行います:

  1. [Networking]>[DHCP] を選択してから、[Add Server] を選択します。
  2. [Server Type] として [DHCP] を選択し、サーバー名とIPアドレスを入力します。
  3. [保存] をクリックします。
  4. [Tier 1 Gateways] を選択し、Tier-1ゲートウェイの縦の省略記号を選択してから、[Edit] を選択します。
  5. [No IP Allocation Set] を選択してサブネットを追加します。
  6. [Type] として [DHCP Local Server] を選択します。
  7. [DHCP Server]で、[Default DHCP] を選択してから、[Save] をクリックします。
  8. もう一度 [Save] をクリックしてから、[Close Editing] を選択します。

Azure ASV:NSX-Tサーバーの追加

Azure VMware Solutionへのネットワークセグメントの追加

DHCPをセットアップした後、ネットワークセグメントを追加します。

ネットワークセグメントを追加するには、NSX-T Managerで、[Networking]>[Segments] を選択してから[Add Segment] をクリックします。

Azure ASV:NSX-Tセグメントの追加

[Segments profile] 画面で、次のことを行います:

  1. セグメントの名前を入力します。
  2. [Connected Gateway] として [Tier-1 Gateway (TNTxx-T1)] を選択し、 [Type][Flexible] のままにします。
  3. 事前設定されたオーバーレイ [Transport Zone(TNTxx-OVERLAY-TZ)] を選択します。
  4. [Set Subnets] をクリックします。

Azure ASV:NSX-Tセグメントプロファイルの追加

[Azure ASV] セクションで、次のことを行います:

  1. ゲートウェイのIPアドレスを入力します。
  2. [追加] を選択します。

重要:

このセグメントIPアドレスは、AzureゲートウェイのIPアドレス(10.15.0.0/22)に属している必要があります。

DHCP範囲は、セグメントIPアドレスに属している必要があります:

Azure ASV:NSX-TセグメントのDHCP範囲の追加

[No] を選択して、セグメントの構成を続行するオプションを拒否します:

Azure ASV:NSX-Tを追加しセットアップが完了

vCenterで、[Networking]>[SDDC-Datacenter] を選択します:

Azure ASV:NSX-TとvCenterの追加

Azure AVS環境の確認

Azureリソースグループで直接接続とコネクタをセットアップします:

Azure ASV:ASVでの接続の確認

vCenterの資格情報を使用して接続を確認します:

Azure ASV:NSX-TとvCenterの追加

要件

  • Citrix Virtual Apps and DesktopsサービスでMCSカタログごとにリソースグループを作成する場合は、ホスト接続に関連付けられているAzureサービスプリンシパルに、リソースグループの作成と削除ができる権限が必要です。Citrix Virtual Apps and Desktopsサービスで既存の空のリソースグループを使用する場合は、ホスト接続に関連付けられているAzureサービスプリンシパルに、それらの空のリソースグループでの投稿者の権限が必要です。
  • [新規作成] オプションを使用してホスト接続を作成すると、作成したサービスプリンシパルにサブスクリプションスコープの投稿権限が設定されます。または、[既存を使用]オプションを使用して接続を作成し、既存のサブスクリプションスコープのサービスプリンシパルの詳細を指定することもできます。[新規作成] オプションを使用して完全な構成インターフェイスでサービスプリンシパルを作成する場合、新しいリソースグループの作成と削除、または既存の空のリソースグループへのプロビジョニングに必要な権限が設定されます。
  • スコープが狭いサービスプリンシパルは、PowerShellを使用して作成する必要があります。また、スコープが狭いサービスプリンシパルを使用するときは、PowerShellまたはAzure Portalを使用して、MCSがVMをプロビジョニングする各カタログのために、ホスト接続と同じリージョンに空のリソースグループを作成する必要があります。手順については、ブログ記事(https://www.citrix.com/blogs/2016/11/09/azure-role-based-access-control-in-xenapp-xendesktop/)を参照してください。

ホスト接続にスコープが狭いサービスプリンシパルを使用していて、カタログ作成ウィザードの [マスターイメージ] ページにイメージリソースグループが表示されない場合は、使用しているスコープが狭いサービスプリンシパルに、イメージリソースグループを一覧表示するための権限Microsoft.Resources/subscriptions/resourceGroups/readがないことが原因と考えられます。ウィザードを閉じ、この権限を設定してサービスプリンシパルを更新してから(手順については、ブログの投稿を参照)、ウィザードを再起動します。Azureでの更新が完全な構成インターフェイスに反映されるまで最大10分かかることがあります。

ヒント:

Azureサービスプリンシパルには、共同作成者の権限が必要です。共同作成者の権限は、完全な(サブスクリプションの)スコープ全体の共同作成者(MCSがマシンカタログのAzureリソースグループを自動的に作成する)、または、スコープが狭い共同作成者(空のAzureリソースグループを事前に作成し、それに応じて共同作成者の権限を付与する必要がある)のいずれかになります。

完全な構成インターフェイスを使用してマシンカタログのリソースグループを構成する

カタログ作成ウィザードの [リソースグループ] ページでは、リソースグループを作成するか、既存のグループを使用するかを選択できます。「Azure Resource Managerイメージを使用してマシンカタログを作成する」を参照してください。

マシンカタログを削除したときのリソースグループへの影響:マシンカタログを作成するときにCitrix Virtual Apps and Desktopsサービスでリソースグループを作成した場合は、その後でそのカタログを削除すると、それらのリソースグループとリソースグループ内のその他のリソースも削除されます。

マシンカタログを作成するときに既存のリソースグループを使用した場合は、その後でそのカタログを削除すると、それらのリソースグループのすべてのリソースは削除されますが、リソースグループは削除されません。

考慮事項と制限事項

既存のリソースグループを使用する場合、カタログ作成ウィザードの[リソースグループ]ページの使用可能なリソースグループの一覧は自動更新されません。したがって、このウィザードページを開き、Azureでリソースグループの権限を作成または追加した場合、その変更はウィザードの一覧に反映されません。最新の変更を表示するには、ウィザードの [マシン管理] ページに戻り、ホスト接続に関連するリソースを再選択します。または、ウィザードを閉じて再起動します。Azureでの変更が完全な構成インターフェイスに反映されるまで最大10分かかることがあります。

接続で、さまざまなリージョンの空のリソースグループにアクセスできるサービスプリンシパルが使用されている場合、それらはすべて利用可能な一覧に表示されます。マシンカタログを作成するリージョンと同じリージョンのリソースグループを選択してください。

トラブルシューティング

  • カタログ作成ウィザードの[リソースグループ]ページの一覧にリソースグループが表示されません。

    サービスプリンシパルで、一覧に表示するリソースグループに適切な権限が適用されていることが必要です。「要件」を参照してください。

詳細情報