次の方法で共有


非推奨のイメージに関する FAQ

この記事では、Azure Marketplace 内のイメージが非推奨になった場合に何が起きるかについて、よく寄せられる質問に回答します。

イメージが非推奨になる予定であることを示すメールが届きました。 具体的な変更点

非推奨または既に非推奨のイメージで仮想マシン (VM) が実行されていることを示す電子メールが届く場合があります。 公開元は、セキュリティの問題やイメージの有効期間が終了したことが原因である可能性があるいくつかの理由で、イメージを非推奨にすることができます。

非推奨になるイメージを使用する仮想マシンまたはスケール セットがある場合に受信する可能性がある電子メールのスクリーンショット。

イメージは、バージョン、プラン、またはオファー レベルで非推奨にすることができます。

  • イメージ バージョンの廃止 – 個々の VM イメージ バージョンの削除
  • プランまたは SKU の廃止 – プランまたは SKU とプラン内のすべてのイメージの削除
  • オファーの廃止 – VM オファー全体の削除 (オファー内のすべてのプラン、各プラン内のすべてのイメージが含まれます)。

非推奨になる予定のイメージでワークロードが実行されているという電子メールを受信しました。 これは何を意味し、非推奨は既存のワークロードに影響しますか?

非推奨になる予定日以前は、非推奨になる日付までの間、新しい VM またはスケール セット インスタンスをデプロイし続けられます。 予定されている非推奨の日付を過ぎると、影響を受けるイメージを使用して新しいインスタンスをデプロイすることはできません。 プランの廃止が予定されている場合、プラン内のすべてのイメージ バージョンは使用できなくなります。 プラン全体が非推奨となる予定の場合、非推奨になった後、オファー内のすべてのプランは使用できなくなります。

  • アクティブな VM インスタンスには影響しません。
  • 影響を受けるイメージから新しい VM インスタンスを作成することはできなくなります。
  • 影響を受けるイメージのいずれかで構成されている場合、既存の仮想マシン スケール セットのデプロイをスケールアウトすることはできません。 プランまたはオファーが廃止されると、そのプランまたはオファー内のイメージにそれぞれピン留めされているすべての既存のスケール セットのデプロイは、スケールアウトできません。

何をする必要がありますか?

非推奨の日以降にスケール セットをスケールアウトする場合は、非推奨のイメージで実行されているスケール セットを特定し、ワークロードをサポートされているイメージに移行する必要があります。 非推奨になった後もイメージに残したい場合は、独自のカスタム イメージを作成してそれに移行できます。 VM またはスケール セットに対して自動更新が既に構成されている場合は、オファーまたはプランのバージョンが非推奨になった場合にのみ影響を受けます。 イメージ バージョンの非推奨は影響しません。

非推奨になる予定のイメージで実行されているサブスクリプション内の仮想マシンと仮想マシン スケール セットを特定するには、どうすればよいですか?

Azure Resource Graph を使用する:

Azure Resource Graph で次のクエリを実行すると、イメージにピン留めされている仮想マシンまたは仮想マシン スケール セットを検索できます。

  • 廃止されたイメージで実行されている VM を見つけるには、廃止されたイメージを指定し、Azure Resource Graph でクエリを実行します。 値をイメージの詳細に置き換えます。
resources 
|where type == "microsoft.compute/virtualmachines" 
//| where properties.storageProfile.imageReference.publisher =~ 'Windows' //optional filter, uncomment this line to filter for a specific publisher.
//| where properties.storageProfile.imageReference.sku =~ '2016-Datacenter' //optional filter, uncomment this line to filter for a specific deprecated SKU (Plan).
//| where properties.storageProfile.imageReference.version == '14393.4467.2106061537' //optional filter, uncomment this line to filter for a specific deprecated version.
|project name, subscriptionId, resourceGroup, ImagePublisher=properties.storageProfile.imageReference.publisher,ImageOffer=properties.storageProfile.imageReference.offer,imageSku=properties.storageProfile.imageReference.sku, imageVersion=properties.storageProfile.imageReference.exactVersion
  • 廃止されたイメージで実行されているスケール セットを見つけるには、廃止されたイメージを指定し、Azure Resource Graph でクエリを実行します。 値をイメージの詳細に置き換えます。
