Configurare l’applicazione automatica di patch per le macchine virtuali Windows in Azure
Da pochissimi giorni è disponibile in preview pubblica in Microsoft Azure una funzionalità che permette di aggiornare automaticamente le macchine Windows, consentendo di semplificare la gestione degli aggiornamenti con l’applicazione di patch alle macchine virtuali in modo sicuro e automatico per garantire la conformità e aumentare il livello di sicurezza di tutta l’infrastruttura.
Le patch di sicurezza e critiche disponibili vengono scaricate e applicate automaticamente nella macchina virtuale. Per installare patch che hanno altre classificazioni patch o pianificare l’installazione di patch all’interno della finestra di manutenzione personalizzata, è possibile usare Gestione aggiornamenti.
La valutazione e l’installazione delle patch sono automatiche e il processo include anche il riavvio della macchina virtuale se è necessario.
La macchina virtuale viene valutata periodicamente per determinare le patch applicabili, che possono essere installate ogni giorno nella macchina virtuale SOLO durante gli orari di minore traffico per la macchina virtuale. Questa valutazione automatica garantisce che tutte le patch mancanti vengano individuate alla prima possibile opportunità. Le patch vengono installate entro 30 giorni dalla versione di Windows Update mensile.
Il processo di installazione della patch viene orchestrato a livello globale da Azure per tutte le macchine virtuali in cui è abilitata l’applicazione automatica delle patch, facendo in modo che le macchine virtuali in zone di disponibilità (availability zone) diverse o in un set di disponibilità (availability set) non vengano aggiornate simultaneamente.
Immagini del sistema operativo supportate
Nell’anteprima di questa funzionalità sono supportate solo le macchine virtuali create dal marketplace di Azure e che hanno le seguenti versioni:
- Windows Server 2012 R2 Datacenter
- Windows Server 2016 Datacenter
- Windows Server 2016 Datacenter Core
- Windows Server 2019 Datacenter
- Windows Server 2019 Datacenter Core
Le immagini personalizzate NON sono attualmente supportate nell’anteprima.
Abilitazione della funzionalità di patching automatico
Già durante la creazione di una nuova macchina virtuale è possibile verificare che nel wizard viene proposta la Patch Installation, come mostrato in figura:
Figura 1: Patch Installation proposta nel wizar did creazione di una nuova VM
Come si può vedere dalla figura sopra, la modalità suggerita di default è OS-orchestrated patching, cioè le patch vengono installate nella VM tramite Aggiornamenti automatici.
La seconda modalità disponibile è Manual patching: questa modalità disabilita gli Aggiornamenti automatici nella macchina virtuale Windows.
- La terza modalità, oggetto di questo articolo, è Azure-orchestrated patching (preview): questa modalità consente l’applicazione automatica delle patch per la macchina virtuale Windows e l’installazione della patch successiva è orchestrata da Azure. L’impostazione di questa modalità disabilita inoltre la Aggiornamenti automatici nativa nella macchina virtuale Windows per evitare la duplicazione.
NOTA: L’applicazione automatica delle patch per le macchine virtuali Windows è attualmente disponibile in anteprima pubblica. Per usare la funzionalità è necessaria una procedura di consenso esplicito. Questa versione di anteprima viene messa a disposizione senza contratto di servizio e non è consigliata per i carichi di lavoro di produzione.
Attivazione della funzionalità Azure-orchestrated patching (preview)
Per attivare la funzionalità è necessario lanciare in Azure Cloud Shell o nella vostra postazione di lavoro i seguenti comandi PowerShell:
1 2 3 4 5 6 7 8 |
#Per abilitare la funzionalità di anteprima, è necessario un unico consenso esplicito per la funzionalità InGuestAutoPatchVMPreview per sottoscrizione Register-AzProviderFeature -FeatureName InGuestAutoPatchVMPreview -ProviderNamespace Microsoft.Compute #La registrazione delle funzionalità può richiedere fino a 15 minuti. Per verificare lo stato della registrazione Get-AzProviderFeature -FeatureName InGuestAutoPatchVMPreview -ProviderNamespace Microsoft.Compute #Una volta registrata la funzionalità per la sottoscrizione, completare il processo di consenso esplicito propagando la modifica nel provider di risorse di calcolo Register-AzResourceProvider -ProviderNamespace Microsoft.Compute |
Figura 2: Consenso esplicito all’utilizzo della funzionalita di auto patching delle VM
Da questo momento in poi nel wizard di creazione di una nuova VM avrete la possibilità di scegliere l’Azure-orchestrated patching
Figura 3: L’Azure-orchestrated patching è stato abilitato ed è disponibile nel wizard di creazione di una nuova Azure VM
Se vi collegate alla Azure VM e controllate dall’App Settings le configurazioni di Windows Update noterete sicuramente che sono disattivati, come ci aspettavamo che avvenisse. La disattivazione degli Aggiornamenti automatici evita che ci siano operazioni duplicate sugli aggiornamenti.
Figura 4: Gli Aggiornamenti automatici sono stati disabilitati nella Azure VM in modo tale che vengano gestiti da Azure
NOTA: Potrebbero essere necessarie più di tre ore per abilitare gli aggiornamenti automatici dei guest VM in una macchina virtuale, in quanto l’abilitazione viene completata durante le ore di minore traffico della macchina virtuale. Poiché la valutazione e l’installazione delle patch si verificano solo durante le ore non di punta, la macchina virtuale deve essere in esecuzione durante gli orari di minore traffico per applicare le patch.
È anche possibile attivare una valutazione delle patch su richiesta per la macchina virtuale in qualsiasi momento. La valutazione della patch può richiedere alcuni minuti per il completamento e lo stato dell’ultima valutazione viene aggiornato nella visualizzazione dell’istanza della macchina virtuale.
1 |
Invoke-AzVmPatchAssessment -ResourceGroupName "myResourceGroup" -VMName "myVM" |
Abilitazione dell’applicazione automatica della patch per le VM già esistenti
Per abilitare l’applicazione automatica delle patch durante la creazione o per aggiornare la configurazione di una macchina virtuale già esistente è necessario usare la cmdlet Set-AzVMOperatingSystem
1 2 3 4 5 |
$VirtualMachine = Get-AzVM -ResourceGroupName "myResourceGroup" -VMName "myVM" $ComputerName = "myVMNETBIOSName" $Credential = Get-Credential Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate -PatchMode "AutomaticByPlatform" |
Figura 5: Abilitazione del patching automatico per una Azure VM già esistente
Conclusioni
Per semplificare l’applicazione delle patch alle macchine virtuali di Azure, è disponibile una nuova opzione denominata Automatic VM guest patching, che aiuta a gestire gli aggiornamenti applicando automaticamente e in modo sicuro patch alle macchine virtuali per mantenere la conformità della sicurezza. Con questa modalità di gestione delle patch la VM viene valutata periodicamente per verificare la disponibilità di patch del sistema operativo e gli aggiornamenti classificati come “Critici” o “Sicurezza” vengono automaticamente scaricati e installati sulla VM durante le ore non di punta. Questa orchestrazione delle patch viene gestita da Azure e le patch vengono applicate non appena vengono rilasciate da Microsoft.