In questo articolo vedremo in che modo sia possibile usare il Microsoft Application Virtualization (App-V) Sequencer per poter rendere un'applicazione virtualizzata.

Per sequenziare un'applicazione useremo una workstation che abbia una configurazione il più possibile simile a quella delle macchine a cui distribuiremo la nostra applicazione. Ciò è necessario perché durante il processo di sequencing verranno catturate tutte le modifiche fatte al sistema operativo e se ci fossero alcuni settaggi già esistenti al momento del sequencing, questi non verrebbero registrati. Eseguendo l'applicazione virtualizzata su un client a cui è stata distribuita, questa potrebbe aspettarsi la presenza di alcuni file o alcune configurazioni che in realtà non sono presenti e ciò potrebbe compromettere il corretto funzionamento dell'applicazione. Cercate quindi di usare una workstation pulita, magari una macchina virtuale che al termine del sequencing andrete a resettare e riportare allo stato di partenza, per una successiva installazione.

Nella nostra workstation andremo a creare una partizione o useremo un disco che useremo come virtual drive per far girare l'applicazione virtualizzata, a cui assegneremo la stessa lettera che sarà presente nell'Application Virtualization Drive che abbiamo settato sui nostri client. In genere di default la lettera usata per il virtual drive è Q:.

In questo articolo vedremo come sequenziare Microsoft Excel Viewer 2003. Creiamo nella radice Q: una nuova cartella con il nome Xlsviewr.v1, che sarà utilizzata per installare il visualizzatore di Excel. È importante rispettare la naming convention 8.3 in quanto potrebbe esserci conflitto con altri package che iniziano con lo stesso nome.

Il sequencing di un'applicazione consiste di 4 fasi: Installazione, lancio dell'applicazione, personalizzazione e salvataggio. Facciamo partire Application Virtualization Sequencer ed avviamo ToolsàSequencing Wizard, che ci guiderà in tutte e quattro le fasi. Il primo step ci chiede il nome del package ed un eventuale commento, come mostrato in figura 1.

Figura 1 - Nome del package ed eventuale commento

Scegliendo l'opzione Show Advanced Monitoring Options possiamo specificare le Dimensioni blocco dell'applicazione virtuale. Le dimensioni del blocco determinano il modo in cui il file .SFT viene diviso per trasmettere il pacchetto ai computer di destinazione sulla rete. Il file .SFT contiene una più applicazioni sequenziate che il Sequencer ha suddiviso in blocchi per la trasmissione, nonché le informazioni di consegna associate.
Possiamo anche consentire a Microsoft Update di aggiornare l'applicazione durante il sequencing e rimappare le dll in modo che utilizzino uno spazio contiguo di RAM. La selezione di questa opzione consente di risparmiare memoria e migliorare le prestazioni. Molte applicazioni non supportano questa opzione, ma essa è utile in ambienti con poca RAM, come in ambienti Terminal Server.

A questo punto siamo pronti per cominciare il monitoraggio vero e proprio, che durante l'installazione dell'applicazione verificherà e memorizzerà tutte le operazioni che sono state effettuate (creazione di cartelle, chiavi di registro, file, configurazioni, creazione e avvio di servizi, file dll, ecc.). Clicchiamo sul pulsante Begin Monitoring e ci verrà chiesto quale sarà la cartella virtuale in cui verrà installata l'applicazione. Nel nostro caso scegliamo Q:\Xlsviewr.v1 e facciamo partire il monitoraggio, come mostrato in figura 2.

Figura 2 - Inizio del monitoraggio

Lanciamo l'installazione del visualizzatore di Microsoft Excel, indicando la cartella Q:\Xlsviewr.v1 come cartella di installazione del programma e non la cartella predefinita che ci viene suggerita dal programma, come mostrato in figura 3.

Figura 3 - Modifica della cartella di installazione del programma

L'installazione procede normalmente (vedi figura 4), ma il nostro Application Virtualization Sequencer nel frattempo sta memorizzando tutte le operazioni che vengono eseguite dal programma di installazione.

Figura 4 - Installazione del Microsoft Excel Viewer 2003

Terminata l'installazione assicuratevi che sia eseguita in maniera corretta andando a cliccare sul file eseguibile che si trova installato nella cartella Q:\Xlsviewr.v1 . Non utilizzate gli eventuali link al programma che sono stati creati in fase di installazione perché potrebbero non funzionare. Inoltre è opportuno lanciare l'applicazione più volte in modo tale che se ci sono alcuni settaggi da definire inizialmente, questi possano essere registrati e riutilizzati per tutti gli utenti. Dopo esservi assicurati che tutto funziona perfettamente potete stoppare il Monitoring da parte di Application Virtualization Sequencer. In questo modo l'ambiente virtuale verrà configurato e compilato, come mostrato in figura 5.

