次の方法で共有


Azure Virtual Machines とスケール セットのゲストの自動パッチ適用

注意事項

この記事では、間もなくサポート終了 (EOL) 状態になる Linux ディストリビューションである CentOS について説明します。 適宜、使用と計画を検討してください。 詳細については、「CentOS のサポート終了に関するガイダンス」を参照してください。

適用対象: ✔️ Linux VM ✔️ Windows VM ✔️ フレキシブル スケール セット

Azure Virtual Machines (VM) とスケール セット (VMSS) でゲストの自動パッチ適用を有効にすると、安全かつ自動的に仮想マシンにパッチを適用することで、更新プログラムの管理が容易になり、セキュリティ コンプライアンスを維持し、さらに VM の影響範囲を制限することができます。

VM ゲストの自動パッチ適用には、次の特徴があります。

  • [重大] または [セキュリティ] に分類されているパッチは、自動的にダウンロードされ、VM に適用されます。
  • パッチは、IaaS VM のピーク外の時間帯 (VM のタイムゾーン) に適用されます。
  • VMSS Flex の場合、パッチはすべての時間に適用されます。
  • Azure は、パッチ オーケストレーションを管理し、可用性優先の原則に従います。
  • プラットフォーム正常性シグナルによって特定された仮想マシンの正常性は、パッチ適用の失敗を検出するために監視されます。
  • アプリケーションの正常性はアプリケーション正常性拡張機能を使って監視できます。
  • すべての VM サイズで機能します。

VM ゲストの自動パッチ適用はどのように機能しますか?

VM で VM ゲストの自動パッチ適用が有効になっている場合、使用可能な [重大] および [セキュリティ] パッチが自動的にダウンロードされて VM に適用されます。 このプロセスは、毎月新しいパッチがリリースされるたびに自動的に開始されます。 パッチの評価とインストールは自動的に実行され、このプロセスでは必要に応じて VM の再起動が行われます。

VM は、その VM に適用可能なパッチを確認するため、数日ごと、または 30 日以内に複数回、定期的に評価されます。 パッチは、VM のピーク外の時間帯であればいつでも VM にインストールされる可能性があります。 この自動評価により、不足しているパッチができるだけ早く検出されるようになります。

パッチは、可用性優先のオーケストレーションに従って、毎月のパッチ リリースから 30 日以内にインストールされます。 パッチは、VM のタイムゾーンに応じて、VM のピーク外の時間帯にのみインストールされます。 パッチが自動的にインストールされるようにするには、ピーク外の時間帯に VM が実行されている必要があります。 定期的な評価の際に VM の電源がオフになっている場合、VM の電源がオンになっている時に行われる次回の定期的な評価 (通常は数日以内) の際にプラットフォームが自動的に評価され、(必要に応じて) パッチが自動的に適用されます。

定義の更新プログラムや [重要] または [セキュリティ] として分類されていない他のパッチは、VM ゲストの自動パッチ適用によってインストールされません。 他のパッチの分類が適用されたパッチをインストールしたり、独自のカスタム メンテナンス期間内でパッチをインストールするようスケジュールしたりするには、Update Management を使用します。

IaaS VM の場合、お客様は、自動 VM ゲスト パッチ適用を有効にするように仮想マシンを構成することを選択できます。 こうすると、更新されたパッチを取得する VM の影響範囲を制限し、VM の調整された更新を行うことができます。 また、このサービスは、更新プログラムに関する問題を検出する稼働状況の監視機能も備えています。

可用性優先の更新

パッチのインストール プロセスは、VM ゲストの自動パッチ適用が有効になっているすべての VM で、Azure によってグローバルにオーケストレーションされています。 このオーケストレーションは、Azure で提供されるさまざまなレベルの可用性において、可用性優先の原則に従います。

更新中の仮想マシンのグループについては、Azure プラットフォームで更新がオーケストレーションされます。