resources 
|where type == "microsoft.compute/virtualmachinescalesets" 
//| where properties.virtualMachineProfile.storageProfile.imageReference.publisher =~ 'Windows' //optional filter, uncomment this line to filter for a specific publisher.
//| where properties.virtualMachineProfile.storageProfile.imageReference.sku =~ '2016-Datacenter' //optional filter, uncomment this line to filter for a specific deprecated SKU (Plan).
//| where properties.virtualMachineProfile.storageProfile.imageReference.version == '14393.4467.2106061537' //optional filter, uncomment this line to filter for a specific deprecated version. 
//| where properties.virtualMachineProfile.storageProfile.imageReference.version != "latest" //optional filter, uncomment this line to filter out scale sets that aren't using "latest version" in the model.
|project name, subscriptionId, resourceGroup, ImagePublisher=properties.virtualMachineProfile.storageProfile.imageReference.publisher,ImageOffer=properties.virtualMachineProfile.storageProfile.imageReference.offer,imageSku=properties.virtualMachineProfile.storageProfile.imageReference.sku, imageVersion=properties.virtualMachineProfile.storageProfile.imageReference.version

Azure CLI を使用する場合:

  • 非推奨のイメージを含む VM をプランまたは SKU レベルで一覧表示します。
az vm show --resource-group $rgName --name $vmName --query "storageProfile.imageReference.exactVersion
az vm list --query "[?storageProfile.imageReference.sku=='2016-Datacenter'].{VM:id, imageOffer:storageProfile.imageReference.offer, imagePublisher:StorageProfile.imageReference.publisher, imageSku: storageProfile.imageReference.sku, imageVersion:storageProfile.imageReference.version}"
  • 非推奨のイメージを含む VM をバージョン レベルで一覧表示します。
az vm list --query "[?storageProfile.imageReference.version=='14393.4402.2105052108'].{VM:id, imageOffer:storageProfile.imageReference.offer, imagePublisher:StorageProfile.imageReference.publisher, imageSku: storageProfile.imageReference.sku, imageVersion:storageProfile.imageReference.version}"

PowerShell の使用:

  • 非推奨のイメージを含む VM をバージョン レベルで一覧表示します。
(Get-AzVM -ResourceGroupName $rgname -Name $vmname).StorageProfile.ImageReference.ExactVersion   
  • 非推奨のバージョンを使用しているスケール セットを検索するには、次の手順を実行します。
$vmsslist = Get-AzVmss
$vmsslist | where {$_.virtualMachineProfile.storageProfile.imageReference.Version -eq '14393.4402.2105052108'} | Select-Object -Property ResourceGroupName, Name, @{label='imageOffer'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Offer}}, @{label='imagePublisher'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Publisher}}, @{label='imageSKU'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Sku}}, @{label='imageVersion'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Version}}
  • 非推奨のイメージを含むスケール セットをプランまたは SKU レベルで一覧表示します。
$vmsslist = Get-AzVmss
$vmsslist | where {$_.virtualMachineProfile.storageProfile.imageReference.Sku -eq '2016-Datacenter'} | Select-Object -Property ResourceGroupName, Name, @{label='imageOffer'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Offer}}, @{label='imagePublisher'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Publisher}}, @{label='imageSKU'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Sku}}, @{label='imageVersion'; expression={$_.virtualMachineProfile.storageProfile.imageReference.Version}}
  • Get-AzVMImageDeprecationStatus.ps1 を実行して、サブスクリプション内の VM または VM スケール セットが、非推奨予定の VM イメージから作成されたかどうかを表示します。

イメージが非推奨の場合、既存の VM に影響はなく、対応は必要ありません。 イメージが非推奨になると、仮想マシン スケール セットのスケールアウト操作と、新しい VM と仮想マシン スケール セットの作成操作のみが影響を受けます。

ワークロードを別のイメージに移行するにはどうすればいいですか?

特定の理由があって非推奨になる予定のイメージを使用し続けたい場合、またはワークロードを別のオファー、プラン、またはバージョンに移行したい場合があります。 非推奨になる予定のイメージを引き続き使用する場合は、VM を一般化し、VM の割り当てを解除してから、VM またはスケール セットのカスタム イメージを作成します。 次に、カスタム イメージを指す VM またはスケール セットのデプロイを変更します。 詳細については、ポータルを使用した VM のイメージのキャプチャに関するページを参照してください。

