Negli ultimi giorni ho fatto un po’ di esperimenti con Horizon View di VMWare, un sistema che permette di creare ed assegnare desktop virtuali agli utenti di un dominio.Detta così non sembra molto diverso da un Terminal Server, invece il principio è completamente diverso e innovativo.
La teoria è piuttosto semplice: creiamo una macchina virtuale sul nostro host VMWare che usiamo come base per tutti gli utenti e Horizon View creerà un file delta per ogni utente.
Il risultato è che ogni utente si ritroverà a tutti gli effetti con una macchina completa in tutto e per tutto, partendo da una base comune, il che riduce di molto i tempi di amministrazione del sistema.
Lo schema qui di seguito riassume la struttura base di Horizon View.

view_schema

La pratica, come ho scoperto immediatamente, è tutt’altro che semplice.

Prima di tutto registratevi sul sito di VMWare e attivate una licenza di prova di Horizon View. Questo vi darà la possibilità di scaricare tutto il software necessario, compreso ESXi. Armatevi di pazienza perché sono diversi Giga di dati da scaricare e a meno che non abbiate un’ottima connessione ci metterete diverse ore.

Io ho costruito un intero ambiente di test, completamente staccato dalla rete aziendale. Se avete la possibilità di avere una macchina di test la prima cosa da fare è ovviamente installare ESXi. Io ho usato l’ultima versione, la 5.5 anche se non è necessario. Potete usare anche versioni precedenti, l’importante è che usiate la stessa versione di ESXi e di vCENTER, altrimenti vi ritroverete con problemi di comunicazione tra le varie macchine.

Io ho creato quattro macchine con queste impostazioni:

VM1-DOMAIN                Windows Server 2012
VM2-VCENTER              Windows Server 2008 R2
VM3-HORIZON              Windows Server 2008 R2
VM4-CLIENT                  Windows 8.1 Pro

So per certo che Horizon non è ancora compatibile con Windows server 2012. Non sono sicuro di vCenter, ma per evitare di rifare tutto da capo ho installato Windows Server 2008 R2 anche su quella.

Sulla macchina VM1-DOMAIN dovrete impostare un dominio, con DNS e DHCP. Chiamiamolo dominio.local, ma il nome non ha nessuna importanza ai fini del nostro progetto. Per semplicità ho creato un utente standard ed ho usato l’utente Administrator per le impostazioni amministrative. Ovviamente non fareste mai una cosa del genere in un sistema live, perché l’utente Administrator è sempre pericoloso da usare se non siete più che sicuri di quello che state facendo.

Passiamo quindi alla seconda macchina, la VM2-VCENTER. Se non avete familiarità con vCenter non preoccupatevi: è molto intuitivo e se avete un po’ di dimestichezza con il client vSphere collegato direttamente alla macchina host, non avrete difficoltà a collegarvi anche a vCenter.
L’installazione è piuttosto semplice, è un normalissimo wizard in cui dovrete fornire poche informazioni. Una volta installato vCenter ed eseguito un riavvio collegatevi con il client vSphere ed eseguite la prima configurazione aggiungendo la macchina host e verificando che le due macchine comunichino correttamente.
Fin qui tutto semplice. Adesso comincia la parte complicata.

Per impostare Horizon View avrete bisogno di scaricare:

logo_hv

 

• Horizon View Connection Server
• View Composer
• Horizon View Agent

 

HV Connection Server
Questo è il cuore di Horizon View. E’ il pannello amministrativo che gestisce le varie connessioni ai desktop virtuali e ai pool di macchine template. Installatelo per primo sulla VM3-HORIZON.
Una volta installato, loggatevi sul pannello web e inserite la licenza di prova fornita da VMWare al momento della registrazione.
Torneremo sul Connection Server più tardi.

View Composer
Questo è il programma “invisibile” che serve a preimpostare le macchine virtuali e a gestire l’associazione tra utenti e VM mantenendo le informazioni in un database interno.
Installatelo lanciando il file come Amministratore, altrimenti continuerà a generare errori su errori.
Durante l’installazione vi sarà chiesto di configurare un’origine dati ODBC. Potete usare l’installazione di SQL Express 2005 che viene installata automaticamente con vCenter oppure installare un’istanza separata sulla macchina Horizon. L’importante è che abilitiate la modalità login con SQL Server Authentication, che creiate un utente SQL e poi un database con questo nuovo utente come proprietario.
Un lavoro da due minuti, ma io ci ho perso quasi una giornata intera per trovare l’inghippo.
A questo punto configurate la sorgente dati ODBC e dimenticatevi di Composer: farà tutto da dietro le quinte.

Horizon View Agent
Questo è un programmino che va installato sulla macchina di destinazione, quella che diventerà la base per tutti i desktop virtuali. Una volta fatto potete spegnere la macchina VM4-CLIENT e convertitela in template da vCenter e sarà pronta per essere distribuita.

A questo punto dobbiamo tornare su Connection Server.

Su View Configuration → Servers dobbiamo inserire tutti i dati del nostro server vCenter. Horizon necessita per forza di un vCenter per poter comunicare correttamente con le macchine virtuali.

Dopodiché da Inventory → Pools creiamo un nuovo pool di desktop virtuali utilizzando la VM4-CLIENT come base seguendo il wizard di configurazione.
Una volta completato il processo associamo gli utenti che possono sfruttare questo pool di macchine cliccando con tasto destro sul nome del pool e selezionando “Entitlements…”

A questo punto possiamo scaricare il client di connessione sulla macchina da cui vogliamo collegarci (che può essere un Thin Client o un PC completo), inseriamo il nome del server di Horizon View, le credenziali di un utente autorizzato e…..riceveremo un errore!
Niente di grave: i desktop virtuali devono essere inizializzati la prima volta. Se tornate sul Connection Server vedrete sotto Inventory → Desktops che lo status del vostro desktop è in “Provisioning”. Questo vuol dire che la macchina è in fase di inizializzazione, ma sarà disponibile a breve. Un volta che lo status passerà ad “Available”, ricollegatevi con il vostro client e potrete accedere al vostro desktop virtuale.

client_horizon

Un’ultima cosa: Horizon View ha bisogno di un certificato SSL valido per potersi collegare. Potete generarne uno, ma continuerà a darvi un errore sull’affidabilità del certificato. Il sistema funzionerà ugualmente, ma per evitare questo problema dovrete acquistare un certificato SSL da una fonte attendibile come GoDaddy o 1&1.