Azure無料アカウントでWindows 11仮想デスクトップ(AVD)を構築|AVD作成 ゴールデンイメージ編

ポコぺん

近年、テレワークの普及やハイブリッドワークの定着により、場所を選ばずにデスクトップ環境へアクセスできるVDI(仮想デスクトップ基盤)やDaaSへの注目がますます高まっています。

中でも、Microsoftが提供するAzure Virtual Desktop(AVD)は、Windows 11を最も快適に、かつ柔軟に利用できるソリューションとして非常に人気があります。
しかし、「クラウドはコストが心配」「構築手順が複雑そう」と、二の足を踏んでいる方も多いのではないでしょうか?

そこで今回は、Azureの無料アカウント(無料クレジット)を活用して、実際にWindows 11の仮想デスクトップ環境を構築してみた過程を詳しくレポートします。


前回の記事では、Azure Virtual Desktop(AVD)を構築を行いました。
無事に仮想デスクトップに接続することはできたでしょうか?

さて、今回はいよいよ「ゴールデンイメージ編」に突入します!
「1台ずつ仮想デスクトップを作成するのは面倒…」「もっとスマートに展開したい!」そんな願いを叶える、AVD運用の要(かなめ)となるステップを一緒に攻略していきましょう!

はじめに

前回のおさらいと今回のこと

前回の「基本編」では、Azure無料アカウントを使ってAVD環境の「土台」となるインフラ部分を構築しました。
まずは、今回の作業を進めるために必要な要素が揃っているか、ざっとチェックしておきましょう。

また、ゴールデンイメージが必要な理由についても説明します。

基本編で構築した環境の確認

以下のリソースがAzure上に準備できている状態がスタートラインです。

  • リソースグループ: AVD関連の資材をまとめる箱
  • 仮想ネットワーク: 仮想デスクトップが通信するためのネットワーク
  • ホストプール: 仮想デスクトップを保存する箱
  • セッションホスト:仮想デスクトップの作成場所

なぜ「ゴールデンイメージ」が必要なのか?

「わざわざゴールデンイメージを作るなんて面倒…」と思うかもしれません。
しかし、実運用を考えると、この工程が「効率的」である理由が見えてきます。

もしゴールデンイメージを使わずに、10台、20台と仮想デスクトップを増やそうとすると…

  1. 1台ずつ仮想デスクトップを作成する
  2. 1台ずつWindowsの日本語化設定をする
  3. 1台ずつOfficeやブラウザをインストールする
  4. 1台ずつセキュリティ設定をする

……考えただけで気が遠くなりますよね。

「ゴールデンイメージ」とは、いわば「秘伝のタレ」を染み込ませた完成済みのマスターのことです。

  • 初期設定の共通化: 日本語化やアプリの導入を済ませた状態で保存。
  • 一括デプロイ: そのイメージをコピーするだけで、同じ環境の仮想デスクトップを何台でも短時間で展開可能。

今回は、この「最強の1台」を作り上げ、キャプチャ(保存)するまでの流れを詳しく解説していきます!

VMの一般化とイメージのキャプチャ

カスタマイズが終わった仮想マシンは、そのままでは「特定の1台」に過ぎません。
これを複数台に複製可能な「ゴールデンイメージ」にするには、Windows固有の識別情報(SID)を削除する「一般化」という作業が必要です。

この工程を間違えると、AVDの展開に失敗したり、OSの動作が不安定になったりするため、一つずつ丁寧に進めていきましょう。

Sysprep実行時の注意点

Windowsの一般化には、標準ツールの「Sysprep(システム準備ツール)」を使用します。
実行にあたっての重要なポイントは以下の通りです。

  • 「一般化」に必ずチェックを入れる:
    これを忘れると、複製したすべてのVMが同じIDを持ってしまい、ADへの参加などでエラーが発生します。
  • シャットダウンオプションを選択:
    Sysprep完了後は、即座にシャットダウンする必要があります。
    シャットダウン後にVMを起動してしまうと、一般化が解除されてしまい、最初からやり直しになるので注意してください。
  • Fatal Error(致命的なエラー)への対策:
    Windows Updateの保留中や、一部のストアアプリが原因でSysprepが失敗することがあります。
    実行前に一度再起動し、余計なアプリが動いていないことを確認しましょう。

