カスタム イメージ テンプレートを使用して、Azure Virtual Desktop でカスタム イメージを作成する

Azure Virtual Desktop のカスタム イメージ テンプレートを使用すると、セッション ホスト仮想マシン (VM) をデプロイするときに使用できるカスタム イメージを簡単に作成できます。 カスタム イメージを使用すると、組織のセッション ホスト VM の構成を標準化するのに役立ちます。 カスタム イメージ テンプレートは Azure Image Builder 上に作成され、Azure Virtual Desktop に合わせて調整されます。

この記事では、カスタム イメージ テンプレートを作成し、そのテンプレートを使用してカスタム イメージを作成する方法について説明します。 詳しくは、「カスタム イメージ テンプレート」を参照してください。

前提条件

カスタム イメージ テンプレートを作成する前に、次の前提条件を満たす必要があります。

  • サブスクリプションに登録された次のリソース プロバイダー。 登録状態を確認する方法と、必要に応じて登録する方法については、「Azure リソース プロバイダーと種類」を参照してください。

    • Microsoft.DesktopVirtualization
    • Microsoft.VirtualMachineImages
    • Microsoft.Storage
    • Microsoft.Compute
    • Microsoft.Network
    • Microsoft.KeyVault
  • カスタム イメージ テンプレートとイメージを保存するリソース グループ。 Azure Image Builder で使用する独自のリソース グループを指定する場合、イメージのビルドが開始される前に、空である必要があります。

  • ユーザー割り当てマネージド ID。 カスタム イメージ テンプレートで使用するための専用のものを作成することをお勧めします。

  • "アクション" として次のアクセス許可を持つ Azure ロールベースのアクセス制御 (RBAC) でカスタム ロールを作成します

    "Microsoft.Compute/galleries/read",
    "Microsoft.Compute/galleries/images/read",
    "Microsoft.Compute/galleries/images/versions/read",
    "Microsoft.Compute/galleries/images/versions/write",
    "Microsoft.Compute/images/write",
    "Microsoft.Compute/images/read",
    "Microsoft.Compute/images/delete"
    
  • マネージド ID にロールを割り当てます。 これは、デプロイに合わせて適切にスコープを (理想的には、ストア カスタム イメージ テンプレートを使用するリソース グループに) 設定する必要があります。

  • "省略可能": イメージを Azure Compute Gallery に配布する場合は、Azure Compute Gallery を作成してから、VM イメージ定義を作成します ギャラリーで VM イメージ定義を作成する場合は、作成するイメージの "世代" ("第 1 世代" または "第 2 世代") を指定する必要があります。 ソース イメージとして使用するイメージの生成は、VM イメージ定義で指定された世代と一致する必要があります。 この段階では、"VM イメージ バージョン" を作成しないでください。 これは、Azure Virtual Desktop によって行われます。

  • "省略可能": イメージを構築するときに、既存の仮想ネットワークを使用できます。 その場合、使用しているマネージド ID には、仮想ネットワークまたはその中に含まれるリソース グループへのアクセス権が必要です。 詳細については、「仮想ネットワーク上のイメージをカスタマイズするためのアクセス許可」を参照してください。

    この仮想ネットワークが "プライベート サービス ポリシー" を使用している場合、Azure Image Builder を正しく動作させるためには、これを無効にする必要があります。 詳細については、「サブネットでプライベート サービス ポリシーを無効にする」を参照してください。

カスタム イメージを作成する

カスタム イメージの作成は 2 つの部分で構成されます。 まず、カスタム イメージ テンプレートを作成する必要があります。次に、カスタム イメージ テンプレートを使用してイメージをビルドする必要があります。

カスタム イメージ テンプレートを作成する

