第2世代 Azure Virtual Machineの指定
第 2 世代仮想マシン (VM) が Azure でサポートされるようになっています。
まだ、Hyper-Vの第2世代とは、セキュアブートやVHDX形式はサポートされない等の差はあるようです。ですが、ディスク コントローラーがSCSIになるなど、いろいろ進化しているようです。
今回は、第2世代の仮想マシンを明示的に指定する方法について、Azure PortalとARMテンプレートの場合について確認してみました。
Azure Portal上で第2世代の仮想マシンを指定する方法
マイクロソフト様のサイトにもありますが、Azure Portalを利用して第2世代の仮想マシンを作成するのは詳細タブで実施します。。
下記のように詳細タブの一番下に、VMの生成という項目があります。こちらでGen2を選択すると第2世代の仮想マシンが作成できます。
Azure Resource Manager(ARM)テンプレート等で第2世代の仮想マシンを指定する方法
ARMテンプレート等で第2世代の仮想マシンを指定するには、SKUで指定する形になるようです。
仮想マシンの場合は、OSを指定する場合、以下の項目で指定されます。
-
- PublisherName 発行者
- Offer OSのタイプ(WindowsかCentOSか)
- Skus OSのバージョン
- version 詳細バージョン(大体latestかと思います。)
実際に見るのが一番わかりやすいので、Windows Serverの場合とCentOSの場合について確認してみました。(結果は省略してます。)
まずはWindows Serverの場合です。gsというのもあるのですが、2019-datacenter-gensecondを選ぶようです。
PS> Get-AzVMImageSku -Location 'Japan East’ -PublisherName MicrosoftWindowsServer -Offer WindowsServer |ft Skus,Offer,PublisherName,Version
Skus Offer PublisherName Version |
次にCent OSの場合ですCentOSの場合は、-gen2がついているのが第2世代の仮想マシンに対応するようです。 (結果は省略してます。)
PS> Get-AzVMImageSku -Location 'Japan East’ -PublisherName OpenLogic -Offer CentOS |ft Skus,Offer,PublisherName,Version
Skus Offer PublisherName Version |
この結果を踏まえて、ARMテンプレートで第2世代の仮想マシンを指定する場合はこんな感じになりました。
#Windows Serverの場合
“imageReference": { #Cent OSの場合
“imageReference": { |
注意点ですが、第2世代の仮想マシンと第1世代の仮想マシンは相互に変換する事が2020年6月時点ではできません。基本的には第2世代で作った方が良いように思えるのですが、注意はしておいた方が良いと思われます。
ARMテンプレートを使ったAzure VMのデプロイについてはこちらの記事に記載しております。