Azure Virtual Machines 및 확장 집합에 대한 자동 게스트 패치
적용 대상: ✔️ Linux VM ✔️ Windows VM ✔️ 유연한 확장 집합
Azure VM(Virtual Machines) 및 VMSS(확장 집합)에 대해 자동 게스트 패치를 사용하도록 설정하면 Virtual Machines를 안전하게 자동으로 패치하여 보안 규정 준수를 유지하는 동시에 VM의 폭발 반경을 제한함으로써 업데이트 관리가 쉬워집니다.
자동 VM 게스트 패치의 특징은 다음과 같습니다.
- 중요 또는 보안으로 분류된 패치가 자동으로 다운로드되어 VM에 적용됩니다.
- 패치는 VM 표준 시간대의 IaaS VM에 대해 사용량이 적은 시간 동안 적용됩니다.
- VMSS Flex의 경우 패치가 모든 시간 동안 적용됩니다.
- Azure는 패치 오케스트레이션을 관리하고 가용성 우선 원칙을 따릅니다.
- 패치 실패를 검색하기 위해 플랫폼 상태 신호를 통해 결정되는 가상 머신 상태를 모니터링합니다.
- 애플리케이션 상태는 애플리케이션 상태 확장을 통해 모니터링할 수 있습니다.
- 모든 VM 크기에 사용할 수 있습니다.
자동 VM 게스트 패치는 어떻게 작동하나요?
VM에서 자동 VM 게스트 패치를 사용하도록 설정하면 사용 가능한 중요 및 보안 패치가 자동으로 VM에 다운로드되고 적용됩니다. 이 프로세스는 새 패치가 릴리스될 때마다 매월 자동으로 시작됩니다. 패치 평가 및 설치는 자동으로 이루어지며 프로세스에는 구성된 대로 VM 다시 부팅이 포함됩니다. VM 모델의 bootSetting 매개 변수는 유지 관리 구성과 같은 다른 시스템의 설정보다 우선합니다.
VM은 해당 VM에 대해 적용 가능한 패치를 결정하기 위해 며칠마다 주기적으로, 30일 동안 여러 번 평가됩니다. 패치는 VM에서 어느 날이든 VM에 대한 사용량이 적은 시간에 설치할 수 있습니다. 이러한 자동 평가를 통해 가능한 가장 빠른 기회에 누락된 패치를 검색할 수 있습니다.
패치는 가용성 우선 오케스트레이션에 따라 월간 패치 릴리스로부터 30일 이내에 설치됩니다. 패치는 VM의 표준 시간대에 따라 VM 사용률이 낮은 시간에만 설치됩니다. 패치를 자동으로 설치하려면 사용량이 많지 않은 시간 중 VM이 실행 중이어야 합니다. 정기 평가 중에 VM의 전원이 꺼지면 플랫폼은 VM의 전원이 켜질 때 다음 정기 평가(보통 며칠 이내) 동안 자동으로 패치(필요한 경우)를 평가하고 적용합니다.
중요 또는 보안으로 분류되지 않은 정의 업데이트 및 기타 패치는 자동 VM 게스트 패치를 통해 설치되지 않습니다. 다른 패치 분류를 사용하여 패치를 설치하거나 사용자 자신의 사용자 지정 유지 관리 기간 내에 패치 설치를 예약하려면 업데이트 관리를 사용할 수 있습니다.
유연한 오케스트레이션 모드에서 단일 인스턴스 VM 또는 Virtual Machine Scale Sets에 자동 게스트 패치를 사용하도록 설정하면 Azure 플랫폼에서 집합을 단계적으로 업데이트할 수 있습니다. 단계적 배포는 Azure의 안전한 배포 사례를 따르며 최신 업데이트에서 문제가 확인되면 영향 받는 범위가 줄어듭니다. 상태 모니터링은 단일 인스턴스 VM에 권장되며 업데이트 관련 문제를 검색하기 위해 유연한 오케스트레이션 모드의 Virtual Machine Scale Sets에 필요합니다.
가용성 우선 업데이트
Azure는 자동 게스트 패치를 사용하도록 설정한 VM에 대해 모든 퍼블릭 클라우드 및 프라이빗 클라우드에서 패치 설치 프로세스를 오케스트레이션합니다. 오케스트레이션은 Azure에서 제공하는 다양한 가용성 수준에서 가용성 우선 원칙을 따릅니다.
Azure 플랫폼은 업데이트를 진행 중인 가상 머신 그룹을 대상으로 업데이트를 오케스트레이션합니다.
지역 간:
- 월간 업데이트는 글로벌 배포 실패를 방지하기 위해 전역적으로 단계별 방식으로 Azure 전체에 걸쳐 오케스트레이션됩니다.
- 단계에는 지역이 하나 이상 존재할 수 있으며, 업데이트는 한 단계의 적격 VM의 업데이트가 성공했을 때만 다른 단계로 이동합니다.
- 지리적으로 쌍을 이루는 지역은 동시에 업데이트되지 않으며 동일한 지역적 단계에 존재할 수 없습니다.
- 업데이트 성공 여부는 VM 사후 업데이트 상태를 추적하여 결정합니다. VM 상태는 VM에 대한 플랫폼 상태 표시기를 통해 추적합니다.
지역 내에서:
- 서로 다른 가용성 영역에 있는 VM은 동일한 업데이트로 동시에 업데이트되지 않습니다.
- 가용성 집합에 속하지 않는 VM은 최대한 일괄 처리되어 구독에 있는 모든 VM이 동시에 업데이트되지 않게 합니다.
가용성 집합 내:
- 공통 가용성 집합의 모든 VM은 동시에 업데이트되지 않습니다.
- 공통 가용성 집합의 VM은 업데이트 도메인 경계 내에서 업데이트되며, 여러 업데이트 도메인의 VM은 동시에 업데이트되지 않습니다.
- 업데이트 도메인에서 가용성 집합 내의 VM 중 20% 이하가 한 번에 업데이트됩니다. VM이 10개 미만인 가용성 집합의 경우 VM은 업데이트 도메인 내에서 한 번에 하나씩 업데이트됩니다.
지역 간, 지역 내 또는 가용성 집합 내에서 동시에 패치된 VM 수를 제한하면 지정된 VM 집합에 결함이 있는 패치가 미치는 영향을 제한합니다. 상태 모니터링을 사용하면 잠재적인 문제가 전체 워크로드에 영향을 미치기 전에 플래그가 지정됩니다.
특정 VM은 월별 패치 주기 사이에 다른 일괄 처리에서 선택될 수 있으므로 지정된 VM의 패치 설치 날짜는 월별로 다를 수 있습니다.
어떤 패치가 설치됩니까?
설치되는 패치는 VM의 출시 단계에 따라 달라집니다. 매월 새 글로벌 출시가 시작되며 여기에서 개별 VM에 대해 평가된 모든 보안 및 중요 패치가 해당 VM에 설치됩니다. 롤아웃은 모든 Azure 지역에서 일괄 처리로 오케스트레이션됩니다.
설치할 정확한 패치 집합은 OS 유형 및 평가 타이밍을 포함하여 VM 구성에 따라 달라집니다. 패치 오케스트레이션이 서로 다른 시간에 다른 지역에 도달할 때 사용 가능한 패치가 어느 정도 있는 경우 다른 지역에 있는 두 개의 동일한 VM에 다른 패치가 설치될 수 있습니다. 마찬가지로 하지만 빈번하지 않게 동일한 지역 내에 있지만 다른 시간에 평가된(가용성 영역 또는 가용성 집합 일괄 처리로 인해) VM은 서로 다른 패치를 얻을 수 있습니다.
자동 VM 게스트 패치는 패치 원본을 구성하지 않으므로 퍼블릭 리포지토리와 프라이빗 리포지토리와 같은 다른 패치 원본에 구성된 두 개의 유사한 VM은 설치된 정확한 패치 집합에서 차이를 보일 수 있습니다.
고정된 주기에서 패치를 해제하는 OS 유형의 경우 OS에 대한 퍼블릭 리포지토리에 구성된 VM은 한 달에 다양한 출시 단계에서 동일한 패치 집합을 받을 수 있습니다. 예를 들어, 퍼블릭 Windows 업데이트 리포지토리에 구성된 Windows VM이 있습니다.
매월 새 출시가 트리거되면 VM이 전원이 켜진 경우 사용량이 적은 시간에 매월 하나 이상의 패치 출시를 수신합니다. 이렇게 되면 월 기준으로 사용 가능한 최신 보안 및 중요 패치가 VM에 패치됩니다. 설치된 패치 집합의 일관성을 보장하기 위해 사용자 고유의 프라이빗 리포지토리에서 패치를 평가하고 다운로드하도록 VM을 구성할 수 있습니다.
지원되는 OS 이미지
Important
자동 VM 게스트 패치, 주문형 패치 평가 및 주문형 패치 설치는 아래 지원되는 OS 이미지 목록에서 게시자, 제품 및 SKU의 정확한 조합을 사용하여 이미지에서 만든 VM에서만 지원됩니다. 사용자 지정 이미지 또는 기타 게시자, 제품, SKU 조합은 지원되지 않습니다. 더 많은 이미지가 주기적으로 추가됩니다. 목록에 SKU가 표시되지 않나요? 이미지 지원 요청을 작성하여 지원을 요청합니다.
게시자 | 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 |
Canonical | 0001-com-ubuntu-server-focal | 20_04-lts |
Canonical | 0001-com-ubuntu-server-focal | 20_04-lts-gen2 |
Canonical | 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으로 설정됩니다.
수동:
- 이 모드는 Windows VM에 대해서만 지원됩니다.
- 이 모드는 Windows 가상 머신에서 자동 업데이트를 사용하지 않도록 설정합니다. CLI 또는 PowerShell을 사용하여 VM을 배포할 때
--enable-auto-updates
를false
로 설정하면patchMode
도manual
로 설정되고 자동 업데이트가 사용하지 않도록 설정됩니다. - 이 모드는 가용성 우선 패치를 지원하지 않습니다.
- 사용자 지정 패치 솔루션을 사용하는 경우 이 모드를 설정해야 합니다.
- 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
속성을 설정합니다.
참고 항목
Windows VM의 경우에는 VM을 처음 만들 때만 osProfile.windowsConfiguration.enableAutomaticUpdates
속성을 설정할 수 있습니다. 이렇게 하면 특정 패치 모드 전환에 영향을 줍니다. AutomaticByPlatform 와 수동모드 간의 전환은 osProfile.windowsConfiguration.enableAutomaticUpdates=false
가 있는 VM에서 지원됩니다. 마찬가지로 AutomaticByPlatform 및 AutomaticByOS 모드 간의 전환은 osProfile.windowsConfiguration.enableAutomaticUpdates=true
가 있는 VM에서 지원됩니다. AutomaticByOS와 수동 모드 간 전환은 지원되지 않습니다.
Azure에서는 패치 적용을 위해 Azure Orchestration이 사용하도록 설정되지 않은 경우에도 VM에서 평가 모드를 사용하도록 설정하는 것이 좋습니다. 이를 통해 플랫폼은 보류 중인 업데이트가 있는지 24시간마다 VM을 평가하고 Azure Resource Graph에 세부 정보를 저장할 수 있습니다. 플랫폼은 컴퓨터의 원하는 패치 구성 상태가 적용되거나 확인되면 통합 결과를 보고하기 위해 평가를 수행합니다. 이는 '플랫폼' 시작 평가로 보고됩니다.
자동 VM 게스트 패치를 사용하기 위한 요구 사항
- 가상 머신에는 Windows 또는 Linux용 Azure VM 에이전트가 설치되어 있어야 합니다.
- Linux VM의 경우 Azure Linux 에이전트는 2.2.53.1 이상 버전이어야 합니다. 현재 버전이 필요한 버전보다 낮은 경우 Linux 에이전트를 업데이트합니다.
- Windows VM의 경우 가상 머신에서 Windows 업데이트 서비스가 실행 중이어야 합니다.
- 가상 머신은 구성된 업데이트 엔드포인트에 액세스할 수 있어야 합니다. 가상 머신이 Linux용 프라이빗 리포지토리를 사용하도록 구성되어 있거나 Windows VM에 대해 WSUS(Windows Server Update Services)를 사용하도록 구성된 경우 관련 업데이트 엔드포인트에 액세스할 수 있어야 합니다.
- 컴퓨팅 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을 만들 때 Set-AzVMOperatingSystem cmdlet을 사용하여 자동 VM 게스트 패치를 사용하도록 설정합니다.
Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate -PatchMode "AutomaticByPlatform"
Windows VM을 업데이트할 때 Azure PowerShell
Set-AzVMOperatingSystem 및 Update-AzVM cmdlet을 사용하여 기존 VM에서 자동 VM 게스트 패치를 사용하도록 설정합니다.
$VirtualMachine = Get-AzVM -ResourceGroupName "myResourceGroup" -Name "myVM"
Set-AzVMOperatingSystem -VM $VirtualMachine -PatchMode "AutomaticByPlatform"
Update-AzVM -VM $VirtualMachine
Windows VM용 Azure CLI
새 VM을 만들 때 az vm create를 사용하여 자동 VM 게스트 패치를 사용하도록 설정합니다. 다음 예제에서는 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용 관리 탭에서 패치 오케스트레이션 모드를 설정할 수 있습니다.
활성화 및 평가
참고 항목
VM의 사용량이 적은 시간에 활성화가 완료되므로 VM에서 자동 VM 게스트 업데이트를 사용하도록 설정하는 데 3시간 이상 걸릴 수 있습니다. 평가 및 패치 설치는 사용량이 적은 시간에만 발생하므로 패치를 적용하려면 VM이 사용량이 적은 시간에도 실행하고 있어야 합니다.
VM에 대해 자동 VM 게스트 패치를 사용하도록 설정하는 경우 Microsoft.CPlat.Core.LinuxPatchExtension
형식의 VM 확장은 Linux VM에 설치되고 Microsoft.CPlat.Core.WindowsPatchExtension
형식의 VM 확장은 Windows VM에 설치됩니다. 이 확장은 자동 VM 게스트 패치 프로세스의 일부로 Azure 플랫폼에서 관리되므로 수동으로 설치하거나 업데이트할 필요가 없습니다.
VM의 사용량이 적은 시간에 활성화가 완료되므로 VM에서 자동 VM 게스트 업데이트를 사용하도록 설정하는 데 3시간 이상 걸릴 수 있습니다. 확장은 또한 VM의 사용량이 적은 시간에 설치되고 업데이트됩니다. VM의 사용량이 적은 시간이 끝난 다음 활성화를 완료할 수 있는 경우 활성화 프로세스는 다음 사용 가능한 사용량이 적은 시간에 다시 시작됩니다.
플랫폼은 IaaS VM 또는 유연한 오케스트레이션의 확장 집합에서 모델 변경 내용이 검색될 때 맞춤을 보장하기 위해 정기적인 패치 구성 호출을 수행합니다. 평가 모드, 패치 모드 및 확장 업데이트 업데이트와 같은 특정 모델 변경은 패치 구성 호출을 트리거할 수 있습니다.
자동 업데이트는 대부분의 시나리오에서 사용하지 않으며, 패치 설치는 앞으로 확장을 통해 수행됩니다. 다음 조건이 적용됩니다.
- Windows VM에서 이전에 AutomaticByOS 패치 모드를 통해 자동 Windows 업데이트가 켜진 경우 확장을 설치할 때 VM에 대해 자동 Windows 업데이트가 꺼집니다.
- Ubuntu VM의 경우 자동 VM 게스트 패치가 활성화 완료되면 기본 자동 업데이트가 자동으로 사용하지 않도록 설정됩니다.
- RHEL의 경우 자동 업데이트를 수동으로 사용하지 않도록 설정해야 합니다. 실행:
sudo systemctl stop packagekit
sudo systemctl mask packagekit
자동 VM 게스트 패치가 완료되었고 패치 확장이 VM에 설치되었는지 확인하려면 VM의 인스턴스 보기를 검토하면 됩니다. 활성화 프로세스가 완료되면 확장이 설치되고 VM에 대한 평가 결과는 patchStatus
에서 확인 가능하게 됩니다. 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 cmdlet를 사용하여 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에 대한 평가는 주기적으로 수행됩니다. 평가 후 사용 가능한 패치 수는 criticalAndSecurityPatchCount
및 otherPatchCount
결과 아래에서 제공됩니다. 자동 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와 수동 모드 간 전환은 지원되지 않습니다.
API, PowerShell 및 CLI 사용 예에서 필요한 패치 모드를 설정하려면 이 문서에 있는 사용 설정 섹션에 있는 예를 사용하세요.
주문형 패치 평가
VM에 대해 자동 VM 게스트 패치를 이미 사용하도록 설정한 경우 VM의 사용량이 적은 시간에 VM에 대한 주기적인 패치 평가가 수행됩니다. 이 프로세스는 자동으로 진행되며 이 문서의 앞부분에서 설명한 대로 VM의 인스턴스 보기를 통해 최신 평가 결과를 검토할 수 있습니다. 언제든지 VM에 대한 주문형 패치 평가를 트리거할 수도 있습니다. 패치 평가를 완료하는 데 몇 분 정도 걸릴 수 있으며 VM의 인스턴스 보기에서 최신 평가의 상태가 업데이트됩니다.
참고 항목
주문형 패치 평가는 자동으로 패치 설치를 트리거하지 않습니다. 자동 VM 게스트 패치를 사용하도록 설정한 경우 이 문서의 앞부분에서 설명한 가용성 우선 패치 프로세스에 따라 VM의 사용량이 적은 시간에 VM에 대해 평가되고 적용 가능한 패치가 설치됩니다.
REST API
패치 평가 API를 사용하여 가상 머신에 대해 사용 가능한 패치를 평가합니다.
POST on `/subscriptions/subscription_id/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine/assessPatches?api-version=2020-12-01`
Azure PowerShell
Invoke-AzVmPatchAssessment cmdlet를 사용하여 가상 머신에 대한 사용 가능한 패치를 평가합니다.
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에 대한 주문형 패치 설치를 트리거할 수도 있습니다. 패치 설치를 완료하는 데 몇 분 정도 걸릴 수 있으며 VM의 인스턴스 보기에서 최신 설치의 상태가 업데이트됩니다.
주문형 패치 설치를 사용하여 하나 이상의 패치 분류의 모든 패치를 설치할 수 있습니다. Linux에 대한 특정 패키지 또는 특정 Windows에 대한 KB ID를 포함하거나 제외하도록 선택할 수 있습니다. 주문형 패치 설치를 트리거할 때 포함 목록에서 하나 이상의 패치 분류 또는 하나 이상의 패치(Linux에 대한 패키지, Windows에 대한 KB ID)를 지정해야 합니다.
REST API
패치 설치 API를 사용하여 가상 머신에 패치를 설치합니다.
POST on `/subscriptions/subscription_id/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVirtualMachine/installPatches?api-version=2020-12-01`
Linux에 대한 요청 본문 예제:
{
"maximumDuration": "PT1H",
"Setting": "IfRequired",
"linuxParameters": {
"classificationsToInclude": [
"Critical",
"Security"
]
}
}
Windows에 대한 요청 본문 예제:
{
"maximumDuration": "PT1H",
"rebootSetting": "IfRequired",
"windowsParameters": {
"classificationsToInclude": [
"Critical",
"Security"
]
}
}
Azure PowerShell
Invoke-AzVMInstallPatch cmdlet을 사용하여 가상 머신에 패치를 설치합니다.
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
정식 이미지에 대한 엄격한 안전 배포
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 날짜 이후의 이미지 사용을 권장하지 않습니다. AzGPS(Azure 게스트 패치 서비스)는 고객과 영향을 받는 파트너에게 필요한 단계를 전달합니다. AzGPS는 EOL 날짜 이후 지원 목록에서 이미지를 제거합니다. Azure에서 수명 종료 이미지를 사용하는 VM은 해당 날짜 이후에도 계속 작동할 수 있습니다. 그러나 이러한 VM에서 발생한 문제는 지원 대상이 아닙니다.