実行コマンドの例: C:\Windows\System32\Sysprep\sysprep.exe を起動し、[システム OOBE (Out-of-Box Experience) に入る]、[一般化する] にチェック、[シャットダウン] を選択してOKをクリックします。

Sysprep実行前作業:リソースグループの作成

ゴールデンイメージを管理するリソースグループを事前に作成します。

1. Azureポータルの検索窓で「リソース グループ」を選び、「+作成」を選択。

2. [基本情報]の入力
 リソースグループ名を入力し、[レビューと作成]を選択。

3. 作成
 設定内容が表示されるため、内容を確認し問題がなければ「作成」を選択。

Sysprep実行前作業:スナップショットの取得

1. Azureポータルの検索窓で ゴールデンイメージ使用する仮想デスクトップを選択。
 また、作成していない場合は、前回のAVD作成 基本編を元に作成してください。
 ※起動している場合は、予め停止してください。

2. 左ペインの[設定]-[ディスク]を選択し、右ペインのOS ディスクの[ディスク名]を選択。

3. 右ペイン上の[+スナップショットの作成]を選択

4. 基本は、[名前]にイメージ名を入れ、[スナップショットの種類]に[フル]を選択

5. 暗号化・ネットワーク・詳細・タグは、デフォルトのまま「次」を選択

6. 設定内容が表示されるため、内容を確認し問題がなければ「作成」を選択

Sysprep実行

1. 仮想デスクトップにログイン
 仮想デスクトップの電源を入れて、「Webクライアント」や「Windows App」でログインする。

2. システムのプロパティ確認
 Powershellを起動し、「sysdm」を実行。
 ドメインに参加している場合は、ワークグループに変更する。

3. インストールアプリの一般化準備
 Sysprep前に、個別アプリの下記情報を削除する。
 ・固有の識別情報(SID)
 ・ドライバキャッシュ
 ・証明書
 ・個別アプリ(Teams、OneDriveなど)の個人用フォルダの削除

4. フォルダ削除
 Windowsのインストール、アップグレード、またはSysprep(システム準備ツール)実行時の詳細なログが記録されるシステムフォルダを削除する。

Remove-Item “C:\Windows\Panther*” -Recurse -Force -ErrorAction SilentlyContinue

5. Sysprep実行
 Powershellから下記コマンドを実行する。

C:\Windows\System32\Sysprep\sysprep.exe /generalize /oobe /shutdown

Sysprep実行エラー時の対応
 Sysprepコマンドの実行でエラーが出た時は、ログからエラー内容を確認して対応。
 その後、再度Sysprepを実行する。(またエラーが出たら、ログからエラー内容を確認・・・を繰り返す)

 <ログの確認コマンド>

notepad C:\Windows\System32\Sysprep\Panther\setuperr.log

6. ゴールデンイメージ用仮想マシンの停止
 (1) 左ペインの[概要]を選択して、ゴールデンイメージの状態が「停止済み」となっていることを確認する。
 (2) 右ペインの「停止」を選択して、状態が「停止済み (割り当て解除) 」となることを確認する。

ゴールデンイメージの作成

VMが正常にシャットダウンされたら、いよいよAzure上で「イメージ」として保存します。

1. 「イメージ」を実行
 ゴールデンイメージ用仮想デスクトップの[概要]から、右ペインの「キャプチャ」-「イメージ」を選択。

2. 「基本」の内容設定
 [リソース グループ]に「Sysprep実行前作業:リソースグループの作成」で作成したグループを指定。
 [ターゲット Azure コンピュート ギャラリー]は、[新規作成]を選択し新規に作成してください。

 豆知識:
  [イメージの作成後、この仮想マシンを自動的に削除します]のチェックを入れておくと、作業後に不要なファイルを削除する手間が省けます。

 [ターゲット VM イメージ定義]は、[新規作成]を選択し新規に作成してください。

 [バージョン番号]を入力し、[規定のストレージ SKU]に「Standard HDD LRS」を選択。
 設定に問題なければ「次:タグ」を選択します。

 豆知識:
  [既定のレプリカ数]の欄に、ターゲットリージョン[(US)East US]の行がありますが、この行は削除できません。
  USにレプリカを作成しない場合は・・・そのまま「次:タグ」を選択してください。意味不明ですね(笑)

