Microsoft Azure Resource Manager仮想化環境

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

これを行うには、以下に関する知識が必要です。

Machine Creation Servicesを使用している場合、Azure Disk Encryptionはサポートされません。

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

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

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

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

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

Azureのオンデマンドプロビジョニングでは、VMは、プロビジョニング完了後、Citrix Virtual Apps and Desktopsで電源投入操作が開始されたときにのみ作成されます。Azure Portalでは、実行中のVMのみが表示されます。(Studioでは、VMは実行中であるかどうかに関係なく表示されます)。

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

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

Citrix Virtual Apps and DesktopsがVMの電源切断操作を開始すると、そのVMはAzureで削除され、Azure Portalに表示されなくなります。(Studioでは、VMのステータスはオフに変わります)。

オンデマンドプロビジョニング前に作成されたカタログ

Citrix Virtual Apps and DesktopsでのAzureのオンデマンドプロビジョニング機能のサポート開始(2017年半ば)前に作成されたマシンカタログがある場合、それらのカタログ内のVMは、実行中であるかどうかにかかわらずAzure Portalに表示されます。これらのVMをオンデマンドマシンに変換することはできません。

オンデマンドプロビジョニングの強化されたパフォーマンスとストレージコスト上の利点を活用するには、MCSを使用して新しいカタログを作成してください。

Azure Managed Disks

Azure Managed Disksは、従来のストレージアカウントを使用する代わりに、MCSで作成したマシンカタログで使用できる柔軟なディスク記憶域システムです。

Managed Disksの機能は、ストレージアカウントの作成と管理の複雑さを感じさせることなく、ディスクの作成と管理のためのシンプルでスケーラブルかつ可用性の高いソリューションを提供します。Managed Disksは、VMと同様にマスターイメージとして使用できます。Managed Disksを使用すると、マシンカタログの作成および更新時間を改善できます。(詳細については、「Azure Managed Disksの概要」を参照してください)。

デフォルトでは、マシンカタログはManaged Disksを使用します。このデフォルトはカタログを作成するときに上書きできます。

I/O最適化が構成されている場合(VMごとに3つのディスクを使用する場合)、サブスクリプションごとに最大3,333のVMをプロビジョニングできます。I/O最適化が構成されていない場合(VMごとに2つのディスクを使用する場合)、サブスクリプションで最大5,000のVMディスクをプロビジョニングできます。(Managed Disksの機能では、サブスクリプションで最大10,000のVMディスクを作成できます)。

Managed Disksの使用

Studioでマシンカタログを作成すると、カタログ作成ウィザードの [マスターイメージ] ページに、Managed DisksとVMおよびVHDが表示されます。(すべてのAzureリージョンがManaged Disksの機能をサポートしているわけではありません。カタログのホスト接続に表示されているリージョンについては、Managed Disksがリストに表示されます)。

カタログの作成時間は、画像とカタログが同じリージョンにある場合に最適化されます。

Managed Disksの機能は現在、Azureリージョン間におけるディスクのコピーをサポートしていません。MCSがカタログをプロビジョニングする場所以外のリージョンでイメージを選択すると、そのイメージはカタログ領域の従来のストレージアカウントのVHDにコピーされ、Managed Disksに変換されて戻されます。

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

Azure Resource Managerへの接続の作成

接続を作成するウィザードについて詳しくは、「接続とリソース」を参照してください。以下の情報は、Azure Resource Managerの接続に固有の詳細を扱っています。