複数のリージョン間:

  • 毎月の更新プログラムは、グローバル展開の失敗を防ぐために、Azure 全体で段階的にオーケストレーションされます。
  • 1 つのフェーズには 1 つ以上のリージョンを含めることができ、更新は、フェーズ内の対象となる VM が正常に更新された場合にのみ、次のフェーズに移動します。
  • geo ペア リージョンは同時に更新されず、同じリージョンのフェーズに置くことはできません。
  • 更新の成功は、更新後に VM の正常性を追跡することによって測定できます。 VM の正常性は、VM のプラットフォーム正常性インジケーターによって追跡されます。

リージョン内:

  • 異なる Availability Zones にある VM が、同じ更新で同時に更新されることはありません。
  • 可用性セットの一部ではない VM は、サブスクリプション内のすべての VM が同時に更新されることを回避するために、ベスト エフォート方式でバッチ処理されます。

可用性セット内:

  • 共通の可用性セット内のすべての VM が同時に更新されることはありません。
  • 共通の可用性セット内の VM は更新ドメインの境界内で更新され、複数の更新ドメインにまたがる VM は同時に更新されません。

パッチを適用する VM の範囲を複数のリージョン、1 つのリージョン内、または 1 つの可用性セットに絞り込み、パッチの影響範囲を制限します。 稼働状況の監視を使うと、フリート全体に影響を与えることなく、潜在的な問題にフラグを設定することができます。

特定の VM のパッチのインストール日は、月ごとに異なる可能性があります。これは、特定の VM が毎月のパッチ適用サイクルの異なるバッチで選択される可能性があるためです。

インストールされるパッチ

インストールされるパッチは、VM のロールアウト ステージによって異なります。 毎月、新しいグローバル ロールアウトが開始され、個々の VM に対して評価されたすべてのセキュリティおよび重大パッチが、その VM 用にインストールされます。 ロールアウトは、バッチ内のすべての Azure リージョン間でオーケストレーションされます (可用性優先のパッチ適用に関する前のセクションを参照)。

インストールされるパッチの正確なセットは、OS の種類や評価のタイミングなどの VM の構成によって異なります。 パッチ オーケストレーションが異なるタイミングで異なるリージョンに達すると、程度の差はあってもパッチが利用可能な場合、異なるリージョンにある 2 つの同一の VM に異なるパッチがインストールされる可能性があります。 頻度は低くなりますが、同じように、同じリージョン内の VM であっても、(可用性ゾーンや可用性セットのバッチが異なるために) 評価されるタイミングが異なると、異なるパッチを適用される可能性があります。

VM ゲストの自動パッチ適用でパッチのソースは構成されないため、2 つの類似した VM に異なるパッチ ソースが構成されていると (パブリック リポジトリとプライベート リポジトリなど)、やはりインストールされるパッチの正確なセットが異なることがあります。

一定の周期でパッチがリリースされる OS の種類の場合、OS のパブリック リポジトリに構成されている VM は、ある月の異なるロールアウト フェーズで同じパッチのセットを受け取ることが予想されます。 たとえば、パブリック Windows Update リポジトリに構成されている Windows VM などです。

毎月新しいロールアウトがトリガーされるので、オフピーク時間帯に VM の電源がオンになっている場合、VM は毎月少なくとも 1 つのパッチ ロールアウトを受け取ります。 このプロセスにより、VM には、使用可能な最新のセキュリティおよび重大パッチが毎月適用されます。 インストールされるパッチのセットの整合性を保証するには、独自のプライベート リポジトリにあるパッチを評価してダウンロードするように、VM を構成することができます。

サポート対象の OS イメージ

重要

VM ゲストの自動パッチ適用、オンデマンドのパッチ評価、およびオンデマンドのパッチのインストールは、次のサポート対象の OS イメージ一覧に記載された発行元、製品、sku の正確な組み合わせのイメージから作成された VM 上でのみサポートされます。 カスタム イメージまたはその他の発行元、製品、sku の組み合わせはサポートされていません。 さらに多くのイメージが定期的に追加されます。 一覧に SKU が表示されない場合 イメージ サポート リクエストを提出してサポートを要求します。