Azure ポータルを使用してカスタム イメージを作成するには:

  1. Azure portal にサインインします。

  2. 検索バーに「Azure Virtual Desktop」と入力し、一致するサービス エントリを選択します。

  3. [Custom image templates](カスタム イメージ テンプレート) を選択し、[カスタム イメージ テンプレートの追加] を選択します。

  4. [基本] タブで次の情報を入力します。

    パラメーター 値/説明
    テンプレート名 カスタム イメージ テンプレートの名前を入力します。
    既存のテンプレートからのインポート 新しいテンプレートの基礎として使用する既存のカスタム イメージ テンプレートがある場合は、[はい] を選択します。
    サブスクリプション リストから使用するサブスクリプションを選択します。
    Resource group 既存のリソース グループを選択します。
    場所 カスタム イメージ テンプレートを作成するリージョンを一覧から選択します。
    マネージド ID カスタム イメージ テンプレートの作成に使用するマネージド ID を選択します。

    このタブに入力し終わったら、[次へ] を選択します。

  5. [ソース イメージ] タブの [ソース タイプ] で、いずれかのオプションからテンプレートのソースを選択し、そのソースの種類の他のフィールドに入力します。

    • [プラットフォーム イメージ (マーケットプレース)] には、Azure Marketplace で入手可能な Azure Virtual Desktop の イメージの一覧が表示されます。

      パラメーター 値/説明
      イメージの選択 一覧から使うイメージを選びます。 イメージの世代が表示されます。
    • [マネージド イメージ] には、[基本] タブで選択したのと同じサブスクリプションと場所内のマネージド イメージの一覧が表示されます。

      パラメーター 値/説明
      [イメージ ID] 一覧から使用するイメージ ID を選択します。 イメージの世代が表示されます。
    • [Azure Computer Gallery] には、Azure Compute Gallery に含まれるイメージ定義の一覧が表示されます。

      パラメーター 値/説明
      ギャラリー名 使用するソース イメージを含む Azure Compute Gallery を一覧から選択します。
      ギャラリー イメージの定義 使用するギャラリー イメージを一覧から選択します。
      ギャラリー バージョン 使用するギャラリー バージョンを一覧から選択します。 イメージの世代が表示されます。

    このタブに入力し終わったら、[次へ] を選択します。

  6. [配布ターゲット] タブで、マネージド イメージ、Azure Compute Gallery イメージ、またはその両方を作成するかどうか、関連するボックスをオンにします。

    • マネージド イメージの場合は、次の情報を入力します。

      パラメーター 値/説明
      Resource group マネージド イメージの一覧から既存のリソース グループを選択します。

      [基本] タブで選択したものとは別のリソース グループを選択した場合は、マネージド ID に同じロールの割り当てを追加する必要もあります。
      イメージ名 一覧から既存のマネージド イメージを選択するか、[マネージド イメージの作成] を選択します。
      場所 マネージド イメージの一覧から Azure リージョンを選択します。
      実行の出力名 イメージの実行の出力名を入力します。 これは、フリー テキスト フィールドです。
    • Azure Computer Gallery の場合は、次の情報を入力します。

      パラメーター 値/説明
      ギャラリー名 イメージを配布する Azure Compute Gallery を一覧から選択します。
      ギャラリー イメージの定義 使用するギャラリー イメージを一覧から選択します。
      ギャラリー イメージ バージョン "省略可能": イメージのバージョン番号を入力します。 値を入力しない場合は、自動的に生成されます。
      実行の出力名 イメージの実行の出力名を入力します。 これは、フリー テキスト フィールドです。
      Replicated regions (レプリケートされたリージョン) イメージを保存およびレプリケートする Azure リージョンを選択します。 カスタム イメージ テンプレートに対して選択したリージョンが自動的に選択されます。
      Excluded from latest (最新から除外) VM の作成時に ImageReference 要素のバージョンとして latest を指定した場所でこのイメージ バージョンが使用されないようにするには、[はい] を選択します。 それ以外の場合は、 [いいえ] を選択します。

      後でこれを変更する場合は、「ギャラリーのリソースを一覧表示、更新、削除する」を参照してください。
      ストレージ アカウントの種類 一覧からストレージ アカウントの種類冗長性を選択します。

    このタブに入力し終わったら、[次へ] を選択します。

  7. [ビルドのプロパティ] タブで、次の情報を入力します。

    パラメーター 値/説明
    ビルドのタイムアウト (分) イメージ テンプレートの構築中 (すべてのカスタマイズ、検証、配布を含む) に待機する最大期間を入力します。

    言語パックのインストールや Windows 最適化の構成などのカスタマイズには、Windows Update が必要であるため、高いビルド タイムアウト値を設定することをお勧めします。 これらの組み込みスクリプトに対して Windows Update が自動的にトリガーされます。
    ビルド VM サイズ テンプレートをビルドするために作成および使用される一時的な VM のサイズを選択します。 ソース イメージの世代と一致する VM サイズを選択する必要があります。
    OS ディスク サイズ (GB) マネージド ID を割り当てたリソース グループを選択します。

    または、マネージド ID をサブスクリプションに割り当てた場合は、ここで新しいリソース グループを作成できます。
    ステージング グループ Azure Image Builder によってイメージの作成に必要な Azure リソースを作成するために使用される新しいリソース グループの名前を入力します。 これを空白のままにすると、Azure Image Builder によって独自の既定のリソース グループが作成されます。
    ビルド VM マネージド ID ビルド VM が他の Azure サービスで認証されるようにする場合は、ユーザー割り当てマネージド ID を選択します。 詳細については、「Image Builder ビルド VM のユーザー割り当て ID」を参照してください。
    仮想ネットワーク テンプレートのビルドに使用する VM の既存の仮想ネットワークを選択します。 既存の仮想ネットワークを選択しない場合、一時的な仮想ネットワークと一時的な VM のパブリック IP アドレスが作成されます。
    Subnet 既存の仮想ネットワークを選択する場合、一覧からサブネットを選択します。

    このタブに入力し終わったら、[次へ] を選択します。

  8. [カスタマイズ] タブで、組み込みスクリプトまたはイメージのビルド時に実行される独自のスクリプトを追加できます。

    組み込みスクリプトを追加するには:

    1. [組み込みスクリプトの追加] を選択します。

    2. 使用するスクリプトを一覧から選択し、必要な情報をすべて入力します。 組み込みのスクリプトには、必要に応じて再起動が含まれます。

    3. [保存] を選択します。

    独自のスクリプトを追加するには:

    1. [独自のスクリプトの追加] を選択します。

    2. スクリプトの名前と、スクリプトの Uniform Resource Identifier (URI) を入力します。 これは、GitHub、Web サービス、独自のストレージ アカウントなど、一般公開されている場所である必要があります。 ストレージ アカウントを使用するには、マネージド ID に適切な RBAC ロール (ストレージ BLOB データ閲覧者など) を割り当てる必要があります。

    3. [保存] を選択します。 追加する独自のスクリプトごとに、これらの手順を繰り返すことができます。

    スクリプトの実行順序を変更するには、[上に移動][下へ移動][先頭へ移動]、または [一番下へ移動] を選択します。 このタブに入力し終わったら、[次へ] を選択します。

  9. [タグ] タブで、リソースの整理に使用できる名前と値のペアを入力し、[次へ] を選択します。 AVD_IMAGE_TEMPLATE : AVD_IMAGE_TEMPLATE の既定のタグが自動的に作成されます。 詳細については、「リソースの名前付けとタグ付けの意思決定ガイド」を参照してください。

  10. [レビューと作成] タブで、デプロイ中に使用される情報をレビューし、[作成] を選択します。