注意事項:

  • サービスプリンシパルには、サブスクリプションの投稿者の役割が付与されている必要があります。
  • 最初の接続を作成するときに、必要な権限付与を求めるプロンプトがAzureで表示されます。その後の接続でも認証は必要ですが、Azureでは以前の同意が記憶され、このプロンプトは再表示されません。
  • 認証に使用されるアカウントは、サブスクリプションの共同管理者である必要があります。
  • 認証に使用されるアカウントは、サブスクリプションのディレクトリのメンバーである必要があります。注意すべき2つのタイプのアカウントがあります。「職場または学校」と「個人用Microsoftアカウント」です。詳しくは、CTX219211を参照してください。
  • 既存のMicrosoftアカウントは、サブスクリプションのディレクトリのメンバーとして追加することで使用できますが、ユーザーが以前にそのディレクトリのリソースのいずれかへのゲストアクセスを許可されている場合は、複雑になる可能性があります。この場合、必要な権限を与えないディレクトリにプレースホルダーエントリが存在し、エラーが返されることがあります。これを修正する1つの方法は、ディレクトリからリソースを削除して、明示的に追加し直すことです。ただし、そのアカウントがアクセスできる他のリソースに対して意図しない影響を与える可能性があるため、このオプションは注意深く実行してください。
  • 特定のアカウントが実際にメンバーであるときにディレクトリゲストとして検出されるという既知の問題があります。これは、通常、古い確立済みのディレクトリアカウントで発生します。回避策:新しいアカウントをディレクトリに追加します。これにより適切なメンバーシップ値が取得されます。
  • リソースグループはリソースのコンテナにすぎず、そのリージョン以外のリージョンのリソースを含む場合があります。これが原因で、リソースグループのリージョンに表示されているすべてのリソースを利用できると期待した場合に、混乱を招く可能性があります。
  • ネットワークとサブネットが、必要な数のマシンをホストするのに十分な大きさであることを確認してください。これには多少先見の明が必要かもしれませんが、Microsoftが、アドレススペースの容量に関するガイダンスを示して、適切な値を指定できるようサポートします。

Azure Resource Managerへのホスト接続を確立するには、次の2通りの方法があります。

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

Azure Resource Managerを認証して新しいサービスプリンシパルを作成する

始める前に、以下の項目について確認してください。

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

サイトのセットアップまたは接続およびリソースの追加ウィザードで以下を行います。

  1. [接続] ページで、接続の種類に [Microsoft Azure] を選択します。お使いのAzure Cloud環境を選択します。
  2. [接続の詳細] ページで、AzureサブスクリプションIDと接続の名前を入力します。接続名に指定できる文字数は1~64文字であり、空白スペースのみにしたり英数字以外の文字を含めたりすることはできません。サブスクリプションIDおよび接続名を入力すると、[新規作成]ボタンが有効になります。
  3. Azure Active Directoryアカウントのユーザー名とパスワードを入力します。
  4. [サインイン]をクリックします。
  5. [承認] をクリックして、表示された権限をCitrix Virtual Apps and Desktopsに付与します。Citrix Virtual Apps and Desktopsによって、指定されたユーザーの代わりにAzure Resource Managerリソースを管理することを許可するサービスプリンシパルが作成されます。
  6. [承認]をクリックすると、Studioの[接続]ページに戻ります。Azureの認証が完了すると、[新規作成]および[既存を使用]ボタンが[接続済み]に置き換わり、Azureサブスクリプションへの正常な接続を示す緑色のチェックマークが表示されます。
  7. 仮想マシンの作成にどのツールを使用するかを指定し、[次へ]をクリックします。(Azureの認証が完了し、必要な権限の付与を承認しない限り、ウィザードのこのページより先に進むことはできません)。
  8. リソースには領域とネットワークが含まれます。[リージョン]ページで領域を選択します。[ネットワーク]ページで以下の設定を行います。
    • 1~64文字のリソース名を入力して、Studioで領域とネットワークの組み合わせを特定できるようにします。リソース名を空白スペースのみにすることはできず、英数字以外の文字を含めることもできません。
    • 仮想ネットワークとリソースグループのペアを選択します(複数の仮想ネットワークを同じ名前にすることが可能なため、ネットワーク名とリソースグループをペアリングすると一意の組み合わせになります)。前のページで仮想ネットワークのない領域を選択した場合は、前のページに戻って仮想ネットワークのある領域を選択する必要があります。
  9. ウィザードを完了します。

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

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

前提条件:

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

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

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

    Login-AzureRmAccount

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

    Select-AzureRmSubscription -SubscriptionID $SubscriptionId

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

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

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

    New-AzureRmADServicePrincipal -ApplicationId $AzureADApplication.ApplicationId

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

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

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

