JavaScriptを有効にしてください

Azure Portal 対応の Azure VM Image Builder を試し隊

 ·   5 分で読めます  ·   Kento

今回は、Azure Image Builder が Azure Portal 対応したというニュースを聞いて、早速試してみました
Azure Image Builder Portal Functionality now available | Azure の更新情報 | Microsoft Azure

Azure Image Builder とは

Azure Image Builder とは、仮想マシンのカスタム イメージを簡単に作成できるサービスです
Azure Marketplace や既存のカスタムイメージをベースにして、自分の必要なカスタマイズを追加した仮想マシン イメージの作成ができます
Image Builder の利用方法としては

  • 既存のイメージに Windows Update を当てて、○月版 イメージを作成する
  • めんどくさい 日本語化した Windows Client イメージの作成を自動化する

などがあります

作成したイメージは、Azure Compute Gallery やマネージドイメージ、VHD として保存できます
以前にも試していたんですが、今回はカスタマイズの内容を Azure Portal から試すことができるようになったので、試してみました
以前の記事↓
Azure VM Image Builder で 日本語化を楽し隊 | クラウドを勉強し隊

Azure Portal 対応って?

Azure Image Builder は、イメージの情報 (ベースとなるイメージ、カスタマイズ内容、エクスポート先など)を JSON ファイルを使って、Azure に渡します
これまでは、PowerShell や Azure CLI などのツールを使って、JSON ファイルを作成して実行する必要がありました
しかし、最近のアップデートで、Azure Portal から作成して実行できるようになりました。

Azure Portal 対応を試してみた

Azure Portal から Azure Image Builder を使うには、まず Azure Image Builder のリソースを作成し、それを実行する流れになります。
細かいオプションはいろいろありますが、今回は以下の内容を試します

ベースとなる仮想マシンイメージ Azure Marketplace にある AVD 用の Windows 11
エクスポート先 Azure Compute Gallery
カスタマイズ内容 日本語の言語パックのインストール

マネージドID の作成

Image Builder に作業させるために権限を与える必要があります
そのための ID を発行します
※正確な言い方ではないですが、雰囲気を察していただければ

portal01
マネージド ID の作成01:

portal02
マネージド ID の作成02:

マネージド ID に権限を付与

作成したマネージド ID に権限を付与します
必要な権限については公開情報を見てください
Azure CLI を使用して Azure VM Image Builder のアクセス許可を構成する - Azure Virtual Machines | Microsoft Learn
今回は上記のサイトで引用されているサンプルを参考にします
https://raw.githubusercontent.com/azure/azvmimagebuilder/master/solutions/12_Creating_AIB_Security_Roles/aibRoleImageCreation.json

  1. 今回使うリソース グループに移動します

  2. アクセス制御 > [カスタム ロールの追加] を選択します

    portal03
    カスタムロールの作成01:

  3. カスタム ロール名に適当なものを入力します

  4. ベースラインのアクセス許可で [最初から始める] を選択します

    portal04
    カスタムロールの作成02:

  5. [アクセス許可の追加] からgallery を検索し、Compute を選択します

  6. 以下の権限を選択し、作成します

    • 読み取り: Get Gallery
    • 読み取り: Get Gallery Image
    • 読み取り: Get Gallery Image Version
    • 書き込み: Create or Update Gallery Image Version
    • 読み取り: イメージの取得
    • 書き込み: イメージの作成または更新
    • 削除: イメージの削除

portal05
カスタムロールの作成03:

portal06
カスタムロールの作成04:

  1. 作成した権限を マネージド ID に割り当てます
    portal07
    カスタムロールの作成05:

Azure Image Builder リソースの作成

  1. Azure Portal でイメージ テンプレートを検索し、[+ 作成] を選択

    portal08
    Azure Image Builder リソースの作成01:

  2. リソース名やリージョン、ソースとなるイメージやカスタマイズの内容、出力先などを選択
    ※ソースとなるイメージは、Azure Marketplace の Windows や Linux のイメージや、自分でアップロードした VHD やマネージドイメージが使えます

    portal09
    Azure Image Builder リソースの作成02:

  3. エクスポート先を選択します。Compute Gallery やマネージドイメージ、VHD のいずれかを選べます
    必須部分だけ入力しています

    portal10
    Azure Image Builder リソースの作成03:

    portal11
    Azure Image Builder リソースの作成04:

  4. カスタマイズの内容は、シェルコマンドや PowerShell コマンドなどを指定できます
    またイメージ作成時に実行する仮想マシンのサイズを選択することもできます
    ※トラステッド起動 などに対応したイメージを作成するときは、仮想マシンのサイズに気を付けてください
    カスタマイズ内容は以前の記事を見てください
    Azure VM Image Builder で 日本語化を楽し隊 | クラウドを勉強し隊
    https://raw.githubusercontent.com/NakayamaKento/azureimagebuilder/main/AVD/Installlanguagepack.ps1

    portal12
    Azure Image Builder リソースの作成05:

  5. ここまでの内容が設定出来たら検証し、テンプレートファイルを作成します

この時点ではまだイメージは作成されません

イメージ テンプレートの実行

テンプレートファイルを作成したら、そのファイルを実行してイメージのビルドを開始します
ビルドには数分から数十分かかります(リソース グループ、仮想ネットワーク、仮想マシンなどのリソース作成、sysprep とイメージ作成が自動で実行されます)
ビルドが完了したら、出力先に指定した場所にカスタムイメージが保存されます(今回は1時間程度で作業が完了していました)

portal13
Azure Image Builder の実行:

確認

作成されたイメージを基に仮想マシンを作成し、RDP してみます
無事に日本語化されていることが確認できました!

portal14
Azure Image Builder の実行結果01:

portal15
Azure Image Builder の実行結果02:

まとめ

以前に Image Builder の記事を書いたときは、JSON で書かないといけなく、イメージソースや、カスタム内容が難しかったですが、GUI になったことで非常にとっつきやすくなったんじゃないかなと思います

共有

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