ヒント

新しいテンプレートが表示されるまでに約 20 秒かかる場合があります。 [Custom images templates](カスタム イメージ テンプレート) で、[最新の情報に更新] を選択して状態を確認します。

イメージをビルドする

カスタム イメージ テンプレートが正常に作成されたら、カスタム イメージをビルドする必要があります。 Azure portal を使用してカスタム イメージを作成するには:

  1. [Custom images templates](カスタム イメージ テンプレート) で、ビルドするカスタム イメージ テンプレートのボックスをオンにします。

  2. [ビルドの開始] を選択します。 イメージのビルドが開始されます。 完了までにかかる時間は、組み込みスクリプトと独自のスクリプトが完了するまでにかかる時間によって異なります。

  3. [最新の情報に更新] を選択して、状態を確認します。 [ビルドの実行状態] を確認できるカスタム イメージ テンプレートの名前を選択すると、ビルドの状態の詳細を確認できます。

カスタム イメージを使用してセッション ホストを含むホスト プールを作成する

これでカスタム イメージが作成されたので、セッション ホスト VM を作成する際に使用できます。 Azure portal を使用して Azure Virtual Desktop からホスト プールとセッション ホストを作成する場合は、「ホスト プールを作成する」の手順に従います。 [仮想マシン] タブで、仮想マシンを追加する場合は、次の手順に従ってカスタム イメージを使用します。

  1. [イメージ] に対して、[すべてのイメージを表示] を選択します。

  2. [マイ アイテム] を選択します。

  3. [マイ イメージ] を選択してマネージド イメージの一覧を表示するか、[共有イメージ] を選択して Azure Compute Gallery のイメージの一覧を表示します。

    重要

    仮想マシンのサイズを選択する場合は、ソース イメージの世代と一致するサイズを選択する必要があります。

  4. カスタム イメージからホスト プールとセッション ホストを作成する手順を完了します。

次のステップ

Azure Virtual Desktop へ接続する