サイトのセットアップまたは接続およびリソースの追加ウィザードで以下を行います。

  1. [接続] ページで、接続の種類として [Microsoft Azure] を選択し、Azure環境を選択します。
  2. [接続の詳細] ページで、AzureサブスクリプションIDと接続の名前を入力します。接続名に指定できる文字数は1~64文字であり、空白スペースのみにしたり英数字以外の文字を含めたりすることはできません。
  3. [既存を使用]をクリックします。サブスクリプションID、サブスクリプション名、認証URL、管理URL、ストレージのサフィックス、Active Directory IDまたはテナントID、アプリケーションID、および既存のサービスプリンシパルのアプリケーションシークレット。詳細を入力すると、[OK]ボタンが有効になります。[OK] をクリックします。
  4. 仮想マシンの作成にどのツールを使用するかを指定し、[次へ]をクリックします。入力したサービスプリンシパルの詳細は、Azureサブスクリプションへの接続に使用されます([既存を使用] オプションで有効な詳細を入力しない限り、ウィザードの次のページに進めません)。
  5. リソースには領域とネットワークが含まれます。[リージョン]ページで領域を選択します。[ネットワーク]ページで以下の設定を行います。
    • 1~64文字のリソース名を入力して、Studioで領域とネットワークの組み合わせを特定できるようにします。リソース名を空白スペースのみにすることはできず、英数字以外の文字を含めることもできません。
    • 仮想ネットワークとリソースグループのペアを選択します(複数の仮想ネットワークを同じ名前にすることが可能なため、ネットワーク名とリソースグループをペアリングすると一意の組み合わせになります)。前のページで仮想ネットワークのない領域を選択した場合は、前のページに戻って仮想ネットワークのある領域を選択する必要があります。
  6. ウィザードを完了します。

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

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

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

Studioでのマシンカタログを作成する場合は、以下を確認してください。

  • [オペレーティングシステム] ページと [マシン管理] ページには、Azure固有の情報は含まれていません。「マシンカタログの作成」のガイダンスに従ってください。
  • [マスターイメージ] ページで、リソースグループを選択してからコンテナー内を移動(ドリルダウン)して、マスターイメージとして使用するAzure VHDに移動します。VHDにはCitrix VDAがインストールされている必要があります。仮想マシンにVHDが接続されている場合、仮想マシンを停止する必要があります。
  • [ストレージとライセンスの種類] ページは、Azure Resource Managerマスターイメージを使用しているときのみ表示されます。

    ストレージの種類(StandardまたはPremium)を選択します。ストレージの種類は、ウィザードの仮想マシンページで提供されるマシンのサイズに影響します。これらのストレージの種類はどちらも、単一のデータセンター内でデータの複数の同期コピーを作成します。Azureのストレージの種類およびストレージの複製について詳しくは、以下のドキュメントを参照してください。

    既存のオンプレミスのWindows Serverライセンスを使用するかどうかを選択します。既存のオンプレミスのWindows Serverイメージを使用する場合にそのように選択すると、Azure Hybrid Use Benefits(HUB)が利用されます。詳細: https://azure.microsoft.com/pricing/hybrid-use-benefit/

    HUBを使用すると、AzureギャラリーからWindows Serverライセンスを追加する価格が不要になるため、Azureでの仮想マシン実行のコストがベース計算レートまで低下します。HUBを使用するためのオンプレミスのWindows ServersイメージをAzureに用意する必要があります。Azureギャラリーのイメージはサポートされません。オンプレミスのWindows Clientライセンスは、現在サポートされていません。参照: https://blogs.msdn.microsoft.com/azureedu/2016/04/13/how-can-i-use-the-hybrid-use-benefit-in-azure/

    プロビジョニングされた仮想マシンがHUBを正常に利用しているかどうか確認するには、PowerShellコマンドGet-AzureRmVM -ResourceGroup MyResourceGroup -Name MyVMを実行し、ライセンスの種類がWindows_Serverであることを確認します。詳しくは、次を参照してください: https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-hybrid-use-benefit-licensing/

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

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

  • (MCSを使用する場合)[リソースグループ]ページで、新しいリソースグループを作成するか、既存のグループを使用するかを選択します。

    新しいリソースグループを作成する場合は、[次へ]をクリックします。

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

    詳しくは、以下の「Azureリソースグループ」セクションを参照してください。

  • [ネットワークカード]ページ、[コンピューターアカウント]ページ、および[概要]ページには、Azure固有の情報は含まれていません。「マシンカタログの作成」のガイダンスに従ってください。

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

マシンカタログを削除する

Azure Resource Managerマシンカタログを削除した時に、関連するマシンとリソースグループを保持するように指定しても、Azureから削除されます。

