JavaScriptを有効にしてください

Azure VM Image Builder で 日本語化を楽し隊

 ·   3 分で読めます  ·   Kento

アドベントカレンダー初参戦です!(1日遅れました。。)
Microsoft Azure Techのカレンダー | Advent Calendar 2022 - Qiita
今回は Azure VM のイメージを作成する Azure Image Builder で日本語化したイメージを作成します

Azure Image Builder とは

Azure Image Builder は名前の通りイメージを作成するサービスです通常のイメージ作成の手順は以下の通りです

  1. VM を作成
  2. 必要な設定を行う
  3. sysprep で一般化
  4. Disk からイメージ作成

Azure Marketplace で提供されている OS イメージは英語 OS です
そのため Azure Virtual Desktop を日本語話者向けに提供する場合、日本語化したイメージを準備します
今回はこれを Image Builder で実装します

注意点

Windows 10/11 には今年の夏ごろに言語パックを PowerShell でインストールできるコマンドレットが追加されています
Install-Language (LanguagePackManagement) | Microsoft Learn

今回はそのコマンドレットを使用するため、LTSC や古いバージョンのOSだと実行できない可能性があります

手順

大まかな手順は以下の通りです

  1. リソースグループの作成
  2. Image を管理する Azure Compute Gallery の作成
  3. Image Builder で利用するマネージド ID の作成
  4. Image 作成のテンプレートの作成
  5. テンプレートの実行

実際の手順は PowerShell スクリプトを用意しました
azureimagebuilder/AVD at main · NakayamaKento/azureimagebuilder · GitHub

イメージを作る際のカスタマイズする内容は localize.json に記載しています
こちらの記事をベースにカスタムする内容を作成しました
AVD ARM 日本語化イメージ作成手順について - Windows 11 | Microsoft Japan Windows Technology Support Blog

Image builder テンプレートの書き方

Image Builder を実行するにはイメージ化に伴って実行するカスタム内容を記述する必要があります
これは json 形式で記述して、特に大事なのは3つのプロパティです
詳細は公開情報を確認していただきたいですが、ざっくり説明は下記のとおりです
Azure Image Builder Bicep ファイルまたは ARM (JSON) テンプレートを作成する - Azure Virtual Machines | Microsoft Learn

  • source : カスタムする基となる イメージがどれなのか
  • customize : sysprep を実施前に行う作業内容
  • distribute : 作成したイメージの出力場所

これら以外にも sysprep を実施する VM のサイズなどもありますが、一度作成したらあまり変更する箇所ではないので割愛します
今回は Winodws 11 22H2 を使いました
Windows 11 は要件にセキュアブート、TPM が必要になります
今回はそれを満たせるような VM サイズや Compute Gallery のパラメータを意識しています

検証

Azure Cloudshell を立ち上げて AIBscript.ps1 を実行して待つだけです
イメージの作成完了まででだいたい 40分くらいかかりました
AVD のセッションホストに作成したイメージを使ってデプロイしてみました
作成した VM をみるとちゃんとカスタムイメージが使えています
接続してみると、うまく日本語化ができいそうです

portal01
イメージを利用して作成した VM:

portal02
VM のアクセス (AVD) :

まとめ

夏~秋のどこかのタイミングで PowerShell で言語パックをインストールできるようになったのが大きいです!!!
これでめんどくさい画面ポチポチしてイメージ作成がなくなればいいなと思います

共有

Kento
著者
Kento
2020年に新卒で IT 企業に入社. インフラエンジニア(主にクラウド)として活動中