3. 「タグ」の内容設定
 タグには、ゴールデンイメージのバージョン作成内容を記載すると良いかと思います。
 例:「新規作成」とか「xxアプリの更新」「xx月のWindowsパッチ適用」など。

4. 設定確認
 設定内容が表示されるため、内容を確認し問題がなければ「作成」を選択

注意:
 キャプチャが完了すると、元の仮想マシンは「一般化済み」としてマークされ、二度と起動できなくなります。
 今後マスターを更新する予定がある場合は、キャプチャ前にスナップショットを取っておくことを忘れずに!

出来上がったイメージの確認

イメージの作成が完了したら、作成状況を確認します。

1. Azureポータルの検索窓で 前回作成したVMイメージ定義を選び、左ペインの[概要]を選択。

2. 右ペイン下のバージョン一覧に作成したバージョンが表示されており、「最新バージョン」と表示されていることを確認。

作成したイメージからのAVD展開

「秘伝のタレ」であるカスタムイメージが完成したら、次はそのイメージを元にセッションホスト(ユーザーが実際に操作するVM)を作成します。

マーケットプレイスの標準イメージではなく、自分がカスタマイズしたイメージを選択するのが今回のポイントです。

ホストプールの作成

まずは、AVDの心臓部となる「ホストプール」を作成します。
ただし、今回は前回作成済みのホストプールを使用します。

ホストプールの作成画面からのホスト追加

1. Azureポータルの検索窓で 前回作成したホストプールを選び、左ペイン[管理]-[セッションホスト]を選択。

2. 右ペイン「+追加」を選択し、ホストを追加する。

3. 「基本」の内容設定

 「次へ:仮想マシン」を選択

4. 「仮想マシン」の設定内容

 [名前のプレフィックス]を入れ、[可用性オプション]に「インフラストラクチャ冗長は必要ありません」を選択。
 [イメージ]は、「すべてのイメージを表示」から、すでに作成済みのゴールデンイメージを「共有イメージ」の項目から選択。
 [仮想マシンのサイズ]は、ゴールデンイメージと同じ「Standard B2s v2」を選択。
 [VM数]は、「1」を入力。
 [参加するディレクトリを選択する]は、「Microsoft Entra ID」を選択。
 ※ほかの登録内容は、画像を確認してください。
 最後に「次へ:タグ」を選択。

[NOTE]
 ここで自分の作ったゴールデンイメージが出てこない場合は、リージョンが一致しているか、または「Azure Compute Gallery」への登録が正常に完了しているかを確認しましょう。

5. 「タグ」の内容設定
 なにも設定せずに「次へ:確認と作成」を選択。

6. 設定確認
 設定内容が表示されるため、内容を確認し問題がなければ「作成」を選択

アプリケーショングループにユーザの割り当て

最後に、作成したホストプールをユーザーが見える形にする「アプリケーション グループ」への紐付けを行います。

1. Azureポータルの検索窓で 前回作成したアプリケーション グループを選び、左ペイン[管理]-[割り当て]を選択。

2. [+追加]を選択し、仮想デスクトップを使用するユーザを選択します。

※前回の「ステップ5:ワークスペースとアプリケーショングループの紐付け」を参照。

これで、リモートデスクトップアプリやブラウザからログインすれば、「最初から日本語化され、必要なアプリが入った自分専用のデスクトップ」が立ち上がります!

動作確認とゴールデンイメージ管理のコツ

無事にプロビジョニング(展開)が完了したら、いよいよログインです。
作成したイメージが正しく反映されているかを確認し、今後の運用を楽にするための「ゴールデンイメージ管理」のルールを覚えておきましょう。

作成したカスタム環境が反映されているかチェック