Publisher OS 製品 Sku
Canonical UbuntuServer 16.04 LTS
Canonical UbuntuServer 16.04.0-LTS
Canonical UbuntuServer 18.04-LTS
Canonical UbuntuServer 18.04-LTS-gen2
Canonical 0001-com-ubuntu-pro-bionic pro-18_04-lts
正規 0001-com-ubuntu-server-focal 20_04-lts
正規 0001-com-ubuntu-server-focal 20_04-lts-gen2
正規 0001-com-ubuntu-pro-focal pro-20_04-lts
Canonical 0001-com-ubuntu-pro-focal pro-20_04-lts-gen2
Canonical 0001-com-ubuntu-server-jammy 22_04-lts
Canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2
microsoftcblmariner cbl-mariner cbl-mariner-1
microsoftcblmariner cbl-mariner 1-gen2
microsoftcblmariner cbl-mariner cbl-mariner-2
microsoftcblmariner cbl-mariner cbl-mariner-2-gen2
Redhat RHEL 7.2、7.3、7.4、7.5、7.6、7.7、7.8、7_9、7-RAW、7-LVM
Redhat RHEL 8、8.1、81gen2、8.2、82gen2、8_3、83-gen2、8_4、84-gen2、8_5、85-gen2、8_6、86-gen2、8_7、 8_8、8-lvm、8-lvm-gen2
Redhat RHEL 9_0、9_1、9-lvm、9-lvm-gen2
Redhat RHEL-RAW 8-raw、8-raw-gen2
SUSE sles-12-sp5 gen1、gen2
SUSE sles-15-sp2 gen1、gen2
MicrosoftWindowsServer WindowsServer 2008-R2-SP1
MicrosoftWindowsServer WindowsServer 2012-R2-Datacenter
MicrosoftWindowsServer WindowsServer 2012-R2-Datacenter-gensecond
MicrosoftWindowsServer WindowsServer 2012-R2-Datacenter-smalldisk
MicrosoftWindowsServer WindowsServer 2012-R2-Datacenter-smalldisk-g2
MicrosoftWindowsServer WindowsServer 2016-Datacenter
MicrosoftWindowsServer WindowsServer 2016-datacenter-gensecond
MicrosoftWindowsServer WindowsServer 2016-Datacenter-Server-Core
MicrosoftWindowsServer WindowsServer 2016-datacenter-smalldisk
MicrosoftWindowsServer WindowsServer 2016-datacenter-with-containers
MicrosoftWindowsServer WindowsServer 2019-Datacenter
MicrosoftWindowsServer WindowsServer 2019-Datacenter-Core
MicrosoftWindowsServer WindowsServer 2019-datacenter-gensecond
MicrosoftWindowsServer WindowsServer 2019-datacenter-smalldisk
MicrosoftWindowsServer WindowsServer 2019-datacenter-smalldisk-g2
MicrosoftWindowsServer WindowsServer 2019-datacenter-with-containers
MicrosoftWindowsServer WindowsServer 2022-datacenter
MicrosoftWindowsServer WindowsServer 2022-datacenter-smalldisk
MicrosoftWindowsServer WindowsServer 2022-datacenter-smalldisk-g2
MicrosoftWindowsServer WindowsServer 2022-datacenter-g2
MicrosoftWindowsServer WindowsServer 2022-datacenter-core
MicrosoftWindowsServer WindowsServer 2022-datacenter-core-g2
MicrosoftWindowsServer WindowsServer 2022-datacenter-azure-edition
MicrosoftWindowsServer WindowsServer 2022-datacenter-azure-edition-core
MicrosoftWindowsServer WindowsServer 2022-datacenter-azure-edition-core-smalldisk
MicrosoftWindowsServer WindowsServer 2022-datacenter-azure-edition-smalldisk

パッチ オーケストレーションのモード

Azure 上の VM により、次のパッチ オーケストレーション モードがサポートされるようになりました。

