Hotpatching di Windows Server: una rivoluzione nella gestione delle macchine virtuali

Nell’era digitale, assicurare una continuità operativa è essenziale, non più solo un valore aggiunto. Per molte aziende, interruzioni frequenti, anche di breve durata, sono inaccettabili per i loro workload critici. Tuttavia, garantire tale continuità può risultare complesso, considerando che la gestione delle macchine virtuali (VM) con sistema operativo Windows Server è per certi aspetti complessa, soprattutto in relazione all’applicazione di patch di sicurezza e aggiornamenti. Con l’avvento della funzionalità di hotpatching da parte di Microsoft, si è aperto un nuovo capitolo nella gestione delle VM: un approccio più efficiente che minimizza le interruzioni, garantendo server sempre aggiornati e protetti. Questo articolo esamina le caratteristiche e i vantaggi di questa innovativa soluzione.

Cos’è l’Hotpatching?

L’hotpatching, introdotto da Microsoft, è una tecnica avanzata che consente di aggiornare sistemi operativi Windows Server senza la necessità di effettuare un riavvio. Immagina di poter “cambiare le gomme” della tua auto in movimento senza doverla fermare. Questa è la “magia” dell’hotpatching.

Dove è possibile utilizzare l’Hotpatching

La funzionalità Hotpatch è supportata sul sistema operativo “Windows Server 2022 Datacenter: Azure Edition”, che è possibile utilizzarlo per le VM che girano in ambiente Azure ed Azure Stack HCI.

Le immagini Azure disponibili per questa funzionalità sono:

  • Windows Server 2022 Datacenter: Azure Edition Hotpatch (Desktop Experience)
  • Windows Server 2022 Datacenter: Azure Edition Core

Da notare che Hotpatch è attivato di default sulle immagini Server Core e che Microsoft ha recentemente esteso il supporto all’hotpatching per includere Windows Server con Desktop Experience, ampliando ulteriormente il campo di applicazione di questa funzionalità.

Aggiornamenti supportati

Hotpatch copre gli aggiornamenti di sicurezza di Windows e mantiene un allineamento con il contenuto degli aggiornamenti di sicurezza emessi nel canale di aggiornamento Windows regolare (non hotpatch).

Ci sono alcune considerazioni importanti per l’esecuzione di una VM Windows Server Azure Edition con hotpatch abilitato:

  • i riavvii sono ancora necessari per installare gli aggiornamenti che non sono inclusi nel programma hotpatch;
  • i riavvii sono anche richiesti periodicamente dopo che è stata installata una nuova baseline;
  • i riavvii mantengono la VM sincronizzata con le patch non di sicurezza incluse nell’ultimo aggiornamento cumulativo.

Le patch attualmente non incluse nel programma hotpatch includono aggiornamenti non di sicurezza rilasciati per Windows, aggiornamenti .NET e aggiornamenti non-Windows (come driver, aggiornamenti firmware, ecc.). Questi tipi di patch potrebbero richiedere un riavvio durante i mesi di Hotpatch.

Benefici dell’Hotpatching

I benefici di questa tecnologia sono molteplici:

  • Migliore sicurezza: con l’hotpatching, le patch di sicurezza vengono applicate in modo rapido ed efficiente. Questo riduce la finestra di vulnerabilità tra il rilascio di una patch e la sua applicazione, offrendo una protezione rapida contro le minacce.
  • Minimizzazione del downtime: uno dei principali vantaggi dell’hotpatching è la capacità di applicare aggiornamenti senza la necessità di riavviare il server. Ciò significa meno interruzioni e una maggiore disponibilità per le applicazioni e per i servizi.
  • Gestione più flessibile: gli amministratori di sistema hanno la libertà di decidere quando applicare le patch, senza la preoccupazione di dover effettuare una attenta pianificazione per garantire che i processi in esecuzione non vengano interrotti durante l’applicazione degli aggiornamenti.

Come funziona l’Hotpatching

Durante un processo di hotpatching, la patch di sicurezza viene iniettata nel codice in esecuzione del sistema operativo in memoria, aggiornando il sistema mentre è ancora in funzione.

Hotpatch funziona stabilendo prima una baseline con l’attuale Aggiornamento Cumulativo per Windows Server. Periodicamente (con cadenza trimestrale), la baseline viene aggiornata con l’ultimo Aggiornamento Cumulativo, dopodiché vengono rilasciati hotpatch per i due mesi successivi. Ad esempio, se a gennaio viene rilasciato un Aggiornamento Cumulativo, febbraio e marzo vedrebbero il rilascio di hotpatch. Per il calendario di rilascio degli hotpatch, è possibile consulta le note di rilascio per Hotpatch in Azure Automanage per Windows Server 2022.

