Azure Virtual Desktop のカスタム イメージ テンプレート

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

作成プロセス

カスタム イメージを作成するには、次の 2 つの部分があります。

  1. 結果のイメージに含める内容を定義するカスタム イメージ テンプレートを作成します。

  2. テンプレートを Image Builder に送信して、そのカスタム イメージ テンプレートからイメージAzureビルドします。

カスタム イメージ テンプレートは、ソース イメージ、配布ターゲット、ビルド プロパティ、カスタマイズの選択肢を含む JSON ファイルです。 イメージ ビルダー Azureこのテンプレートを使用してカスタム イメージを作成します。カスタム イメージは、ホスト プールの作成時または更新時にセッション ホストのソース イメージとして使用できます。 イメージを作成するときに、イメージ ビルダー Azure sysprep を使用してイメージを一般化する処理も行います。

カスタム イメージは、Azureコンピューティング ギャラリーまたはマネージド イメージまたはその両方として格納できます。 Azure コンピューティング ギャラリーを使用すると、カスタム イメージのリージョンレプリケーション、バージョン管理、共有を管理できます。 マネージド イメージの制限事項を確認するには、「Azureで一般化された VM のレガシ マネージド イメージを作成する」を参照してください。

ソース イメージは、Azure Virtual Desktop でサポートされている必要があり、次の場所から使用できます。

  • Azure Marketplace。
  • 既存のAzureコンピューティング ギャラリーの共有イメージ。
  • 既存のマネージド イメージ。
  • 既存のカスタム イメージ テンプレート。

Virtual Desktop を使用するときに最も一般的な機能と設定の一部を構成する、使用できる組み込みのスクリプトがいくつか追加Azure。 GitHub や Web サービスなど、一般公開されている場所でホストされている限り、独自のカスタム スクリプトをテンプレートに追加することもできます。 ビルドの期間を指定する必要があるため、スクリプトの完了に十分な時間を設定してください。 組み込みのスクリプトには、必要に応じて再起動が含まれます。

カスタム イメージ テンプレートに追加できる組み込みスクリプトの例を次に示します。

カスタム イメージの作成と配布時に、Azure Image Builder はユーザー割り当てマネージド ID を使用します。 Azure Image Builder では、このマネージド ID を使用して、リソース グループ、イメージのビルドに使用される VM、Key Vault、ストレージ アカウントなど、サブスクリプション内にいくつかのリソースを作成します。 VM には、追加した組み込みスクリプトまたは独自のスクリプトをダウンロードするためのインターネット アクセスが必要です。 組み込みのスクリプトは、https://github.com/Azure/RDS-TemplatesRDS-templates GitHub リポジトリに格納されます。

VM を既存の仮想ネットワークとサブネットに接続するかどうかを選択できます。これにより、その仮想ネットワークで使用可能な他のリソースに VM がアクセスできるようになります。 既存の仮想ネットワークを指定しない場合は、VM で使用するために一時的な仮想ネットワーク、サブネット、パブリック IP アドレスが作成されます。 ネットワーク オプションの詳細については、「VM Image Builder ネットワーク オプションのAzure」を参照してください。

リソース

カスタム イメージ テンプレートの作成時にリソース グループが作成されます。 既定の名前は IT_<ResourceGroupName>_<TemplateName>_<GUID> 形式であり、ビルド中に必要なリソースが格納されます。 これらのリソースのほとんどは一時的なもので、ストレージ アカウントを除き、ビルドの完了後に削除されます。

ストレージ アカウントでは、最大 3 つのコンテナーが作成されます。

  • シェル は、カスタム イメージ テンプレートにカスタマイズ スクリプトを含める場合に、カスタマイズ スクリプトが格納される場所です。

  • packerlogs には、guid という名前の 1 つ以上のフォルダーがあり、 customization.logというファイルが含まれています。 このファイルには、Image Builder で使用される Hashicorp Packer サービスからのすべての出力Azure含まれています。 これらの出力はいつでもダウンロードして、進行状況、エラー、完了状態を確認できます。

  • vhds は、マネージド イメージとして格納される前に、またはコンピューティング ギャラリーに格納される前に、結果の仮想ハード ディスク (VHD) ファイルAzure一時的に格納します。

テンプレートに関連付けられているリソース グループ IT_<ResourceGroupName>_<TemplateName>_<GUID> は、カスタム イメージが正常に作成された後に削除できます。ログは不要です。 イメージを含むリソース グループを削除すると、リソース グループも削除されます。

次の手順