AutomaticByPlatform (Azure で調整された修正プログラム):

  • このモードは、Linux と Windows の両方の VM でサポートされています。
  • このモードを使用すると、仮想マシンで VM ゲストの自動パッチ適用が有効になり、それ以降のパッチのインストールは Azure によってオーケストレーションされます。
  • インストール プロセス中、このモードでは VM で使用可能なパッチが評価され、詳細が Azure Resource Graph に保存されます。
  • このモードは、可用性優先のパッチを適用するために必要です。
  • このモードは、上記のサポートされている OS プラットフォーム イメージを使用して作成された VM でのみサポートされています。
  • Windows VM の場合、このモードを設定すると、重複を避けるために、Windows 仮想マシンのネイティブ自動更新も無効になります。
  • Linux VM でこのモードを使用するには、VM テンプレートでプロパティ osProfile.linuxConfiguration.patchSettings.patchMode=AutomaticByPlatform を設定します。
  • Windows VM でこのモードを使用するには、VM テンプレートでプロパティ osProfile.windowsConfiguration.patchSettings.patchMode=AutomaticByPlatform を設定します。
  • このモードを有効にすると、レジストリ キー SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU\NoAutoUpdate が 1 に設定されます

AutomaticByOS:

  • このモードは、Windows VM についてのみサポートされます。
  • このモードでは、Windows 仮想マシンで自動更新が有効になり、自動更新によってパッチが VM にインストールされます。
  • このモードは、可用性優先のパッチ適用をサポートしていません。
  • Windows VM で他のパッチ モードが指定されていない場合は、このモードが既定で設定されます。
  • Windows VM でこのモードを使用するには、プロパティ osProfile.windowsConfiguration.enableAutomaticUpdates=true を設定し、VM テンプレートでプロパティ osProfile.windowsConfiguration.patchSettings.patchMode=AutomaticByOS を設定します。
  • このモードを有効にすると、レジストリ キー SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU\NoAutoUpdate が 0 に設定されます

Manual:

  • このモードは、Windows VM についてのみサポートされます。
  • このモードでは、Windows 仮想マシンの自動更新が無効になります。 CLI または PowerShell を使用して VM をデプロイする場合、--enable-auto-updatesfalse に設定すると、patchModemanual に設定され、自動更新が無効になります。
  • このモードは、可用性優先のパッチ適用をサポートしていません。
  • カスタム パッチ適用ソリューションを使用する場合は、このモードに設定する必要があります。
  • Windows VM でこのモードを使用するには、プロパティ osProfile.windowsConfiguration.enableAutomaticUpdates=false を設定し、VM テンプレートでプロパティ osProfile.windowsConfiguration.patchSettings.patchMode=Manual を設定します。
  • このモードを有効にすると、レジストリ キー SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU\NoAutoUpdate が 1 に設定されます

ImageDefault:

  • このモードは、Linux VM についてのみサポートされます。
  • このモードは、可用性優先のパッチ適用をサポートしていません。
  • このモードを指定すると、VM の作成に使用されたイメージでの既定のパッチ構成が使用されます。
  • Linux VM で他のパッチ モードが指定されていない場合は、このモードが既定で設定されます。
  • Linux VM でこのモードを使用するには、VM テンプレートでプロパティ osProfile.linuxConfiguration.patchSettings.patchMode=ImageDefault を設定します。

Note

Windows VM の場合、プロパティ osProfile.windowsConfiguration.enableAutomaticUpdates は VM の最初の作成時にのみ設定できます。 これは、特定のパッチ モードの切り替えに影響します。 AutomaticByPlatform モードと Manual モードの切り替えは、osProfile.windowsConfiguration.enableAutomaticUpdates=false である VM でサポートされています。 同様に、AutomaticByPlatform モードと AutomaticByOS モードの切り替えは、osProfile.windowsConfiguration.enableAutomaticUpdates=true である VM でサポートされています。 AutomaticByOS モードと Manual モードの切り替えはサポートされていません。 Azure では、パッチに Azure オーケストレーションが有効になっていない場合でも、VM の評価モードを有効にすることをお勧めしています。 これにより、保留中の更新プログラムがないか 24 時間ごとに VM の評価が行われ、詳細が Azure Resource Graph に保存されるようになります。 プラットフォームでは、マシンの目的のパッチ構成状態が適用または確認されたときに、統合結果を報告するための評価が実行されます。 これは、"プラットフォーム" によって開始された評価として報告されます。