リモートデスクトップ(RD)クライアントからログインし、以下のポイントをチェックします。

  • OSの日本語化: 設定を開かなくても、スタートメニューやタスクバーが最初から日本語になっているか。
  • プリインストールアプリ: ブラウザのブックマークや、業務に必要なツール(OfficeやVS Codeなど)がインストール済みで、すぐに使える状態か。
  • タイムゾーンと地域設定: 日本時刻(UTC+09:00)に正しく設定されているか。
  • ライセンスの状態: Windows 11 のライセンス認証が正常に行われているか。

[IMPORTANT]
 もし「日本語化されていない」「アプリが入っていない」といった場合は、キャプチャ前のSysprep直前で設定が漏れていた可能性があります。
 その場合は、イメージの作り直しが必要になるため、チェックリストを作っておくのがおすすめです。

ゴールデンイメージ更新時のワークフロー

「OSのアップデートを当てたい」「新しいソフトを追加したい」といった場面は必ずやってきます。
しかし、キャプチャした後のマスターVMは再起動できない仕様になっています。

そこで、ポコぺんlaboratory 流の効率的な更新ワークフローを紹介します。

1. スナップショットからゴールデンイメージ用仮想デスクトップのディスクを作成
 ① Azureポータルの検索窓で 前回作成したスナップショットを選び、一覧から前回取得したスナップショットを選択。
 ② [+ディスクの作成]を選びOSディスク情報を登録。

2. ディスクからゴールデンイメージ用仮想デスクトップを作成
 ① 作成したOSディスクを検索画面で検索。
 ② [+VMの作成]を選択。
 ※登録内容は、前回の「ステップ4:VMの展開」で登録した内容を参照。

3. アップデートの適用
 Windowsのパッチを適用したり、アプリのバージョンアップしたり、OS設定変更したり・・・を実施。

4. 「スナップショットの取得」「Sysprep実行」「AVD作成」
 以降は、この記事の「Sysprep実行」から「アプリケーショングループにユーザの割り当て」までを参照してください。

まとめ:ゴールデンイメージ化でAVD運用はどう変わる?

お疲れ様でした!
今回はAzure無料アカウント を最大限に活用し、AVD運用の心臓部ともいえる「ゴールデンイメージ」の作成に挑戦しました。

最後に、ゴールデンイメージ化によって運用が具体的にどう変わるのか、改めて整理しておきましょう。

項目手作業(1台ずつ設定)ゴールデンイメージ運用
展開スピード台数分だけ時間がかかる数クリックで一括デプロイ
品質の安定性設定漏れやミスが起きやすい常に同じ設定の環境を提供可能
アップデート全台にログインして適用が必要マスターを1回更新して再展開するだけ
日本語化の手間毎回地域設定や言語パックが必要最初から「日本語OS」として起動

このように、最初は少し手間がかかる「マスター作成」ですが、一度作ってしまえばその後の管理コストは劇的に下がります。
特に無料枠 を使って実験を繰り返す際には、「すぐに元の綺麗な状態に戻せる」「同じ環境を即座に作り直せる」という機動力は大きな武器になります。

今回までの構築にかかった費用

※画像はサブスクリプションのコスト分析から抜粋

次回予告:FSLogixでユーザープロファイルを永続化する

ゴールデンイメージによって「OSやアプリ」の共通化は完璧になりました。
しかし、このままでは一つ大きな課題が残っています。

それは、「ユーザーが保存したファイルや壁紙などの設定が、ログアウト(再展開)のたびに消えてしまう」ということ。

次回は、この問題を解決する救世主「FSLogix」を導入します。
どれだけVMを使い捨てにしても、ログインすればいつもの自分のデスクトップが戻ってくる――そんな魔法のような設定を、Azure無料アカウント の範囲内で実現していきましょう!

それでは、次回の「ポコぺんlaboratory」でお会いしましょう!

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトは reCAPTCHA によって保護されており、Google のプライバシーポリシー および 利用規約 に適用されます。

reCaptcha の認証期間が終了しました。ページを再読み込みしてください。

ABOUT ME
ポコぺん
ポコぺん
ぷぅ
北海道在住のITエンジニア。

システム構築および運用・保守を経験。
ESXi、Azure、Proxmox VEについて基礎的な理解あり。
C系言語、PowerShellスクリプト、Excelマクロなどを少々扱う。
記事URLをコピーしました