Dall'osannato e insieme discusso NT 4 ne sono passati di Service Pack sotto i ponti e il colosso di Redmond ha fatto sì che i suoi sistemi operativi crescessero in termini di potenza funzionalità e stabilità in modo esponenziale; certo ci è voluto un po', ma da Windows 2000 e poi 2003 parecchie novità e migliorie hanno portato uno dei sistemi operativi più criticati del mondo IT ad un livello di affidabilità davvero importante.
Le innovazioni più importanti sono l'introduzione di Active Directory, l'integrazione con gli standard DNS, il massiccio utilizzo dei criteri di gruppo, l'impegno nel migliorare sempre di più il paradigma TCP/IP e lo sforzo (perché di questo si è trattato) per risolvere i numerosi problemi di sicurezza che hanno afflitto per decenni i sistemi operativi Windows.
Ma fino alla versione server 2000 mancava ancora qualcosa. Sistemi come Solaris di Sun o AIX di IBM includevano un application server sofisticato e strumenti pensati in modo specifico per lo sviluppo e la distribuzione di applicazioni Web. Anche se IIS era già contemplato dalla versione NT 4 (SP6), le falle di sicurezza e la difficoltà di gestione del server Web distribuito di Microsoft hanno alimentato forti dubbi e il suo utilizzo non è mai stato adottato su larga scala, soprattutto quella enterprise like.
Era il 2002 e con il ridisegno del Kernel e la pausa di un mese intrapresa dagli sviluppatori per controllare minuziosamente il codice e intercettare possibili falle di sicurezza, Windows, nella sua versione server, "svolta". Prestazioni, scalabilità e sicurezza vengono decisamente migliorate e anche nuove funzioni di gestione e automazione rendono il sistema più semplice e robusto.
Ma, come per ogni cosa, i margini di miglioramento sono ampi e le esigenze di mercato, la continua richiesta di nuove funzionalità e, perché no, un sano spirito di competizione nei confronti di mondi open (o presunti tali) sempre più aggressivi, portano il team di sviluppo di Windows Vista a lavorare parallelamente ad un nuovo ambiente server. Iniziamo quindi da qui ad intraprendere un cammino dedicato al nuovo sistema operativo server di Microsoft.
Con questo articolo prenderemo in esame alcune delle novità più salienti del nuovo ambiente che approfondiremo con una lunga serie di articoli dedicati alla progettazione, all'installazione, alla gestione e manutenzione e all'ottimizzazione di sistemi basati sulle tecnologie Windows Server 2008.
Chi ha avuto già la possibilità o solo la curiosità di installare il nuovo sistema operativo, si sarà accorto di una procedura di installazione molto diversa da quella utilizzata dal suo predecessore..ma andiamo con ordine. A differenza dell'aggiornamento da Windows 2000 Server a Windows server 2003 (nomenclatura a parte) che fu caratterizzata da non troppe novità, Windows Server 2008 "vanta" una riscrittura del codice. Buona parte del cuore del sistema segue il modello SDM (secure development model) utilizzato per lo sviluppo di Windows Vista. Le novità introdotte sono molte e non di poco conto, dall'interfaccia agli strumenti di gestione e amministrazione, ma possiamo dire che le modifiche più radicali siano state introdotte dal nuovo Server Core e IIS 7, il nuovo application server basato su tecnologie .NET. Entriamo allora nel dettaglio di queste novità.
Server Core
Nonostante Windows server sia amato dagli amministratori Microsoft oriented per l'innegabile familiarità della sua interfaccia è altrettanto innegabile una oggettiva osservazione della riduzione delle prestazioni su macchine che, ancora nel pieno vigore delle loro risorse, sono costrette a vedersi rimpiazzare da giovani server aitanti e pieni di nuove o rinnovate energie; e allora si ricorre ad una soluzione alternativa e si introduce, spesso anche dove mai si sarebbe pensato di aggiungerli, server Unix/Linux: un servizio DHCP, un server DNS o addirittura un server LDAP.
Insomma: "Perché mai dovrei buttare questo server visto che una distro X o Y di Linux posso esporre questo o quel servizio?", inoltre: "Perché mai dovrei installare un sistema che necessita di tante opzioni, visto che i requisiti si sicurezza della mia azienda richiedono di minimizzare la superficie di attacco?" In effetti le domande sono più che legittime. Proprio per questi motivi in windows server 2008 è stato introdotto un metodo di installazione particolarmente light e che, con un po' di pazienza potrebbe essere apprezzato.
Server core prevede un'installazione di base, contenente un insieme ridotto di file eseguibili e alcuni ruoli. La gestione è affidata esclusivamente (o quasi) alla riga di comando.
Un server Core può eseguire: DHCP, DNS, File Server, servizio DFS (il file system distribuito e di replica) file system di rete (SIS), Print server, Domain controller (anche in modalità sola lettura), Server di virtualizzazione, IIS (solo in modalità HTML Statiche), Windows media services (WMS), Cluster Microsoft, load balancing, ospitare applicazioni UNIX, utilizzare la nuova funzionalità di cifratura dei dischi (BitLocker). Il monitoraggio e l'automazione (anche remota) è gestita dalla semplice riga di comando a dalla più versatile PowerShell oltre naturalmente attraverso protocollo SNMP.
IIS 7 L'application server competitivo
Come abbiamo già detto in precedenza, l'orientamento alle applicazioni web di IIS non sono mai state soddisfacenti in modo pieno. ASP e VBScript sono sempre stati linguaggi molto utili e abbastanza flessibili, oltre ad aver il pregio di essere di semplice utilizzo, ma dal punto di vista delle prestazioni e della sicurezza non si può certo dire di avere a che fare con delle Ferrari applicative. Un certo senso di impotenza pervadeva gli sviluppatori web fino a quando il paradigma dei web services .NET non è diventato il must per molti programmatori. Ma qualcosa continuava a mancare: troppe falle e troppe difficoltà nella gestione di un application server che aveva dei limiti dovuti alla struttura monolitica, venerabile, ma ormai un po' anacronistica. E anche in questo caso lo sforzo è stato notevole: una riscrittura completa e un approccio completamente nuovo: architettura modulare e realizzata a componenti.
Ciò significa che è possibile istallare solo ciò di cui si ha realmente necessità con un risultato in termini di snellezza e velocità senza precedenti. Le migliorie riguardano principalmente la nuova architettura a componenti che permette il controllo totale sui componenti da installare, l'estensibilità: gli sviluppatori possono utilizzare le nuove API per l'interazione diretta con il cuore del web server; la configurazione e l'installazione delle applicazioni è stata semplificata. A tale proposito è bene ricordato che il metabase XML già utilizzato dalla versione precedente è stato riscritto e con esso la possibilità di utilizzare più file di configurazione, cosa che permette ai siti ospitati di essere gestiti in modo si indipendente, ma coerente. E' stata introdotta la delega del controllo, analoga a quella utilizzata in Active Direcotry, che permette agli amministratori di delegare specifici controlli su alcune funzionalità (per esempio la gestione di uno o più siti). Anche l'amministrazione generale ha subito un notevole mutamento, così l'IIS manager è disponibile anche a riga di comando (utilizzando il comando APPCMD).
Il nuovo Stack TCP/IP
Non vogliamo creare panico nei confronti dei veterani del networking e ci teniamo a dire che il protocollo continua a basarsi sui ben noti principi del blasonato modello OSI, ma è necessario far presente che molte delle novità introdotte dal nuovo Server Microsoft riguardano la rete ed in particolare la pila TCP/IP. Uno degli aspetti più innovativi è la gestione nativa e separata di IPv4 e IPv6. Nel caso di esperienze dovute all'utilizzo contemporaneo delle due versioni sapete bene la difficoltà di convivenza dei due standard. Per rendere tutto più efficace l'hardware viene utilizzato in modo più efficiente e anche l'integrazione di IPSec per garantire comunicazioni sicure è stata realizzata in modo ottimale, così da favorire la velocità di trasmissione a bassi livelli. Il dimensionamento automatico della finestra TCP in ricezione è stata ottimizzata così da ottenere trasferimenti di dati molto più efficaci. Riguardo a ciò che concerne i livelli più applicativi, le netAPI sono state esposte più direttamente allo strato software quindi più vicine ai programmi che possono agire in modo diretto e facilitato. Anche l'algoritmo di ricerca del gateway non funzionante presente in windows server 2003 è stato notevolmente migliorato. Ora Windows server 2008 si prende la "briga" di inviare traffico TCP verso un gateway non attivo ed è quindi in grado di accorgersi di un eventuale ripristino.
Le novità sono davvero tante e qui abbiamo esposto solo una parte delle caratteristiche che andremo ad approfondire nei prossimi articoli.