Come è normale aspettarsi dalle nuove versioni di Windows Server, Windows Server 2016 arriva con una vasta gamma di nuove funzionalità. Molte di esse, come i container e Nano Server, derivano dal focus di Microsoft sul cloud. Altre, come Shielded VM, mostrano una forte enfasi sulla sicurezza. Altre ancora, come le molte funzionalità di rete e di storage aggiunte, proseguono il percorso verso le infrastrutture software-defined avviato con Windows Server 2012.

La versione finale di Windows Server 2016 contiene tutte le funzionalità introdotte nelle cinque Technical Previews che l’hanno preceduta, più qualche sorpresa. Di seguito vi illustriamo le più interessanti novità di Windows Server 2016.

I container Docker

I container rappresentano un enorme passo avanti per Microsoft nel mondo open source. Microsoft ha collaborato con Docker per portare in Windows Server 2016 il supporto completo per l’ecosistema Docker (Windows 10 Anniversary edition offre essenzialmente lo stesso set di funzionalità).

Il supporto per Containers si installa utilizzando il metodo standard per abilitare le funzionalità di Windows attraverso il Pannello di controllo o tramite il comando PowerShell: Install-WindowsFeature containers.

È inoltre necessario scaricare e installare il motore Docker per ottenere tutte le funzioni Docker. Questa linea di PowerShell scaricherà un file Zip con tutto il necessario per installare Docker su Windows Server 2016:

Invoke-WebRequest “https://get.docker.com/builds/Windows/x86_64/docker-1.12.1.zip” -OutFile “$env:TEMP\docker-1.12.1.zip” -UseBasicParsing

La documentazione completa per iniziare con i container è disponibile sul sito Microsoft MSDN. Nuovi comandi in PowerShell forniscono un’alternativa ai comandi Docker per gestire i propri container.

windows-containers-powershell

E’ importante notare che Microsoft supporta due modelli di container: Windows Server Containers e Hyper-V Containers. I container di Windows Server si basano sui concetti standard di Docker, secondo i quali ogni container viene eseguito come un’applicazione sul sistema operativo host. Al contrario, gli Hyper-V Containers sono macchine virtuali completamente isolate, che incorporano la propria copia del kernel di Windows, ma sono più leggere rispetto alle tradizionali macchine virtuali. Hyper-V Containers permette di fare la virtualizzazione nidificata all’interno di Hyper-V.

Le immagini dei container sono costruite su uno specifico sistema operativo. Questo significa che è necessaria una macchina virtuale Linux per eseguire l’immagine di un container Linux su Windows. Windows Server Containers è una funzionalità integrata di Windows Server 2016 e lavora con l’ecosistema Docker. Microsoft sta usando GitHub per la pubblicazione di versioni di Windows dei diversi componenti Docker e incoraggia la partecipazione della comunità degli sviluppatori.

Nano Server

Nano Server è il risultato di una massiccia riscrittura del codice base di Windows Server con l’obiettivo di arrivare a versione ridotta all’osso “leggerissima” di Windows Server. E’ così minimale, infatti, che non ha alcuna interfaccia utente diretta oltre alla nuova console Emergency Management. E’ possibile gestire le istanze Nano in remoto utilizzando Windows PowerShell o i nuovi Remote Server Administration Tools.

Una istanza Nano consuma poco più di 512 MB di spazio su disco e meno di 300MB di memoria, a seconda della configurazione. Questo farà una differenza enorme per le macchine virtuali che si appoggiano su Nano, che fungerà da leggera infrastruttura host e sistema operativo ospite ridotto all’osso in esecuzione su una macchina virtuale. Le istanze Nano Azure VM possono essere create con uno script PowerShell fornito da Microsoft. La società ha promesso di semplificare notevolmente il processo di costruzione di una USB avviabile su Nano Server con una prossima applicazione GUI.

Shielded VM