購入プラン情報 (イメージ上の "プラン" オブジェクト) が定義されている非推奨の有料 Marketplace イメージを使用している場合、このイメージが非推奨になると、新しい Virtual Machines ワークロードを作成したり、このイメージで Azure Site Recovery (ASR) またはバックアップ操作を実行したりすることはできません。 これは、プラン情報が不足しているために発生します。

別のオファー、プラン、またはバージョンに移行する場合:

まず、同じ発行元からの他のオファー、プラン、またはバージョンを検索します。

別のオファーに移行するには:

Azure CLI の使用:

az vm image list --location "west europe" --publisher "MicrosoftWindowsServer" 

PowerShell を使用して、次の操作を実行します。

Get-AzVMImage -Location "west europe" -PublisherName “MicrosoftWindowsServer” 

別のプランに移行するには:

同じオファーの他のプランを検索し、そのプランに移行します。

Azure CLI:

az vm image list --location "west europe" --publisher "MicrosoftWindowsServer" --offer "WindowsServer" 

PowerShell:

Get-AzVMImage -Location "west europe" -PublisherName “MicrosoftWindowsServer” -Offer “WindowsServer”

別のバージョンに移行するには:

別のバージョンを検索します。 最新バージョンへの移行をお勧めします。

Azure CLI:

az vm image list --location "west europe" --publisher "MicrosoftWindowsServer" --offer "WindowsServer" --sku "2019-Datacenter-with-Containers" --all"

PowerShell:

Get-AzVMImage -Location "west europe" -PublisherName "MicrosoftWindowsServer” -Offer “WindowsServer” -Skus "2019-Datacenter-with-Containers"

ワークロードを新しいイメージに移行する前に、ワークロードがサポートされ、新しいイメージで適切に実行されることを確認する必要があります。

スケール セットは、一般にイメージ参照の置換をサポートしますが、VM はサポートしません。

最小限のダウンタイムでスケール セット ワークロードを新しいイメージに移行する

スケール セットでは、バージョンを更新するための推奨事項には、次のようなものがあります。

  • ダウンタイムを回避するには、アップグレード ポリシーが手動またはローリングに設定されていることを確認します。
    • 手動に設定した場合、既存のインスタンスは、手動でアップグレードされるまでは再イメージ化されません。
    • ローリングに設定した場合、既存のインスタンスが自動的にアップグレードされ、バッチによって再イメージ化されます。
  • Azure 仮想マシン スケール セットを変更する」の手順を使用して、イメージ参照を更新します。
  • 既存のすべてのインスタンスがアップグレードされ、最新のモデルにあることを確認します。 また、既存のインスタンスをアップグレードするのではなく、ワークロードをスケールアウトして新しいインスタンスに移行し、その後古いインスタンスを削除することもできます。
  • 既存のインスタンスがすべて新しいイメージにアップグレードされたら、必要に応じてアップグレード ポリシーを元に戻します。 仮想マシン スケール セットを使用している場合は、OS イメージの自動アップグレードを有効にして、イメージ パブリッシャーによって発行された最新のイメージが、手動によるユーザー操作なしでスケール セットに自動的に適用されるようにすることをお勧めします。 OS イメージの自動アップグレードを有効にする方法について説明します。

購入プラン情報付きの有料マーケットプレース イメージが非推奨になるとどうなりますか?

有料 Marketplace イメージを使用している場合、イメージが非推奨になると、イメージがマーケットプレースから削除または非推奨になると、プラン情報を含むイメージに対してバックアップから VM を復元しようとすると失敗する可能性があります。 プラン情報で有料 Marketplace イメージを使用している場合は、新しい VM を作成し、そのイメージにワークロードを移行することをお勧めします。 VM イメージが Free の場合、プラン情報を必要としないという点で、単一の VM を引き続き使用でき、バックアップから復元できる必要があります。 これは単一の VM にのみ影響し、仮想マシン スケール セットのワークロードには影響しません。

無料のマーケットプレース イメージが非推奨になるとどうなりますか?

無料の Marketplace イメージが非推奨になった場合、既存の VM または仮想マシン スケール セットのワークロードに影響はありません。 ただし、非推奨の無料 Marketplace イメージから新しい VM または仮想マシン スケール セットワークロードを作成することはできません。

示されたバージョンよりも低いイメージ バージョンもすべて非推奨ですか?

