Azureコンピューティングギャラリーで正式に利用可能になった「VMアプリケーション」は、Microsoft Azureのパブリックイメージやカスタムイメージ(WindowsまたはLinux)へのアプリケーションのデプロイを自動化したり、既存の仮想マシンに拡張機能のようにアプリケーションを追加または削除したりできます。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
アプリケーションのインストールを含む定義済みのカスタム仮想マシン(VM)イメージを作成してAzure仮想マシンのデプロイに利用することは、同一構成の仮想マシンを素早くデプロイする方法の一つです。
しかし、アプリケーションのインストールを含む仮想マシンイメージは、OSやアプリケーションのバージョンが新しくなるたびに、イメージを更新(更新して「Sysprep」ツールで再び汎用《はんよう》化、または再作成)しないと、イメージが古くなってしまい、デプロイ後の更新作業に時間がかかってしまうことになります。
Microsoftは2022年7月26日(米国時間)、「Azureコンピューティングギャラリー(Azure Compute Gallery)」(旧称、Shared Image Gallery)で「VMアプリケーション」が正式に利用可能になったことを発表しました。
VMアプリケーションは、仮想マシンイメージからアプリケーションのインストールを分離してパッケージ化し、仮想マシンや仮想マシンスケールセットに対して最新バージョンのアプリケーションのデプロイを自動化する手段を提供します(画面1)。
VMアプリケーションは、Azure MarketplaceのパブリックなOSイメージ(最新の更新レベル)と組み合わせることもできますし、Azureコンピューティングギャラリーのカスタムイメージと組み合わせることも可能です。後者の場合、仮想マシンイメージとアプリケーションパッケージのバージョン管理(更新)を別々に行いながら、最新バージョンの環境をデプロイ時に提供することができます。
VMアプリケーションは、Azureコンピューティングギャラリー内で、WindowsまたはLinux用に定義でき(VMアプリケーション定義)、少なくともストレージアカウントにアップロードしたアプリケーションファイル(.exeや.msiインストーラーや実行可能ファイルなど)と、インストールスクリプトおよびアンインストールスクリプトで構成されるVMアプリケーションバージョンとして準備します。
Windows用のインストールスクリプトとアンインストールスクリプトは「cmd.exe」で実行され、Linux用は「/bin/sh」で実行されます。サイレント(無人)インストール/アンインストールを1行のコマンドラインで書くことができれば、任意のアプリケーションをパッケージ化できます(画面2)。
例えば、Windows用のMSIインストーラー(myappsetup.msi)をストレージアカウントにアップロードし、VMアプリケーション定義を「MyApp」として作成した場合、インストールスクリプトは次のように記述できます(これは一例ですが、「\」や「"」を「\\」や「\"」のようにエスケープ処理する必要があることに注意してください)。
move .\\MyApp .\\myappsetup.msi & start /wait %windir%\\system32\\msiexec.exe /i myappsetup.msi /q /norestart
VMアプリケーションは、Azure仮想マシンの通常のデプロイ時に「詳細」タブでインストールするように選択できます(画面3)。また、既存の仮想マシンについては、「仮想マシン」ブレードの「設定|拡張機能とアプリケーション」の「VMアプリケーション」タブから、追加したり削除したりできます(画面4)。
岩手県花巻市在住。Microsoft MVP 2009 to 2022(Cloud and Datacenter Management)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.