VM ゲストの自動パッチ適用を有効にするための要件

  • 仮想マシンには、Windows または Linux 用の Azure VM エージェントがインストールされている必要があります。
  • Linux VM の場合、Azure Linux エージェントはバージョン 2.2.53.1 以降である必要があります。 現在のバージョンが必要なバージョンより古い場合は、Linux エージェントを更新します
  • Windows VM の場合、Windows Update サービスが仮想マシンで実行されている必要があります。
  • 仮想マシンから構成されている更新エンドポイントにアクセスできる必要があります。 Linux 用のプライベート リポジトリまたは Windows VM 用の Windows Server Update Services (WSUS) を使用するように仮想マシンが構成されている場合は、関連する更新エンドポイントにアクセスできる必要があります。
  • オンデマンド評価やオンデマンドのパッチ適用などのすべての機能にアクセスするために、Compute API バージョン 2021-03-01 以降を使用してください。
  • カスタム イメージは現時点ではサポートされていません。
  • VMSS フレキシブル オーケストレーションには、アプリケーション正常性拡張機能のインストールが必要です。 これは、IaaS VM の場合は省略可能です。

VM ゲストの自動パッチ適用を有効化する

VM ゲストの自動パッチ適用は、サポート対象のプラットフォーム イメージから作成された任意の Windows または Linux VM で有効にすることができます。

Linux VM 用の REST API

次の例では、VM ゲストの自動パッチ適用を有効にする方法について説明します。

PUT on `/subscriptions/subscription_id/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine?api-version=2020-12-01`
{
  "location": "<location>",
  "properties": {
    "osProfile": {
      "linuxConfiguration": {
        "provisionVMAgent": true,
        "patchSettings": {
          "patchMode": "AutomaticByPlatform"
        }
      }
    }
  }
}

Windows VM 用の REST API

次の例では、VM ゲストの自動パッチ適用を有効にする方法について説明します。

PUT on `/subscriptions/subscription_id/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine?api-version=2020-12-01`
{
  "location": "<location>",
  "properties": {
    "osProfile": {
      "windowsConfiguration": {
        "provisionVMAgent": true,
        "enableAutomaticUpdates": true,
        "patchSettings": {
          "patchMode": "AutomaticByPlatform"
        }
      }
    }
  }
}

Windows VM を作成するときの Azure PowerShell

VM の作成時に VM ゲスト自動パッチ適用を有効にするには、Set-AzVMOperatingSystem コマンドレットを使います。

Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate -PatchMode "AutomaticByPlatform"

Windows VM を更新するときの Azure PowerShell

Set-AzVMOperatingSystemUpdate-AzVM のコマンドレットを使い、既存の VM で自動 VM ゲスト パッチ適用を有効にします。

$VirtualMachine = Get-AzVM -ResourceGroupName "myResourceGroup" -Name "myVM"
Set-AzVMOperatingSystem -VM $VirtualMachine -PatchMode "AutomaticByPlatform"
Update-AzVM -VM $VirtualMachine

Windows VM 用の Azure CLI

新しい VM を作成するときに VM ゲストの自動パッチ適用を有効にするには、az vm create を使用します。 次の例では、myResourceGroup という名前のリソース グループ内の myVM という名前の VM に対して、VM ゲストの自動パッチ適用を構成します。

az vm create --resource-group myResourceGroup --name myVM --image Win2019Datacenter --enable-agent --enable-auto-update --patch-mode AutomaticByPlatform

既存の VM を変更するには、az vm update を使用します

az vm update --resource-group myResourceGroup --name myVM --set osProfile.windowsConfiguration.enableAutomaticUpdates=true osProfile.windowsConfiguration.patchSettings.patchMode=AutomaticByPlatform

Azure portal

Azure portal を使用した VM の作成時に、パッチ オーケストレーションのモードを Linux と Windows 両方の [管理] タブで設定できます。

パッチ オーケストレーション モードを有効にするために使用される Azure portal の管理タブを示しています。

有効化と評価

Note

VM で VM のゲストの自動更新を有効にするには 3 時間以上かかることがあります。これは、有効化が VM のピーク外の時間帯に行われるためです。 評価とパッチのインストールは、ピーク外の時間帯にのみ行われるため、パッチを適用するには、ピーク外の時間帯でも VM が実行されている必要があります。