ほとんどの場合はできます。 ただし、仮想マシン イメージ - リストを使うプランにある有効なバージョンの一覧と照らし合わせて確認することをお勧めします。

イメージの非推奨に関するメールを受け取る方法

サブスクリプションに所有者、アカウント管理者、またはユーザー アクセス管理者ロールがあることを確認します。

特定のイメージが非推奨または非推奨になる予定かどうかを確認するにはどうすればよいですか?

REST API を使用して、イメージが非推奨になっているか、非推奨が予定されているかどうかを確認できます。

イメージが非推奨の場合は、 VM イメージが非推奨の応答になります 。 イメージが非推奨にスケジュールされている場合、応答には、スケジュールされた非推奨の日付が表示されます。

Get-AzVMImageDeprecationStatus.ps1 を Cloud Shell で実行するか Azure PowerShell でローカルに実行すると、サブスクリプション内の仮想マシンが、非推奨予定の VM イメージから作成されたかどうかを表示できます。 このスクリプトでは、VM と VM スケール セットの両方のインスタンスがサポートされています。

この応答は、このイメージが非推奨であることを示しています。

{
  "error": {
    "code": "ImageVersionDeprecated",
    "message": "VM Image from publisher: MicrosoftWindowsServer with - Offer: WindowsServer, Sku: 2016-Datacenter, Version: 14393.4169.2101090332 is deprecated."
  }
}

Azure CLI または PowerShell を使用してイメージが非推奨かどうかを確認するには、次のようにします。

Azure CLI:

az vm image show --location eastus --urn <MicrosoftWindowsServer:WindowsServer:2016-Datacenter:14393.4169.2101090332> --query [imageDeprecationStatus]

PowerShell:

Get-AzVMImage -Location "eastus" -PublisherName <MicrosoftWindowsServer> -Offer "WindowsServer" -Skus <2016-Datacenter> -Version <14393.4169.2101090332> | Select-Object -ExpandProperty "ImageDeprecationStatus"

特定の SKU のすべてのバージョンを非推奨の詳細と共に確認するには:

Get-AzVMImage -Location "westus" `
  -PublisherName "center-for-internet-security-inc" `
  -Offer "cis-rocky" `
  -Skus "cis-rockylinux-9-l1-gen2-azure-observability" `
  -Expand "properties/imageDeprecationStatus" |
  Select-Object Version, @{
    Name = "DeprecationDetails"
    Expression = { $_.ImageDeprecationStatus | Out-String }
  } | Format-Table -Wrap -AutoSize

この応答は、このイメージが非推奨であることを示しています。

Get-AzVMImage: VM Image from publisher: MicrosoftWindowsServer with - Offer: WindowsServer, Sku: 2016-Datacenter, Version: 14393.4169.2101090332 is deprecated.
ErrorCode: ImageVersionDeprecated
ErrorMessage: VM Image from publisher: MicrosoftWindowsServer with - Offer: WindowsServer, Sku: 2016-Datacenter, Version: 14393.4169.2101090332 is deprecated.
ErrorTarget:  
StatusCode: 404
ReasonPhrase: Not Found

SQL Server Azure Marketplace イメージが非推奨になった場合、SQL Server インスタンスはどうなりますか?

SQL Server イメージが非推奨になった場合、SQL Server インスタンスには何も起こりません。 中断することなく、Azure VM と SQL Server インスタンスを引き続き使用できます。 ただし、今後そのイメージをデプロイすることはできなくなります。

特定の SKU でアクティブなイメージ バージョンを確認するにはどうすればよいですか?

アクティブなイメージは、非推奨にスケジュールされていないイメージまたは既に非推奨のイメージです。 次のコマンドを使用して、SKU でアクティブなイメージのバージョンを一覧表示します。

Azure CLI:

az vm image list --<location> eastus --publisher <MicrosoftWindowsServer> --offer <WindowsServer> --sku <2022-Datacenter> --all --query "[?imageDeprecationStatus.imageState=='Active']"

PowerShell:

Get-AzVMImage -Location "westus" `
  -PublisherName "center-for-internet-security-inc" `
  -Offer "cis-rocky" `
  -Skus "cis-rockylinux-9-l1-gen2-azure-observability" `
  -Expand "properties/imageDeprecationStatus" |
  Where-Object { $_.ImageDeprecationStatus.ImageState -eq "Active" } |
  Select-Object Version