Una delle nuove caratteristiche chiave di sicurezza in Windows Server 2016 si presenta sotto forma di Shielded VM. Shielded VM utilizza la crittografia VHD e di un archivio centralizzato di certificati per autorizzare l’attivazione di una macchina virtuale solo quando corrisponde a una voce di una lista di immagini approvate e verificate. Ogni VM utilizza un TPM virtuale per consentire l’utilizzo della crittografia del disco con BitLocker. Anche le migrazioni live sono criptati per impedire attacchi di tipo man-in-the-middle. La chiave di protezione e i certificati sono gestiti dal nuovo Host Guardian Service in esecuzione su un host fisico diverso.

Leggi anche: Windows Server 2016: cambia il modello di licenza – si pagherà in base ai “core”

Microsoft supporta due diversi modelli di attestazione: admin trusted e TPM trusted. La modalità “admin trusted”, in cui le macchine virtuali sono approvate sulla base dell’appartenenza a un gruppo autorizzato dall’amministratore, è molto più semplice da implementare, ma non sicura come la modalità “TPM trusted”, in cui le VM sono approvate in base alla loro identità TPM. Tuttavia, la modalità di autorizzazione TPM richiede hardware che supporti TPM 2.0; l’autorizzazione attraverso l’amministratore permette un certo grado di sicurezza sull’hardware più vecchio dove il TPM 2.0 non è disponibile.

Storage Replica

Microsoft ha supportato la replica nel mondo di Hyper-V, ma era limitata alla replica asincrona dei dischi rigidi virtuali. La situazione cambia con Windows Server 2016, che permette di replicare interi volumi scegliendo tra replica sincrona e asincrona. Questo funziona in congiunzione con ciò che Microsoft definisce uno “stretch cluster”, intendo due sistemi cluster insieme, ma fisicamente separati.

Questa caratteristica, chiamata Storage Replica, si rivolge principalmente a scenari di disaster recovery in cui è necessario un backup “a caldo” per un rapido fail-over in caso di grande catastrofe. Sono supportate repliche server-to-server e cluster-to-cluster.

Storage Spaces Direct

Windows Server 2012 integrava Storage Spaces, che offre funzionalità simili a RAID, ma a livello software. Windows Server 2012 R2 ha aggiunto la capacità di costruire un cluster di storage ad alta disponibilità basato sulla stessa tecnologia Storage Spaces. Il solo grande requisito per questo cluster ad alta disponibilità è rendere accessibile tutto lo storage ai nodi partecipanti attraverso un array JBOD esterno. L’array JBOD deve anche contenere unità SAS per il loro supporto multi-iniziatore.

Windows Server 2016 prende Storage Spaces un passo avanti, con la possibilità di creare un sistema di storage ad alta disponibilità utilizzando solo i dischi direttamente attaccati su ogni nodo. La resilienza attraverso i nodi si ottiene attraverso la rete utilizzando il protocollo SMB3. Questa nuova funzione, denominata Storage Spaces Direct (S2D), può trarre vantaggio da hardware come NVMe SSD, pur supportando vecchio hardware basato su SATA. Sono necessari due soli nodi per formare un cluster S2D.

Storage Hyper-V più veloce con ReFS

Il Resilient File System (ReFS) è un’altra funzione introdotta con Windows Server 2012. Progettato fin dall’inizio per essere più resistente alla corruzione rispetto al suo predecessore, ReFS porta molti vantaggi al formato NTFS su disco. Microsoft ha elevato sia l’utilità che l’importanza di ReFS in Windows Server 2016 rendendolo il file system privilegiato per i carichi di lavoro Hyper-V.

ReFS ha enormi implicazioni sulle prestazioni di Hyper-V. Per cominciare, le nuove macchine virtuali con una dimensione fissa VHDX vengono create più velocemente. Gli stessi vantaggi valgono per la creazione di file di checkpoint e il merging di file VHDX creati quando si effettua un backup. Queste funzionalità assomigliano a ciò che può fare Offload Data Transfers (ODX) su appliance di storage più grandi. Una cosa da tenere a mente: ReFS assegna la memoria per queste operazioni senza inizializzazione, quindi ci potrebbero essere dati residui lasciati dai file precedenti.

Aggiornamenti di Hyper-V

L’aggiornamento a un nuovo sistema operativo presenta sfide significative su molti fronti. Nelle versioni precedenti di Windows Server, non era possibile aggiornare un cluster senza tempi di inattività, il che può essere un problema significativo per i sistemi di produzione. Spesso la soluzione era mettere in piedi un nuovo cluster che eseguiva il sistema operativo aggiornato, quindi migrare i carichi di lavoro dal vecchio cluster. Naturalmente, era necessario implementare nuovo hardware.

