デプロイした Azure IaaS VM で使用された Azure Marketplace の OS イメージの情報を確認する方法について

スポンサーリンク
Surface Pro 4

検証で Azure Marketplace の OS イメージを使用して Azure IaaS VM を何度もデプロイしてそのまま放置にしていると、ある時になって「この VM ってどの OS イメージ使ってデプロイしたんだっけ」と思うことが多々あります。

いらないものを削除して、再作成すればいいんですが、何かの役には立つだろう、ということで確認してみました。

デプロイした Azure IaaS VM で使用された Azure Marketplace の OS イメージを確認する方法

Azure PowerShell (Az モジュール) の Get-AzVM コマンドレットを用いて、StorageProfile.ImageReference の値から確認することが可能です。

$vm = Get-AzVM -ResourceGroupName '<リソース グループ名>' -Name '<VM 名>'
$vm.StorageProfile.ImageReference
  • 実行結果 その 1
    Publisher : MicrosoftWindowsServer
    Offer     : WindowsServer
    Sku       : 2016-Datacenter
    Version   : latest
    Id        :
    
  • 実行結果 その 2
    Publisher : MicrosoftWindowsServer
    Offer     : WindowsServer
    Sku       : 2016-Datacenter
    Version   : 14393.3274.1910061629
    Id        :
    
  • 実行結果 その 3
    Publisher : Canonical
    Offer     : UbuntuServer
    Sku       : 18.04-LTS
    Version   : 18.04.201911130
    Id        :
    

Version が「latest」である場合の実際のバージョンについて

torageProfile.ImageReference の値において、Version が「latest」 と表示されることがありますが、これは通常 Azure ポータル経由でデプロイした際や、Azure PowerShell においても、バージョンを指定せずにデプロイした場合には最新のイメージである「latest」が使用されます。

この「latest」がどのバージョンを使用されているかについて確認しましたが、デプロイした時点の最新のバージョンを用いている以上の情報を確認することができませんでした。

Azure Marketplace で公開されている OS イメージについては、以下の公開ドキュメントに記載されている推奨事項に基づいてアップデートが行われていたりします。そのため、デプロイした時期によって適用されている修正プログラムやサービス、アプリケーションのバージョンが異なるといった場合もあります。

自分としては、スパイウェアなどが仕組まれていた、とかの特別な理由がない限り、気にはしていませんが、どうしても同一バージョンの OS イメージを用いて Azure IaaS VM を使用したいということであれば、以下のことを検討してみてはいかがでしょうか。

  • デプロイ時に OS イメージのバージョンを指定する (Azure ポータルでは不可)
  • Azure Marketplace の OS イメージを使用せず、利用者自身でカスタム OS イメージを作成、デプロイに使用する

参考