VM で VM ゲストの自動パッチ適用が有効になっていると、Linux VM には種類 Microsoft.CPlat.Core.LinuxPatchExtension の VM 拡張機能が、また Windows VM には種類 Microsoft.CPlat.Core.WindowsPatchExtension の VM 拡張機能が、それぞれインストールされます。 この拡張機能は、VM ゲストの自動パッチ適用プロセスの一環として Azure プラットフォームによって管理されているため、手動でインストールまたは更新する必要はありません。

VM で VM のゲストの自動更新を有効にするには 3 時間以上かかることがあります。これは、有効化が VM のピーク外の時間帯に行われるためです。 この拡張機能も、VM のピーク外の時間帯にインストールおよび更新されます。 有効化が完了する前に VM のピーク外の時間が終了した場合、有効化プロセスは、次に利用可能なピーク外の時間帯に再開されます。

プラットフォームでは、IaaS VM または VMSS フレキシブル オーケストレーションでモデルの変更が検出されたときにアラインメントを確保するために定期的なパッチ適用の構成呼び出しが行われることに注意してください。 評価モード、パッチ モード、拡張機能の更新など (ただし、これらに限定されない) の特定のモデルの変更により、パッチ適用の構成呼び出しがトリガーされる場合があります。

自動更新はほとんどのシナリオで無効になっており、パッチのインストールは今後の拡張機能によって行われます。 次の条件が適用されます。

  • Windows VM でこれまで AutomaticByOS パッチ モードにより Automatic Windows Update がオンになっていた場合、拡張機能がインストールされると VM の Automatic Windows Update はオフになります。
  • Ubuntu VM の場合、VM ゲストの自動パッチ適用の有効化が完了すると、既定の自動更新は自動的に無効になります。
  • RHEL の場合、自動更新を手動で無効にする必要があります。 次のように実行します。
sudo systemctl stop packagekit
sudo systemctl mask packagekit

VM ゲストの自動パッチ適用が完了していて、パッチ拡張が VM にインストールされているかどうかを確認するには、VM のインスタンス ビューを確認します。 有効化プロセスが完了すると、拡張機能がインストールされ、patchStatus の下に VM の評価結果が表示されます。 VM のインスタンス ビューには、次に示すように複数の方法でアクセスできます。

REST API

GET on `/subscriptions/subscription_id/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine/instanceView?api-version=2020-12-01`

Azure PowerShell

-Status パラメーターを指定して Get-AzVM コマンドレットを使用して、VM のインスタンス ビューにアクセスします。

Get-AzVM -ResourceGroupName "myResourceGroup" -Name "myVM" -Status

現在、PowerShell ではパッチの拡張機能に関する情報のみが提供されています。 patchStatus に関する情報は、PowerShell を通じて間もなく提供されます。

Azure CLI

az vm get-instance-view を使用して、VM のインスタンス ビューにアクセスします。

az vm get-instance-view --resource-group myResourceGroup --name myVM

VM のパッチの状態について理解する

インスタンス ビューの応答の patchStatus セクションでは、最新の評価と VM の最後のパッチのインストールに関する詳細が提供されます。

VM の評価結果は、availablePatchSummary セクションで確認できます。 評価は、VM ゲストの自動パッチ適用が有効になっている VM に対して定期的に実行されます。 評価後に使用可能なパッチの数は criticalAndSecurityPatchCountotherPatchCount の結果として表示されます。 VM ゲストの自動パッチ適用により、 [重大] および [セキュリティ] パッチの分類で評価されたすべてのパッチがインストールされます。 その他の評価済みのパッチはスキップされます。

VM のパッチのインストール結果は、lastPatchInstallationSummary セクションで確認できます。 このセクションでは、インストール済み、保留中、失敗、またはスキップされたパッチの数などを含む、VM で最後に試行されたパッチのインストールの詳細について説明します。 パッチは、VM のピーク外の時間帯のメンテナンス期間中にのみインストールされます。 保留中および失敗したパッチは、次のピーク外の時間帯のメンテナンス期間中に自動的に再試行されます。

VM ゲストの自動パッチ適用を無効化する

VM ゲストの自動パッチ適用は、VM のパッチ オーケストレーション モードを変更することで無効にできます。