Windows Server 2016 supporta gli aggiornamenti dei cluster da Windows Server 2012 R2, il che significa che è possibile eseguire questi aggiornamenti senza necessità di smontare il cluster o migrare a nuovo hardware. Durante l’aggiornamento tutti i membri del cluster continueranno a operare al livello funzionale di Windows Server 2012 R2 (e supportare migrazioni tra host vecchi e aggiornati) fino a quando tutti gli host sono in esecuzione sul nuovo sistema operativo e l’amministratore aggiorna in modo esplicito il cluster a livello funzionale (tramite un comando PowerShell).

Miglioramenti di rete

Qui la parola d’ordine è convergenza, grazie a nuove funzionalità che aiutano aziende e fornitori di hosting a unire il traffico da più utenti per ridurre il numero di interfacce di rete. Il numero di porte di rete può essere ridotto della metà, in alcuni casi. Un’altra nuova caratteristica è Packet Direct, che migliora l’efficienza dei carichi di lavoro per includere tutto, da piccoli pacchetti a grandi trasferimenti di dati.

Windows Server 2016 include un nuovo ruolo server denominato Network Controller, che fornisce un punto centrale per il monitoraggio e la gestione di infrastrutture e servizi di rete. Altri miglioramenti che supportano le funzionalità di rete software-defined includono un load balancer L4, gateway avanzati per la connessione ad Azure e altri siti remoti, e un tessuto di rete convergente che supporta sia RDMA che il traffico ospite.

Aggiornamenti Storage QoS

Storage Quality of Service (QoS) è stato introdotto con Hyper-V in Windows Server 2012 R2 e permette di stabilire limiti sulla quantità di IO che possono consumare le singole VM. La versione iniziale di questa funzione era limitata a livello di host Hyper-V. Di conseguenza, Storage QoS in Windows Server 2012 R2 funziona bene in un piccolo ambiente, ma può rappresentare una sfida quando è necessario bilanciare IO tra più host.

Windows Server 2016 consente di gestire centralmente le policy di Storage QoS per gruppi di macchine virtuali e applicare tali policy a livello di cluster. Questo è utile nei casi in cui un servizio è basato su più VM, che devono essere gestite insieme. A supporto di queste nuove funzionalità sono stati aggiunti cmdlet in PowerShell, tra cui Get-StorageQosFlow, che fornisce una serie di opzioni per monitorare le prestazioni relative a Storage QoS; Get-StorageQosPolicy, che recupera le attuali impostazioni; New-StorageQosPolicy, che crea una nuova policy.

Nuovi cmdlet PowerShell

PowerShell riceve aggiornamenti a ogni nuova versione del sistema operativo. Windows Server 2016 offre un numero significativo di nuovi cmdlet di PowerShell focalizzati su specifiche funzionalità. È possibile utilizzare i comandi PowerShell per verificare ogni nuova versione e vedere le differenze. Il cmdlet Get-Command restituisce una lista di comandi che possono essere inviati a un file per ulteriori elaborazioni. Jose Barreto di Microsoft ha pubblicato sul suo blog specifiche istruzioni per questo.

Nuovi cmdlet di interesse includono 21 comandi riguardanti DNS, 11 per Windows Defender, 36 per Hyper-V, 17 per l’amministrazione di IIS, 141 comandi relativi a Network Controller, per citarne alcuni. L’altra grande spinta per PowerShell in questa release si riferisce alla Desired State Configuration (DSC). Microsoft ha fatto molto lavoro per rendere DSC lo strumento per la configurazione iniziale e la manutenzione non solo di Windows Server, ma anche dei server Linux.

Come un numero crescente di carichi di lavoro si spostano verso istanze virtualizzate in cloud, diventa importante aumentare la sicurezza e introdurre più automazione per il mix. E’ necessario anche fornire funzionalità software più avanzate per networking e storage. In Windows Server 2016, Microsoft sta spingendo su tutti questi fronti contemporaneamente.