samedi 5 janvier 2008

Virtualisation d'applications: Un effet de mode? 3/5

Dans mon dernier billet je vous ai parlé de mes tests effectués avec le logiciel "SoftGrid" (maintenant Microsoft Virtualization Application 4.5). Le type de solutions dites "complète" . Son architecture , assez lourde, va vous permettre de gérer la chaîne complète de la virtualisation des applications (packaging, publication, contrôle d'accès, présentation et mise à disposition, etc, etc). J'ai donc continué ma recherche d'une solution simple et robuste, pourquoi pas intégrable à des solutions globales d'administration des systèmes...

Maintenant c'est le tour de SVS de chez Altiris (maintenant Symantec).

Il existe deux versions de SVS:

- La version "SVS Professional"
- La version gratuite à usage personnel appelée "SVS for personal use"

J'ai donc testé, dans un premier temps, la version gratuite puis la version professionnelle dans sa version 2.1 SP1

I.- L'architecture

Le produit de base, celui qui sert à créer les packages virtuels, est le même pour les deux versions. La différence réside dans le mode de licence (usage personnel ou pas) et les modules complémentaires dont je vous parlerais plus en détails.

Partie commune aux deux versions (personnelle et professionnelle)
  1. Le "Software Virtualization Agent": C'est l'agent installé sur le poste de travail. Il contrôle l'exécution des packages virtuels. Il s'agit d'un filtre de type "file system filter driver". Il occupe 160KB sur le disque et 1Mo de RAM en pleine charge.
  2. La "SVS admin": Console installée sur le poste de création de "packages" de préférence une machine virtuelle.
Pour la version professionnelle:
  1. Le "SVS Streaming System": Serveur de "Streaming" , contrôle de licences et administration centralisée des"packages" virtuels. Il s'agit de la version 5.2.1 du logiciel "AppStream Technology Windows Edition" de chez AppStream.
  2. Le module "Logon Hook": Permet d'associer des "packages" virtuels, grâce à des règles, aux groupes et aux utilisateurs d'un domaine Windows
  3. Des modules d'intégration à la solution NS (Notification Server) de chez "Altiris": NS permet le déploiement de logiciels, l'automatisation de tâches, la gestion de correctifs, les inventaires matériels et logiciels, les rapports, les suivis, etc, etc...

II.- Les opérations


  1. La création du package virtuel: C'est l'opération principale. Il s'agit de la capture de toutes les étapes d'installation du logiciel puis de leur virtualisation. Il est conseillé d'employer un poste "propre" avec le minimum de logiciels installés.

    Voici 3 images qui montrent la création d'un package virtuel avec SVS.







    Avant tout, il faut déterminer le type de couche a créer (application, données ou vide)







    L'image ci-contre montre le nom du programme a installer, ici OpenOffice 2.3. L'option "Capture Globale" sert à mettre à jour le package .











    La dernière partie est un récapitulatif des

    options choisies lors des étapes précédentes
    (Cf. image ci-contre)













  2. L'exportation du package virtuel: L'ensemble des opérations capturées sont stockées dans une archive. On parlera donc du fichier .VSA ou "Virtual Software Archive". C'est ce fichier qui sera utilisé pour "importer" le package virtuel sur d'autres postes.



    Un clic droit sur le nom du package pour obtenir le menu avec l'option "Exporter"




    Un aperçu de l'exportation sous SVS. Le résultat est le fichier .VSA qui pourra être utilisé sur n'importe quel autre poste.


















  3. L'importation du package: Grâce a cette opération, le package virtualisé peut être utilisé sur des postes différents.


    Voici deux images qu'illustrent l'importation d'un package SVS. Cette opération rend disponible le logiciel sur le poste.

















  4. L'activation/désactivation du package: Une fois importé pour utiliser le package il suffit de l'activer. Les extensions de fichiers (par exemple .pdf) sont associées automatiquement à l'application virtualisée. La désactivation "désinstalle" l'application.



Dans l'image ci-contre le package OpenOffice n'est pas activé. L'icône du document ODT n'est pas reconnu par Windows.












Ici le package est activé. Tous les documents associés à l'application sont reconnus par le système.






III.- Le principe de fonctionnement

La création d'un package SVS ne diffère pas de celle des autres solutions de virtualisation. A l'installation de l'application , SVS, va capturer tous les changements effectués sur le système puis va générer une enveloppe dite "package virtuel". Pour rendre ce "package" portable sur d'autres postes on doit procéder à une "exportation". Cette opération va créer un fichier suffixé .VSA (Virtual Software Archive) . Pour être utilisée sur un autre poste, l'archive .VSA devra être "importée" . Toutes ces opérations sont effectuées avec l'outil "Altiris Software Virtualization Admin" . Lors de la phase d'importation SVS va créer un dossier caché appelé C:\FSLRDR. Il va y stocker les différentes parties du package dans un dossier qui a pour nom un numéro d'ordre (Cf. image ci-contre). Aussi chaque application virtualisée dispose d'une couche appelée "couche de données". Il s'agit d'un endroit où tous les changements effectués par l'application virtualisée seront conservés (paramètres, préférences, fichiers crées, manipulés, utilisés par l'application, etc, etc). Il existe une opération supplémentaire sur les packages appelée "Réinitialisation de la couche". Elle va vider entièrement la partie données.



Les seules fichiers qui ne sont pas conservés dans cette couche sont ceux sauvegardées sur un partage réseau ou un périphérique externe (clé USB, DVD,...). En d'autre termes, tous les fichiers manipulés par une application virtualisée ,comme par exemple "SuperCopier", iront directement dans la couche de données (ou "Data Layer"). Couche aussi appelée "Inscriptible".





Lors de l'activation d'une couche SVS le filtre
installé sur le poste de travail "superpose",
comme un calque, la partie "C:\FSLRDR\"
correspondante (Cf image ci-contre)


Conclusions


Pour un usage personnel, SVS s'avère être une solution simple et efficace. Cependant il faut pas perdre de vue la manipulation de données avec les logiciels virtualisés, en particulier avec SVS. La désactivation d'une couche provoque la disparition automatique de données manipulées avec elle. Pire encore, sa "réinitialisation" provoque la perte définitive de toutes les données présentes dans la partie "inscriptible" du "package" !!. Aussi l'importation d'un package SVS laisse des "traces" sur le PC hôte (installation du "package", dossier FSLRDR, fichiers composant le "package "virtuel, la couche "inscriptible", etc, etc. ). Une dernière remarque: N'oubliez pas de bien "réinitialiser" la couche avant son exportation en fichier .VSA. Il se peut que de données personnelles manipulées avec le package restent dans la partie "inscriptible" et par conséquence soient stockées dans l'archive ! (Exemple: Pensez à bien "réinitialiser" votre "package Picasa" avant de l'exporter et le mettre en partage pour tous . Il y a un grand risque que vos photos manipulées avec le "package Picasa virtuel "soient restées dans la "Data Layer" . Autrement, la version actuelle a beaucoup évoluée surtout en ce qui concerne son intégration à des produits tiers (Ardence, AppStream, Wyse Studio...) ainsi qu'à la solution "maison" NS (Notification Server). D'autres fonctionnalités comme le "Logon Hook"(attribution ciblée de "packages") ou l'automatisation des opérations d'importation, activation et désactivation à la volée font de SVS une solution complète de virtualisation d'applications.

Dans mon prochain billet je parlerais de mes tests avec la solution "Thinstall"



1 commentaire:

Anonyme a dit…

Bonjour,

Je suis en stagiaire et j'étudie actuellement les différentes solutions de virtualisation afin d'en choisir une pour un Conseil Général, et je trouve vos articles sur le sujet très instructifs et simples à comprendre. Ils m'aideront certainement à m'orienter vers une solution, car je pense que vous faites preuve d'objectivité. Ce qui est difficile à trouver sur le net concernant la virtualisation car tous les documents que j'ai trouvé sont réalisés par Microsoft, Aliris ou LANDesk / Thinstall.
Je n'ai que 6 semaines pour travailler sur ce projet et je n'ai pas pu obtenir des versions de test pour toutes les solutions, seulement pour LANDesk - Thinstall. J'attends de voir, d'ailleurs, si cette solution fera l'objet d'un prochain article !