Gli hotpatch contengono aggiornamenti che non richiedono un riavvio. Poiché Hotpatch corregge il codice in memoria dei processi in esecuzione senza la necessità di riavviare il processo, le applicazioni ospitate sul sistema operativo non sono influenzate dal processo di patching. Questa azione è separata da eventuali implicazioni sulle prestazioni e sulle funzionalità della patch stessa.

L’immagine seguente riporta un esempio di un programma annuale di rilascio degli aggiornamenti (inclusi esempi di baseline non pianificate a causa di correzioni zero-day).

Figura 1 – Schema di una programmazione annuale di esempio per il rilascio degli aggiornamenti Hotpatch

Ci sono due tipi di baseline:

  • Baseline Pianificate: vengono rilasciate con una cadenza regolare, con rilasci di hotpatch nel mezzo. Le Baseline Pianificate includono tutti gli aggiornamenti in un Aggiornamento Cumulativo più recente e richiedono un riavvio.
  • Baseline Non Pianificate: vengono rilasciate quando viene rilasciato un aggiornamento importante (come una correzione zero-day) e quel particolare aggiornamento non può essere rilasciato come hotpatch. Quando vengono rilasciate le baseline non pianificate, un rilascio di hotpatch viene sostituito con una baseline non pianificata in quel mese. Anche le Baseline Non Pianificate includono tutti gli aggiornamenti in un Aggiornamento Cumulativo più recente e richiedono un riavvio.

La programmazione riportata nell’immagine di esempio illustra:

  • quattro rilasci di baseline pianificate in un anno solare (cinque in totale nel diagramma) e otto rilasci di hotpatch;
  • due baseline non pianificate che sostituirebbero i rilasci di hotpatch per quei mesi.

Processo di orchestrazione delle patch

Hotpatch è da considerate come un’estensione di Windows Update e gli strumenti di orchestrazione delle patch variano a seconda della piattaforma in uso.

Orchestrazione di Hotpatch in Azure

Le macchine virtuali create in Azure sono abilitate di default per il patching automatico se utilizzata un’immagine supportata di “Windows Server Datacenter: Azure Edition”:

  • le patch classificate come Critiche o di Sicurezza vengono automaticamente scaricate e applicate sulla VM;
  • le patch vengono applicate durante le ore di minore attività considerando il fuso orario della VM;
  • Azure gestisce l’orchestrazione delle patch e le patch vengono applicate seguendo i principi di disponibilità;
  • lo stato di salute della macchina virtuale, determinato attraverso i segnali di salute della piattaforma Azure, viene monitorato per rilevare fallimenti nel patching.

Orchestrazione di Hotpatch in Azure Stack HCI

Gli aggiornamenti Hotpatch per le macchine virtuali attive in ambiente Azure Stack HCI possono essere orchestrati utilizzando:

  • Group Policy per configurare le impostazioni del client Windows Update;
  • le impostazioni del client Windows Update oppure SCONFIG per Server Core;
  • una soluzione di gestione delle patch di terze parti.

Considerazioni e limitazioni

Tuttavia, come ogni tecnologia, anche l’hotpatching ha le sue sfumature. Non tutte le patch sono adatte per l’hotpatching; alcune potrebbero ancora richiedere un riavvio tradizionale. Inoltre, prima di applicare qualsiasi patch, rimane fondamentale testarla in un ambiente controllato per evitare potenziali problemi.

L’installazione di aggiornamenti Hotpatch non supporta il rollback automatico. Infatti, se una VM riscontra un problema durante o dopo un aggiornamento, risulta necessario disinstallare l’aggiornamento e installare l’ultimo aggiornamento baseline noto come valido. In seguito al rollback sarà necessario riavviare la VM.

Conclusione

L’introduzione dell’hotpatching da parte di Microsoft rappresenta un passo avanti significativo nella gestione delle VM con sistema operativo Windows Server. Con la capacità di applicare patch di sicurezza e aggiornamenti senza interruzioni, gli amministratori possono garantire che i loro server siano protetti e aggiornati in un modo più rapido ed efficace. In un mondo in cui la sicurezza è di primaria importanza e in cui ogni secondo conta, l’hotpatching si posiziona come una soluzione di valore per ogni azienda che utilizza Windows Server in ambiente Azure oppure in ambiente Azure Stack HCI.