Linux VM で VM ゲストの自動パッチ適用を無効にするには、パッチ モードを ImageDefault に変更します。

Windows VM では VM ゲストの自動パッチ適用を有効にするために、osProfile.windowsConfiguration.enableAutomaticUpdates プロパティによって VM でどのパッチ モードを設定できるかが決定されています。このプロパティは VM の最初の作成時にのみ設定できます。 これは、特定のパッチ モードの切り替えに影響します。

  • osProfile.windowsConfiguration.enableAutomaticUpdates=false となっている VM の場合、パッチ モードを Manual に変更すると、VM ゲストの自動パッチ適用が無効になります。
  • osProfile.windowsConfiguration.enableAutomaticUpdates=true となっている VM の場合、パッチ モードを AutomaticByOS に変更すると、VM ゲストの自動パッチ適用が無効になります。
  • AutomaticByOS モードと Manual モードの切り替えはサポートされていません。

API、PowerShell、CLI の使用例については、この記事の有効化のセクションに記載された例を使用して、必要なパッチ モードを設定してください。

オンデマンドのパッチ評価

VM に対して VM ゲストの自動パッチ適用が既に有効になっている場合は、VM のピーク外の時間帯に定期的なパッチの評価が実行されます。 このプロセスは自動的に行われ、このドキュメントで既に説明したように、VM のインスタンス ビューで最新の評価の結果を確認できます。 また、いつでも VM に対してオンデマンドのパッチ評価をトリガーすることもできます。 パッチの評価が完了するまで数分かかることがあります。また、最新の評価の状態は、VM のインスタンス ビューに更新されます。

Note

オンデマンドのパッチ評価では、パッチ インストールは自動的にトリガーされません。 VM ゲストの自動パッチ適用を有効にすると、評価された適用可能な VM のパッチは、このドキュメントで既に説明した可用性優先のパッチ適用プロセスに従って、VM のピーク外の時間帯にインストールされます。

REST API

Assess Patches API を使用して、仮想マシンで利用可能なパッチを評価します。

POST on `/subscriptions/subscription_id/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine/assessPatches?api-version=2020-12-01`

Azure PowerShell

Invoke-AzVmPatchAssessment コマンドレットを使用して、仮想マシンで利用可能なパッチを評価します。

Invoke-AzVmPatchAssessment -ResourceGroupName "myResourceGroup" -VMName "myVM"

Azure CLI

az vm assess-patches を使用して、仮想マシンで利用可能なパッチを評価します。

az vm assess-patches --resource-group myResourceGroup --name myVM

オンデマンドのパッチ インストール

VM に対して VM ゲストの自動パッチ適用が既に有効になっている場合は、VM のピーク外の時間帯にセキュリティおよび重大パッチの定期的なインストールが実行されます。 このプロセスは自動的に行われ、このドキュメントで既に説明したように、VM のインスタンス ビューで最新のインストールの結果を確認できます。

また、いつでも VM に対して、オンデマンドのパッチ インストールをトリガーすることもできます。 パッチのインストールが完了するまで数分かかることがあります。また、最新のインストールの状態は、VM のインスタンス ビューで更新されます。

オンデマンドのパッチ インストールを使用して、1 つ以上のパッチ分類のすべてのパッチをインストールできます。 また、Linux 用の特定のパッケージまたは Windows 用の特定の KB ID を含めるか、除外するかを選択することもできます。 オンデマンドのパッチ インストールをトリガーする場合は、少なくとも 1 つのパッチ分類または少なくとも 1 つのパッチ (Linux の場合はパッケージ、Windows の場合は KB ID) をインクルード リストに指定してください。

REST API

Install Patches API を使用して、仮想マシンにパッチをインストールします。

POST on `/subscriptions/subscription_id/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine/installPatches?api-version=2020-12-01`

Linux での要求本文の例:

{
  "maximumDuration": "PT1H",
  "rebootSetting": "IfRequired",
  "linuxParameters": {
    "classificationsToInclude": [
      "Critical",
      "Security"
    ]
  }
}

Windows での要求本文の例:

{
  "maximumDuration": "PT1H",
  "rebootSetting": "IfRequired",
  "windowsParameters": {
    "classificationsToInclude": [
      "Critical",
      "Security"
    ]
  }
}

Azure PowerShell

Invoke-AzVMInstallPatch コマンドレットを使用して、仮想マシンにパッチをインストールします。

Linux VM に特定のパッケージをインストールする例:

Invoke-AzVmInstallPatch -ResourceGroupName "myResourceGroup" -VMName "myVM" -MaximumDuration "PT90M" -RebootSetting "Always" -Linux -ClassificationToIncludeForLinux "Security" -PackageNameMaskToInclude ["package123"] -PackageNameMaskToExclude ["package567"]

すべての重大パッチを Windows VM にインストールする例:

Invoke-AzVmInstallPatch -ResourceGroupName "myResourceGroup" -VMName "myVM" -MaximumDuration "PT2H" -RebootSetting "Never" -Windows   -ClassificationToIncludeForWindows Critical

Windows VM にすべてのセキュリティ パッチをインストールする一方で、特定の KB ID のパッチを含め、および除外し、再起動を必要とするパッチを除外する例:

Invoke-AzVmInstallPatch -ResourceGroupName "myResourceGroup" -VMName "myVM" -MaximumDuration "PT90M" -RebootSetting "Always" -Windows -ClassificationToIncludeForWindows "Security" -KBNumberToInclude ["KB1234567", "KB123567"] -KBNumberToExclude ["KB1234702", "KB1234802"] -ExcludeKBsRequiringReboot

Azure CLI

az vm install-patches を使用して、仮想マシンにパッチをインストールします。

Linux VM にすべての重大パッチをインストールする例:

az vm install-patches --resource-group myResourceGroup --name myVM --maximum-duration PT2H --reboot-setting IfRequired --classifications-to-include-linux Critical

再起動が必要なパッチを除外しながら、Windows VM にすべての重大およびセキュリティのパッチをインストールする例:

az vm install-patches --resource-group myResourceGroup --name myVM --maximum-duration PT2H --reboot-setting IfRequired --classifications-to-include-win Critical Security --exclude-kbs-requiring-reboot true

Canonical のイメージへの厳密で安全なデプロイ

Microsoft と Canonical は提携しました。これにより、お客様の Linux OS の更新プログラムを最新の状態に保ち、Azure 上の Ubuntu ワークロードのセキュリティと回復性を高めます。 Canonical のスナップショット サービスを利用することにより、Azure はリージョン間で同じ Ubuntu 更新プログラムのセットを一貫してフリートに適用するようになりました。

Azure では、利用可能な領域に応じて、パッケージ関連の更新プログラムが顧客リポジトリ内に最大 90 日間格納されます。 これにより、お客様は、更新プログラムで最大 3 か月遅れている VM の厳密で安全なデプロイを利用して、フリートを更新できます。

パッチの自動適用を有効にしているお客様には、アクションは必要ありません。 プラットフォームは、既定でポイントインタイムにスナップされるパッケージをインストールします。 スナップショットベースの更新プログラムをインストールできない場合、Azure は VM に最新のパッケージを適用して、VM のセキュリティを確保します。 ポイントインタイムの更新は、リージョン間のすべての VM で整合性があり、同一性を確保します。 お客様は、適用された更新プログラムに関連する公開日情報を Azure Resource Graph および VM のインスタンス ビューで確認できます。

イメージのサポート終了 (EOL)

発行元は、特定の日付以降、イメージの新しい更新プログラムの生成をサポートしなくなります。 これは一般に、イメージのサポート終了 (EOL) と呼ばれます。 Azure では、EOL の日付以降にそのイメージを使用することはお勧めしません。これは、サービスがセキュリティの脆弱性やパフォーマンスの問題にさらされるためです。 Azure ゲスト パッチ サービス (AzGPS) により、お客様と影響を受けるパートナーに対して必要な手順が通知されます。 AzGPS により、サポート リストからイメージが削除されます (EOL の日付以降)。 Azure でサポートが終了したイメージを使用している VM は、その日付を過ぎても動作し続ける場合があります。 ただし、これらの VM で発生した問題はサポートの対象ではありません。

次のステップ