Azureリソースグループ

Azureプロビジョニングのリソースグループは、アプリケーションとデスクトップをユーザーに提供するVMをプロビジョニングする方法を提供します。StudioでMCSマシンカタログを作成するときに既存の空のAzureリソースグループを追加するか、新しいリソースグループを作成することができます。

Azureリソースグループについて詳しくは、「Azure Resource Managerの概要」を参照してください。

要件

  • 各リソースグループは、最大240のVMを保持できます。カタログを作成するリージョンには、十分な数の空のリソースグループがなければなりません。マシンカタログを作成するときに既存のリソースグループを使用する場合は、カタログに作成されるマシンの数を収容するのに十分な数の使用可能なグループを選択する必要があります。たとえば、カタログ作成ウィザードで500台のマシンを指定する場合は、少なくとも3つの使用可能なプロビジョニングリソースグループを選択します。

    マシンカタログが作成された後、そのカタログにリソースグループを追加することはできません。したがって、後でカタログに追加する可能性のあるマシンを収容するのに十分な数のリソースグループを追加しておいてください。

  • ホスト接続と同じリージョンに空のリソースグループを作成します。
  • MCSカタログごとに新しいリソースグループを作成する場合は、ホスト接続に関連付けられているAzureサービスプリンシパルに、リソースグループの作成と削除ができる権限が必要です。既存の空のリソースグループを使用する場合は、ホスト接続に関連付けられているAzureサービスプリンシパルに、それらの空のリソースグループでの投稿者の権限が必要です。
  • [新規作成] オプションを使用してStudioでホスト接続を作成すると、作成したサービスプリンシパルにサブスクリプションスコープの投稿権限が設定されます。または、[既存を使用]オプションを使用して接続を作成し、既存のサブスクリプションスコープのサービスプリンシパルの詳細を指定することもできます。[新規作成] オプションを使用してStudioでサービスプリンシパルを作成する場合、新しいリソースグループの作成と削除、または既存の空のリソースグループへのプロビジョニングに必要な権限が設定されます。
  • スコープが狭いサービスプリンシパルは、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での更新がStudioに反映されるまで最大10分かかることがあります)。

Studioでマシンカタログのリソースグループを構成する

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

マシンカタログを削除したときのリソースグループへの影響:

  • マシンカタログを作成するときにCitrix Virtual Apps and Desktopsで新しいリソースグループを作成した場合は、その後でそのカタログを削除すると、それらのリソースグループとそれらのリソースグループ内のすべてのリソースも削除されます。

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

注意事項、制限事項、およびトラブルシューティング

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

1つのリソースグループは、1つのマシンカタログでのみ使用する必要があります。ただし、これは強制されません。たとえば、カタログを作成するときに10個のリソースグループを選択しましたが、カタログに1台のマシンしか作成しなかったとします。選択したリソースグループのうち9つは、カタログの作成後も空のままです。それらのリソースグループは、将来の容量拡張時に使用するかもしれないので、そのカタログに関連付けられたまま残されます。カタログが作成された後、カタログにリソースグループを追加することはできないため、将来の拡張について計画する必要があります。ただし、別のカタログが作成された場合、これらの9つのリソースグループが使用可能な一覧に表示されます。現在、Citrix Virtual Apps and Desktopsでは、どのリソースグループがどのカタログに割り当てられているかを把握していません。それを監視するのは管理者の責任です。

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

トラブルシューティング:

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

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

  • 以前に作成したマシンカタログにマシンを追加する場合、すべてのマシンがプロビジョニングされません。

    カタログを作成した後でカタログにマシンを追加する場合は、最初にそのカタログ用に選択したリソースグループのマシン容量(グループあたり240個)を超えないようにしてください。カタログが作成された後にリソースグループを追加することはできません。既存のリソースグループが収容できる以上のマシンを追加しようとすると、プロビジョニングが失敗します。

    たとえば、300のVMと2つのリソースグループを持つマシンカタログを作成したとします。リソースグループは、最大480のVM(240 * 2)を収容できます。後で200のVMをカタログに追加しようとすると、リソースグループの容量を超えます(現在の300のVM + 200の新しいVM = 500ですがリソースグループは480しか保持できません)。

詳細情報の表示