Figura 5 - Termine del monitoraggio e compilazione dell'ambiente virtuale

Nella schermata successiva è possibile aggiungere al Virtual File System alcuni file che magari potrebbero non essere stati catturati durante la fase di monitoraggio, come mostrato in figura 6.

Figura 6 - Possibilità di aggiungere file al Virtual File System

È possibile personalizzare le applicazioni incluse nel nostro package andando ad aggiungere, modificare o eliminare le dipendenze dell'applicazione, le associazioni ai tipi di file oppure i collegamenti, che poi verranno resi disponibili agli utenti. Modificando anche il file .OSD (Open Software Description , il file di configurazione delle bolle applicative) è possibile semplificare il nome dei collegamenti o la versione , come mostrato in figura 7.

Figura 7 - Personalizzazione dei collegamenti e dell'associazione dei tipi di file

In questo modo per gli utenti sarà più facile riconoscere il nome dell'applicazione e la versione (figura 8).

Figura 8 - Modifica del collegamento all'applicazione

Nel passaggio 6 del wizard ci viene chiesto di lanciare l'applicazione, come mostrato in figura 9.

Figura 9 - Lancio dell'applicazione per creare il Feature Block 1 (FB1)

Questa fase è decisiva. Quando lanciamo l'applicazione, il Sequencer monitorizza tutte le operazioni sui file che vengono effettuate e crea il Feature Block 1 (FB1), cioè l'insieme minimo di file necessari ad avviare l'applicazione. L'FB1 sarà il primo blocco di file che verrà scaricato dallo Streaming Server per poter avviare l'applicazione. In questo modo possiamo ridurre la dimensione dei file da trasferire via rete al primo avvio, con risparmio di tempo e risorse. Tutte le altre feature del programma saranno contenute nel Feature Block 2 (FB2) e verranno trasferite dal server dinamicamente, quando cioè l'utente richiederà di utilizzarle.

Una volta lanciata l'applicazione, possiamo personalizzarla o anche attivarla, se necessario. Nel momento in cui la chiuderemo, avremo terminato il nostro processo di sequencing del package, come mostrato in figura 10.

Figura 10 - Completamento del sequencing

A questo punto non ci rimane altro che configurare l'applicazione che abbiamo sequenziato andando a definire in che modo deve avvenirne la distribuzione. Nel tab Deployment infatti possiamo specificare il protocollo che verrà utilizzato per lo streaming dell'applicazione (HTTP, HTTPS, RTSP, RTSPS), il nome del server di streaming, la porta utilizzata dal protocollo che abbiamo scelto e il percorso dove il nostro package si trova nella cartella condivisa dello streaming server.

Possiamo scegliere anche quale sistema operativo sarà supportato dal nostro pacchetto virtualizzato e se vogliamo creare un file .MSI, che verrà utilizzato per distribuire il pacchetto in modalità stand-alone oppure per poterlo utilizzare con uno scenario di Electronic Software Distribution (ESD) esistente, come ad esempio Systems Management Server (SMS), System Center Configuration Manager (SCCM) oppure le Group Policy (GPO), come mostrato in figura 11.

Figura 11 - il tab Deployment del Sequencer

Gli altri tab dell'Application Virtualization Sequencer sono usati per avere informazioni sul package, per poter personalizzare maggiormente i settaggi nel registro virtuale, il virtual file system, i servizi virtuali o il file .OSD.

Dopo aver personalizzato il package bisogna salvarlo in una cartella avente lo stesso nome che avete definito nel path presente nel tab Deployment (nel nostro caso Excel-Viewer). La cartella verrà poi copiata nella cartella condivisa dello streaming server e sarà pronta per essere distribuita.

Conclusioni

È possibile utilizzare Application Virtualization Sequencer per poter virtualizzare le applicazioni. Il Sequencer deve essere installato in una macchina che abbia solo il sistema operativo, meglio ancora se si tratta di una macchina virtuale, magari creata con Microsoft Virtual PC, in modo tale che dopo il sequencing sia facile annullare le modifiche apportate e riavere la macchina pronta per un'altra operazione.

Dopo la creazione dell'applicazione, ogni package conterrà un file Open Software Description (.OSD), una o più icone (.ICO) estratte dall'applicazione, un file .SFT che conterrà l'applicazione virtualizzata, un file Application Virtualization Sequencer Project (.SPRJ) e un manifest file (.XML).

Links

Per maggiori informazioni vi rimando alla Microsoft Application Virtualization 4.5 Sequencing Guide ed anche all' Application Virtualization Glossary